View Javadoc
1   /**
2    * Copyright 2005-2016 The Kuali Foundation
3    *
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    * http://www.opensource.org/licenses/ecl2.php
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package org.kuali.rice.core.api;
17  
18  /**
19   * This class contains constants used by the core module. They are public to all and both clients 
20   * and other rice modules are allowed to use them. 
21   *
22   * @author Kuali Rice Team (rice.collab@kuali.org)
23   *
24   */
25  public final class CoreConstants {
26  
27      public static final class Services {
28          public static final String DATETIME_SERVICE = "dateTimeService";
29          public static final String ENCRYPTION_SERVICE = "encryptionService";
30          public static final String MAILER = "mailer";
31  
32          private Services() {
33      		throw new UnsupportedOperationException("do not call");
34      	}
35  	}
36  
37      public final static String SERVICE_PATH_SOAP = "soap/" + Namespaces.MODULE_NAME + "/" + Versions.VERSION_2_0;
38      
39      public static final class Versions {
40      	    	
41      	public static final String UNSPECIFIED = "unspecifiedVersion";
42      	
43      	/**
44      	 * Name for major version 2.0 of Kuali Rice which should be used in XML namespaces for data elements compatible with Kuali Rice 2.0.x.
45      	 * This constant value should never be changed!  If it is changed then it will break compatibility with legacy clients.
46      	 */
47      	public static final String VERSION_2_0 = "v2_0";
48  
49          /**
50           *  Name for complete version 2.0.0 of Kuali Rice which is used to compare against the version of callback services to ensure
51           *  that backwards compatibility is not broken
52           */
53          public static final String VERSION_2_0_0 = "2.0.0";
54          /**
55           *  Name for complete version 2.1.2 of Kuali Rice which is used to compare against the version of callback services to ensure
56           *  that backwards compatibility is not broken
57           */
58          public static final String VERSION_2_1_2 = "2.1.2";
59  
60          /**
61           *  Name for complete version 2.3.0 of Kuali Rice which is used to compare against the version of callback services to ensure
62           *  that backwards compatibility is not broken
63           */
64          public static final String VERSION_2_3_0 = "2.3.0";
65  
66          /**
67           *  Name for complete version 2.3.4 of Kuali Rice which is used to compare against the version of callback services to ensure
68           *  that backwards compatibility is not broken
69           */
70          public static final String VERSION_2_3_4 = "2.3.4";
71      	
72      }
73      
74      public static final class Namespaces {
75      	public static final String ROOT_NAMESPACE_PREFIX = "http://rice.kuali.org";
76          public static final String MODULE_NAME = "core";
77          public static final String CORE_NAMESPACE_PREFIX = CoreConstants.Namespaces.ROOT_NAMESPACE_PREFIX + "/" + MODULE_NAME;
78  
79          public static final String UNSPECIFIED = "unspecifiedNamespace";
80  
81      	/**
82      	 * Namespace for the core module which is compatible with Kuali Rice 2.0.x.
83      	 */
84      	public static final String CORE_NAMESPACE_2_0 = CORE_NAMESPACE_PREFIX + "/" + Versions.VERSION_2_0;
85  
86          private Namespaces() {
87  		    throw new UnsupportedOperationException("do not call");
88  	    }
89      }
90      
91      public static final String CORE_SERVICE_DISTRIBUTED_CACHE = "coreServiceDistributedCacheManager";
92  
93      public static final class CommonElements {
94          public static final String FUTURE_ELEMENTS = "_futureElements";
95          public static final String VERSION_NUMBER = "versionNumber";
96          public static final String OBJECT_ID = "objectId";
97          public static final String ACTIVE = "active";
98          public static final String ACTIVE_FROM_DATE = "activeFromDate";
99          public static final String ACTIVE_TO_DATE = "activeToDate";
100         public static final String ATTRIBUTES = "attributes";
101         public static final String HISTORY_ID = "historyId";
102 
103         private CommonElements() {
104 		    throw new UnsupportedOperationException("do not call");
105 	    }
106     }
107 	
108 	public static final String STRING_TO_DATE_FORMATS = "STRING_TO_DATE_FORMATS";
109     public static final String STRING_TO_TIME_FORMATS = "STRING_TO_TIME_FORMATS";
110     public static final String STRING_TO_TIMESTAMP_FORMATS = "STRING_TO_TIMESTAMP_FORMATS";
111     public static final String DATE_TO_STRING_FORMAT_FOR_USER_INTERFACE = "DATE_TO_STRING_FORMAT_FOR_USER_INTERFACE";
112     public static final String TIME_TO_STRING_FORMAT_FOR_USER_INTERFACE = "TIME_TO_STRING_FORMAT_FOR_USER_INTERFACE";
113     public static final String TIMESTAMP_TO_STRING_FORMAT_FOR_USER_INTERFACE = "TIMESTAMP_TO_STRING_FORMAT_FOR_USER_INTERFACE";
114     public static final String DATE_TO_STRING_FORMAT_FOR_FILE_NAME = "DATE_TO_STRING_FORMAT_FOR_FILE_NAME";
115     public static final String TIMESTAMP_TO_STRING_FORMAT_FOR_FILE_NAME = "TIMESTAMP_TO_STRING_FORMAT_FOR_FILE_NAME";
116 
117     public static final String STRING_TO_DATE_FORMATS_DEFAULT = "MM/dd/yyyy hh:mm a;MM/dd/yy;MM/dd/yyyy;MM-dd-yy;MM-dd-yyyy;MMddyy;MMMM dd;yyyy;MM/dd/yy HH:mm:ss;MM/dd/yyyy HH:mm:ss;MM-dd-yy HH:mm:ss;MMddyy HH:mm:ss;MMMM dd HH:mm:ss;yyyy HH:mm:ss";
118     public static final String STRING_TO_TIME_FORMATS_DEFAULT = "hh:mm aa";
119     public static final String STRING_TO_TIMESTAMP_FORMATS_DEFAULT = "MM/dd/yyyy hh:mm a;MM/dd/yy;MM/dd/yyyy;MM-dd-yy;MMddyy;MMMM dd;yyyy;MM/dd/yy HH:mm:ss;MM/dd/yyyy HH:mm:ss;MM-dd-yy HH:mm:ss;MMddyy HH:mm:ss;MMMM dd HH:mm:ss;yyyy HH:mm:ss";
120     public static final String DATE_TO_STRING_FORMAT_FOR_USER_INTERFACE_DEFAULT = "MM/dd/yyyy";
121     public static final String TIME_TO_STRING_FORMAT_FOR_USER_INTERFACE_DEFAULT = "hh:mm aa";
122     public static final String TIMESTAMP_TO_STRING_FORMAT_FOR_USER_INTERFACE_DEFAULT = "MM/dd/yyyy hh:mm a";
123     public static final String DATE_TO_STRING_FORMAT_FOR_FILE_NAME_DEFAULT = "yyyyMMdd";
124     public static final String TIMESTAMP_TO_STRING_FORMAT_FOR_FILE_NAME_DEFAULT = "yyyyMMdd-HH-mm-ss-S";
125 
126     public static final String DATA_TYPE_STRING = "string";
127     public static final String DATA_TYPE_DATE = "datetime";
128     public static final String DATA_TYPE_LONG = "long";
129     public static final String DATA_TYPE_FLOAT = "float";
130     public static final String DATA_TYPE_BOOLEAN = "boolean";
131     public static final String EMPTY_STRING = "";
132     
133     public static final class Config {
134     	public static final String APPLICATION_ID = "application.id";
135         //FIXME: this should be a core config property
136         public static final String INSTANCE_ID = "rice.ksb.bus.instanceId";
137     }
138     
139 	private CoreConstants() {
140 		throw new UnsupportedOperationException("do not call");
141 	}
142 }