001 /** 002 * Copyright 2005-2011 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.rice.kew.api; 017 018 import org.kuali.rice.core.api.CoreConstants; 019 import org.kuali.rice.core.api.CoreConstants.Versions; 020 import org.kuali.rice.core.api.util.RiceConstants; 021 022 import java.util.ArrayList; 023 import java.util.HashMap; 024 import java.util.HashSet; 025 import java.util.Iterator; 026 import java.util.List; 027 import java.util.Map; 028 import java.util.Set; 029 030 public final class KewApiConstants { 031 public static final String KEW_MODULE_NAMESPACE = "KEW"; 032 033 public static final String WEBAPP_DIRECTORY = "/kew"; 034 035 public static final String USE_OUT_BOX = "USE_OUT_BOX%"; 036 037 /** 038 * Node state key under which rule selector can be specified on a per-nodeinstance basis 039 */ 040 public static final String RULE_SELECTOR_NODE_STATE_KEY = "__RULE_SELECTOR__"; 041 /** 042 * Node state key under which rule nme can be specified on a per-nodeinstance basis 043 */ 044 public static final String RULE_NAME_NODE_STATE_KEY = "__RULE_NAME__"; 045 046 public static final String DEFAULT_DOCUMENT_TYPE_LABEL = "Undefined"; 047 048 public static final String DOCUMENT_TYPE_INHERITED_VALUE_INDICATOR = "(Inherited from Parent)"; 049 public static final String DOCUMENT_TYPE_SYSTEM_DEFAULT_INDICATOR = "(System Default)"; 050 051 public static final String KEW_MESSAGING_ENTITY = "KEW"; 052 053 public static final String MESSAGING_MEMORY = "memory"; 054 055 public static final String CORE_WORKFLOW_DATASOURCE = "enWorkflowDataSource"; 056 // not strictly necessary to specify if connection descriptor is configured as default 057 public static final String CORE_WORKFLOW_DATASOURCE_JCD_ALIAS = CORE_WORKFLOW_DATASOURCE; 058 059 public static final String PLUGIN_HOT_DEPLOY_MAX_WAIT_TIME = "Plugin.hotDeploy.maxWaitTime"; 060 public static final String PLUGIN_HOT_DEPLOY_SAFE_TIME = "Plugin.hotDeploy.safeTime"; 061 062 public static final String KEW_URL_HOST = "kew.url.host"; 063 public static final String HTTP_SERVICE_PORT = "http.service.port"; 064 public static final String KEW_SERVER_CONTEXT = "kew.server.context"; 065 066 public static final String RELOAD_ACTION_LIST = "RELOAD_ACTION_LIST"; 067 public static final String DELEGATION_WIZARD = "delegationWizard"; 068 public static final String PERFORM_REALTIME_DOCUMENT_UPGRADE = "Document.PerformRealtimeUpgrade"; 069 //checkRouteLogAuthentication 070 071 public static final long DEFAULT_CACHE_REQUEUE_WAIT_TIME = 5000; 072 073 public static final int DEFAULT_THREAD_POOL_SIZE = 5; 074 075 public static final String STANDARD_DOC_SEARCH_GENERATOR_CLASS_CONFIG_PARM = "documentSearch.generator.class.name"; 076 public static final String STANDARD_DOC_SEARCH_RESULT_PROCESSOR_CLASS_CONFIG_PARM = "documentSearch.resultProcessor.class.name"; 077 078 public static final String DELEGATE_CHANGE_AR_GENERATION_KEY = "DelegateRuleChange.IsGenerateActionRequests"; 079 080 public static final String WORKGROUP_ROUTE_LOG_POPUP_KEY = "Workgroup.IsRouteLogPopup"; 081 public static final String WORKGROUP_ROUTE_LOG_POPUP_VALUE = "true"; 082 083 public static final String WORKGROUP_SEARCH_INSTRUCTION_KEY = "Workgroup.Search.Instruction"; 084 public static final String SUB_ACCOUNT_SEARCH_INSTRUCTION_KEY = "SubAccount.Search.Instruction"; 085 public static final String USER_SEARCH_INSTRUCTION_KEY = "User.Search.Instruction"; 086 public static final String WORKGROUP_CREATE_NEW_INSTRUCTION_KEY = "Workgroup.CreateNew.Instruction"; 087 public static final String USER_CREATE_NEW_INSTRUCTION_KEY = "User.CreateNew.Instruction"; 088 089 public static final String ACTION_LIST_ATTRIBUTE_CLASS_PROPERTY = "customActionListAttributeClassName"; 090 public static final String EMAIL_ATTRIBUTE_CLASS_PROPERTY = "customEmailAttributeClassName"; 091 public static final String NOTE_ATTRIBUTE_CLASS_PROPERTY = "customNoteAttributeClassName"; 092 093 /** 094 * This is a UI option, not valid data for a delgationType value. 095 */ 096 public static final String DELEGATION_BOTH = "E"; 097 public static final String DELEGATION_BOTH_LABEL = "Both"; 098 099 public static final String FLEX_RM_NAME = "FRM"; 100 public static final String DOC_HANDLER_REDIRECT_PAGE = "DocHandler.do"; 101 public static final String DOCUMENT_ROUTING_REPORT_PAGE = "RoutingReport.do"; 102 public static final String FEEDBACK_URL = "feedback.do"; 103 104 // Routing Report constants 105 public static final String DOCUMENT_TYPE_NAME_ATTRIBUTE_NAME = "documentTypeParam"; 106 public static final String INITIATOR_ID_ATTRIBUTE_NAME = "initiatorPrincipalId"; 107 public static final String DOCUMENT_CONTENT_ATTRIBUTE_NAME = "documentContent"; 108 public static final String RETURN_URL_ATTRIBUTE_NAME = "backUrl"; 109 public static final String DISPLAY_CLOSE_BUTTON_ATTRIBUTE_NAME = "showCloseButton"; 110 public static final String DISPLAY_CLOSE_BUTTON_TRUE_VALUE = "showCloseButton"; 111 112 public static final String DAILY_UNIT = "Daily"; 113 public static final String WEEKLY_UNIT = "Weekly"; 114 public static final String MONTHLY_UNIT = "Monthly"; 115 public static final String YEARLY_UNIT = "Yearly"; 116 public static final String SUDS_DATASOURCE = "SUDS"; 117 public static final String APP_CODE = "en"; 118 119 public static final String YES_LABEL = "Yes"; 120 public static final String NO_LABEL = "No"; 121 public static final String INHERITED_CD = "I"; 122 public static final String INHERITED_LABEL = "Inherited"; 123 124 public static final String DISAPPROVE_POLICY = "DISAPPROVE"; 125 public static final String DISAPPROVE_POLICY_CANCEL_CD = "C"; 126 public static final String ALLOW_UNREQUESTED_ACTION_POLICY = "ALLOW_UNREQUESTED_ACTION"; 127 public static final String DEFAULT_APPROVE_POLICY = "DEFAULT_APPROVE"; 128 public static final String INITIATOR_MUST_ROUTE_POLICY = "INITIATOR_MUST_ROUTE"; 129 public static final String INITIATOR_MUST_SAVE_POLICY = "INITIATOR_MUST_SAVE"; 130 public static final String INITIATOR_MUST_CANCEL_POLICY = "INITIATOR_MUST_CANCEL"; 131 public static final String INITIATOR_MUST_BLANKET_APPROVE_POLICY = "INITIATOR_MUST_BLANKET_APPROVE"; 132 public static final String USE_KEW_SUPERUSER_DOCHANDLER = "USE_KEW_SUPERUSER_DOCHANDLER"; 133 public static final String SEND_NOTIFICATION_ON_SU_APPROVE_POLICY = "SEND_NOTIFICATION_ON_SU_APPROVE"; 134 public static final String ALLOW_SU_POSTPROCESSOR_OVERRIDE_POLICY = "ALLOW_SU_POSTPROCESSOR_OVERRIDE"; 135 public static final String FAIL_ON_INACTIVE_GROUP_POLICY = "FAIL_ON_INACTIVE_GROUP"; 136 public static final String REGENERATE_ACTION_REQUESTS_ON_CHANGE_POLICY = "REGENERATE_ACTION_REQUESTS_ON_CHANGE"; 137 138 public static final String DOCUMENT_TYPE_BLANKET_APPROVE_POLICY_NONE = "none"; 139 public static final String DOCUMENT_TYPE_BLANKET_APPROVE_POLICY_ANY = "any"; 140 141 public static final String[] DOCUMENT_TYPE_BLANKET_APPROVE_POLICY_VALUES = { 142 DOCUMENT_TYPE_BLANKET_APPROVE_POLICY_NONE, 143 DOCUMENT_TYPE_BLANKET_APPROVE_POLICY_ANY 144 }; 145 146 //determines if route log will show the look into the future link 147 public static final String LOOK_INTO_FUTURE_POLICY = "LOOK_FUTURE"; 148 public static final String SUPPORTS_QUICK_INITIATE_POLICY = "SUPPORTS_QUICK_INITIATE"; 149 public static final String NOTIFY_ON_SAVE_POLICY = "NOTIFY_ON_SAVE"; 150 151 // alternate kew status policy constants. Determines if route header will show the KEW Route Status 152 // or the application doc status, or both 153 public static final String DOCUMENT_STATUS_POLICY = "DOCUMENT_STATUS_POLICY"; 154 public static final String DOCUMENT_STATUS_POLICY_KEW_STATUS = "KEW"; 155 public static final String DOCUMENT_STATUS_POLICY_APP_DOC_STATUS = "APP"; 156 public static final String DOCUMENT_STATUS_POLICY_BOTH = "BOTH"; 157 public static final String[] DOCUMENT_STATUS_POLICY_VALUES = { 158 DOCUMENT_STATUS_POLICY_KEW_STATUS, 159 DOCUMENT_STATUS_POLICY_APP_DOC_STATUS, 160 DOCUMENT_STATUS_POLICY_BOTH 161 }; 162 163 164 public static final String SUPER_USER_CANCEL="SU_CANCEL"; 165 public static final String SUPER_USER_APPROVE="SU_APPROVE"; 166 public static final String SUPER_USER_DISAPPROVE="SU_DISAPPROVE"; 167 public static final String SUPER_USER_ROUTE_LEVEL_APPROVE="SU_ROUTE_LEVEL_APPROVE"; 168 public static final String SUPER_USER_ACTION_REQUEST_APPROVE="SU_ACTION_REQUEST_APPROVE"; 169 public static final String SUPER_USER_RETURN_TO_PREVIOUS_ROUTE_LEVEL="SU_RETURN_TO_PREVIOUS_ROUTE_LEVEL"; 170 171 /* email notification for action requests left in action list */ 172 public static final String EMAIL_RMNDR_KEY = "EMAIL_NOTIFICATION"; 173 public static final String EMAIL_RMNDR_NO_VAL = "no"; 174 public static final String EMAIL_RMNDR_DAY_VAL = "daily"; 175 public static final String EMAIL_RMNDR_WEEK_VAL = "weekly"; 176 public static final String EMAIL_RMNDR_IMMEDIATE = "immediate"; 177 public static final String EMAIL_LAST_RMNDR_KEY = "EMAIL_LST_RMNDR_DATE_KEY"; 178 public static final String EMAIL_STYLESHEET_NAME = "kew.email.style"; 179 /* end email notification constants */ 180 181 public static final String PREFERENCES_YES_VAL = "yes"; 182 public static final String PREFERENCES_NO_VAL = "no"; 183 184 public static final String ACTION_LIST_ALL_REQUESTS = "all"; 185 public static final String ACTION_LIST_DELEGATED_REQUESTS = "delegated"; 186 public static final String ACTION_LIST_NONDELEGATED_REQUESTS = "nondelegated"; 187 public static final String DELEGATORS_ON_FILTER_PAGE = "Secondary Delegators only on Filter Page"; 188 public static final String DELEGATORS_ON_ACTION_LIST_PAGE = "Secondary Delegators on Action List Page"; 189 public static final String PRIMARY_DELEGATES_ON_FILTER_PAGE = "Primary Delegates only on Filter Page"; 190 public static final String PRIMARY_DELEGATES_ON_ACTION_LIST_PAGE = "Primary Delegates on Action List Page"; 191 192 public static final Map<String, String> ACTION_LIST_CONTENT; 193 static { 194 ACTION_LIST_CONTENT = new HashMap<String, String>(); 195 ACTION_LIST_CONTENT.put(KewApiConstants.ACTION_LIST_ALL_REQUESTS, "All Requests"); 196 ACTION_LIST_CONTENT.put(KewApiConstants.ACTION_LIST_NONDELEGATED_REQUESTS, "No Delegations"); 197 ACTION_LIST_CONTENT.put(KewApiConstants.ACTION_LIST_DELEGATED_REQUESTS, "Delegations Only"); 198 } 199 200 public static final String ALL_CODE = "All"; 201 public static final String ALL_SECONDARY_DELEGATIONS = "All Secondary Delegations"; 202 public static final String ALL_PRIMARY_DELEGATES = "All Primary Delegates"; 203 public static final String NO_FILTERING = "No Filtering"; 204 public static final String DELEGATION_DEFAULT = "Choose Secondary Delegation"; 205 public static final String PRIMARY_DELEGATION_DEFAULT = "Choose Primary Delegate"; 206 207 public static final String ACTIVE_CD = "Y"; 208 public static final String ACTIVE_LABEL = "ACTIVE"; 209 public static final String ACTIVE_LABEL_LOWER = "Active"; 210 211 public static final String INACTIVE_CD = "N"; 212 public static final String INACTIVE_LABEL = "INACTIVE"; 213 public static final String INACTIVE_LABEL_LOWER = "Inactive"; 214 215 public static final String TRUE_CD = "1"; 216 public static final String TRUE = "T"; 217 218 public static final String FALSE_CD = "0"; 219 public static final String FALSE = "F"; 220 221 /** Value for UNAUTHENTICATED when comparing to the principal value */ 222 public static final String UNAUTHENTICATED = "UNAUTHENTICATED"; 223 public static final int DEFAULT_RETRY_TIME = 1800; 224 225 public static final int TITLE_MAX_LENGTH = 255; 226 227 public static final String DOCUMENT_STATUS_PARENT_TYPE_PENDING = "Pending"; 228 public static final String DOCUMENT_STATUS_PARENT_TYPE_SUCCESSFUL = "Successful"; 229 public static final String DOCUMENT_STATUS_PARENT_TYPE_UNSUCCESSFUL = "Unsuccessful"; 230 231 public static final Map<String, List<String>> DOCUMENT_STATUS_PARENT_TYPES; 232 233 static { 234 235 DOCUMENT_STATUS_PARENT_TYPES = new HashMap<String, List<String>>(); 236 237 // Pending Statuses 238 List<String> pendingList = new ArrayList<String>(); 239 pendingList.add(KewApiConstants.ROUTE_HEADER_ENROUTE_CD); 240 pendingList.add(KewApiConstants.ROUTE_HEADER_SAVED_CD); 241 pendingList.add(KewApiConstants.ROUTE_HEADER_INITIATED_CD); 242 pendingList.add(KewApiConstants.ROUTE_HEADER_EXCEPTION_CD); 243 244 // Successful Statuses 245 List<String> successfulList = new ArrayList<String>(); 246 successfulList.add(KewApiConstants.ROUTE_HEADER_FINAL_CD); 247 successfulList.add(KewApiConstants.ROUTE_HEADER_PROCESSED_CD); 248 249 // Unsuccessful Statuses 250 List<String> unsuccessfulList = new ArrayList<String>(); 251 unsuccessfulList.add(KewApiConstants.ROUTE_HEADER_DISAPPROVED_CD); 252 unsuccessfulList.add(KewApiConstants.ROUTE_HEADER_CANCEL_CD); 253 unsuccessfulList.add(KewApiConstants.ROUTE_HEADER_CANCEL_DISAPPROVE_CD); 254 255 DOCUMENT_STATUS_PARENT_TYPES.put(KewApiConstants.DOCUMENT_STATUS_PARENT_TYPE_PENDING, pendingList); 256 DOCUMENT_STATUS_PARENT_TYPES.put(KewApiConstants.DOCUMENT_STATUS_PARENT_TYPE_SUCCESSFUL, successfulList); 257 DOCUMENT_STATUS_PARENT_TYPES.put(KewApiConstants.DOCUMENT_STATUS_PARENT_TYPE_UNSUCCESSFUL, unsuccessfulList); 258 259 } 260 261 public static final Map<String, String> DOCUMENT_STATUSES; 262 263 static { 264 /* 265 * see values in RouteHeader inner class; this HashMap is the definitive list used for the Document Route Statuses in ActionList preferences 266 */ 267 DOCUMENT_STATUSES = new HashMap<String, String>(); 268 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_CANCEL_CD, KewApiConstants.ROUTE_HEADER_CANCEL_LABEL); 269 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_CANCEL_DISAPPROVE_CD, KewApiConstants.ROUTE_HEADER_CANCEL_DISAPPROVE_LABEL); 270 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_DISAPPROVED_CD, KewApiConstants.ROUTE_HEADER_DISAPPROVED_LABEL); 271 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_ENROUTE_CD, KewApiConstants.ROUTE_HEADER_ENROUTE_LABEL); 272 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_EXCEPTION_CD, KewApiConstants.ROUTE_HEADER_EXCEPTION_LABEL); 273 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_FINAL_CD, KewApiConstants.ROUTE_HEADER_FINAL_LABEL); 274 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_INITIATED_CD, KewApiConstants.ROUTE_HEADER_INITIATED_LABEL); 275 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_PROCESSED_CD, KewApiConstants.ROUTE_HEADER_PROCESSED_LABEL); 276 DOCUMENT_STATUSES.put(KewApiConstants.ROUTE_HEADER_SAVED_CD, KewApiConstants.ROUTE_HEADER_SAVED_LABEL); 277 } 278 279 // below must be negative to be 30 days in the past... positive number will push date into future 280 public static final Integer DOCUMENT_SEARCH_DOC_TITLE_CREATE_DATE_DAYS_AGO = new Integer(-30); 281 public static final Integer DOCUMENT_SEARCH_NO_CRITERIA_CREATE_DATE_DAYS_AGO = new Integer(0); 282 283 public static final int DOCUMENT_LOOKUP_DEFAULT_RESULT_CAP = 500; 284 285 public static final Map<String, String> ACTION_LIST_COLOR_PALETTE; 286 static { 287 ACTION_LIST_COLOR_PALETTE = new HashMap<String, String>(); 288 ACTION_LIST_COLOR_PALETTE.put("white", "#FFFFFF"); 289 ACTION_LIST_COLOR_PALETTE.put("pink", "#FFDDDE"); 290 ACTION_LIST_COLOR_PALETTE.put("orange", "#FFCC99"); 291 ACTION_LIST_COLOR_PALETTE.put("red", "#D99394"); 292 ACTION_LIST_COLOR_PALETTE.put("yellow", "#FFFF99"); 293 ACTION_LIST_COLOR_PALETTE.put("green", "#D4FF94"); 294 ACTION_LIST_COLOR_PALETTE.put("blue", "#BDD8F4"); 295 ACTION_LIST_COLOR_PALETTE.put("aqua", "#7FFFDF"); 296 ACTION_LIST_COLOR_PALETTE.put("slate", "#BDDABD"); 297 ACTION_LIST_COLOR_PALETTE.put("purple", "#DFCAFA"); 298 ACTION_LIST_COLOR_PALETTE.put("tan", "#E5E5B7"); 299 } 300 301 // This is just the above map, but with the keys in the place of the values and vice versa. This assumes the map above 302 // is a one-to-one correspondence; if it's not, then the static{} block below will need modification. 303 public static final Map<String, String> ACTION_LIST_COLOR_NAMES; 304 static { 305 ACTION_LIST_COLOR_NAMES = new HashMap<String,String>(); 306 for (Iterator<Map.Entry<String,String>> iterator = ACTION_LIST_COLOR_PALETTE.entrySet().iterator(); iterator.hasNext();) { 307 Map.Entry<String,String> colorEntry = iterator.next(); 308 ACTION_LIST_COLOR_NAMES.put(colorEntry.getValue(), colorEntry.getKey()); 309 } 310 } 311 312 public static final String HEADER_TAG = "ROUTE_HEADER"; 313 public static final String DOCTYPE_TAG = "DOCTYPE"; 314 315 // order of these is important since this forms a priority according to the codes index into the string 316 public static final String REQUEST_CODES = KewApiConstants.ACTION_REQUEST_FYI_REQ + KewApiConstants.ACTION_REQUEST_ACKNOWLEDGE_REQ + KewApiConstants.ACTION_REQUEST_APPROVE_REQ + KewApiConstants.ACTION_REQUEST_COMPLETE_REQ; 317 public static final String ACTION_CODES = KewApiConstants.ACTION_TAKEN_ACKNOWLEDGED_CD + KewApiConstants.ACTION_TAKEN_APPROVED_CD + KewApiConstants.ACTION_TAKEN_COMPLETED_CD + KewApiConstants.ACTION_TAKEN_ROUTED; 318 public static final String ROUTE_MANAGER_DRIVER_WRKGRP = "RouteManagerDriverCommandGroup"; 319 public static final int ROUTE_HEADER_INITIAL_ROUTE_LEVEL = 0; 320 /** The initial state of a document. Only state in which a delete is allowed. */ 321 public static final String ROUTE_HEADER_INITIATED_CD = "I"; 322 public static final String ROUTE_HEADER_INITIATED_LABEL = "INITIATED"; 323 324 /** 325 * Default pre-approval policy code. By default pre-approval action requests are not allowed. 326 */ 327 public static final boolean ROUTE_HEADER_DEFAULT_PRE_APPROVAL_POLICY = false; 328 /** 329 * Default code for the default auto approval policy code. If a document has not approve action requests and has gone through the route template, then by default the document is auto approved. 330 */ 331 public static final boolean ROUTE_HEADER_DEFAULT_AUTO_APPROVAL_POLICY = true; 332 public static final String ROUTE_HEADER_DEFAULT_DISAPPROVE_POLICY_LABEL = "DISAPPROVE-CANCEL"; 333 /** Default disapprove action policy code */ 334 public static final String ROUTE_HEADER_DEFAULT_DISAPPROVE_POLICY_CD = KewApiConstants.ROUTE_HEADER_CANCEL_DISAPPROVE_CD; 335 /** Document sent back to the last approver */ 336 public static final String ROUTE_HEADER_LAST_APPROVER_DISAPPROVE_CD = "A"; 337 /** 338 * Return the document to the initiator with complete request when the document is disapproved. Document must be explicitly canceled or it will remain en_route under this policy. 339 */ 340 public static final String ROUTE_HEADER_RETURN_INIATOR_DISAPPROVE_CD = "I"; 341 public static final String ROUTE_HEADER_CANCEL_DISAPPROVE_LABEL = "DISAPPROVE-CANCEL"; 342 /** When document disapproved, take same effect as a cancel but with a different action code */ 343 public static final String ROUTE_HEADER_CANCEL_DISAPPROVE_CD = "C"; 344 public static final String ROUTE_HEADER_DISAPPROVED_DEFAULT_COLOR = "yellow"; 345 public static final String ROUTE_HEADER_DISAPPROVED_LABEL = "DISAPPROVED"; 346 /** Document has been disapproved */ 347 public static final String ROUTE_HEADER_DISAPPROVED_CD = "D"; 348 public static final String ROUTE_HEADER_PROCESSED_LABEL = "PROCESSED"; 349 /** Document has been processed by the post processor */ 350 public static final String ROUTE_HEADER_PROCESSED_CD = "P"; 351 public static final String ROUTE_HEADER_EXCEPTION_DEFAULT_COLOR = "red"; 352 public static final String ROUTE_HEADER_EXCEPTION_LABEL = "EXCEPTION"; 353 /** Document has had an exception in routing and needs to be processed */ 354 public static final String ROUTE_HEADER_EXCEPTION_CD = "E"; 355 public static final String ROUTE_HEADER_CANCEL_LABEL = "CANCELED"; 356 /** Document has been canceled and no further action should be taken on it. */ 357 public static final String ROUTE_HEADER_CANCEL_CD = "X"; 358 public static final String ROUTE_HEADER_FINAL_LABEL = "FINAL"; 359 /** Document has finalized and no changes are allowed to take place to it. */ 360 public static final String ROUTE_HEADER_FINAL_CD = "F"; 361 public static final String ROUTE_HEADER_SAVED_LABEL = "SAVED"; 362 /** The document has been saved, but has not started to route. */ 363 public static final String ROUTE_HEADER_SAVED_CD = "S"; 364 public static final String ROUTE_HEADER_ENROUTE_LABEL = "ENROUTE"; 365 /** The document is currently being routed. */ 366 public static final String ROUTE_HEADER_ENROUTE_CD = "R"; 367 368 public static String UNKNOWN_STATUS = ""; 369 370 /** Actions Taken Constants **/ 371 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_ACKNOWLEDGED_CD = "k"; 372 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_ACKNOWLEDGED = "SUPER USER ACTION REQUEST ACKNOWLEDGED"; 373 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_FYI_CD = "f"; 374 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_FYI = "SUPER USER ACTION REQUEST FYI"; 375 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_COMPLETED_CD = "m"; 376 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_COMPLETED = "SUPER USER ACTION REQUEST COMPLETED"; 377 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_APPROVED_CD = "v"; 378 public static final String ACTION_TAKEN_SU_ACTION_REQUEST_APPROVED = "SUPER USER ACTION REQUEST APPROVED"; 379 public static final String ACTION_TAKEN_SU_ROUTE_LEVEL_APPROVED_CD = "r"; 380 public static final String ACTION_TAKEN_SU_ROUTE_LEVEL_APPROVED = "SUPER USER ROUTE LEVEL APPROVED"; 381 public static final String ACTION_TAKEN_SU_RETURNED_TO_PREVIOUS_CD = "z"; 382 public static final String ACTION_TAKEN_SU_RETURNED_TO_PREVIOUS = "SUPER USER RETURNED TO PREVIOUS ROUTE LEVEL"; 383 public static final String ACTION_TAKEN_SU_DISAPPROVED_CD = "d"; 384 public static final String ACTION_TAKEN_SU_DISAPPROVED = "SUPER USER DISAPPROVED"; 385 public static final String ACTION_TAKEN_SU_CANCELED_CD = "c"; 386 public static final String ACTION_TAKEN_SU_CANCELED = "SUPER USER CANCELED"; 387 public static final String ACTION_TAKEN_SU_APPROVED_CD = "a"; 388 public static final String ACTION_TAKEN_SU_APPROVED = "SUPER USER APPROVED"; 389 public static final String ACTION_TAKEN_BLANKET_APPROVE_CD = "B"; 390 public static final String ACTION_TAKEN_BLANKET_APPROVE = "BLANKET APPROVED"; 391 public static final String ACTION_TAKEN_FYI = "FYI"; 392 public static final String ACTION_TAKEN_ADHOC_CD = "H"; 393 /** User has generated an action request to another user */ 394 public static final String ACTION_TAKEN_ADHOC = "ADHOC ROUTED"; 395 public static final String ACTION_TAKEN_ADHOC_REVOKED_CD = "V"; 396 /** AdHoc Request has been revoked */ 397 public static final String ACTION_TAKEN_ADHOC_REVOKED = "ADHOC REVOKED"; 398 public static final String ACTION_TAKEN_SAVED_CD = "S"; 399 /** Document has been saved by the user for later work */ 400 public static final String ACTION_TAKEN_SAVED = "SAVED"; 401 /** Document has been canceled. */ 402 public static final String ACTION_TAKEN_CANCELED = "CANCELED"; 403 /** Document has been denied. */ 404 public static final String ACTION_TAKEN_DENIED = "DISAPPROVED"; 405 /** Document has been opened by the designated recipient. */ 406 public static final String ACTION_TAKEN_ACKNOWLEDGED = "ACKNOWLEDGED"; 407 /** Document has been completed as requested. */ 408 public static final String ACTION_TAKEN_COMPLETED = "COMPLETED"; 409 /** Document has been completed as requested. */ 410 public static final String ACTION_TAKEN_ROUTED = "ROUTED"; 411 /** The document has been approved. */ 412 public static final String ACTION_TAKEN_APPROVED = "APPROVED"; 413 /** The document is being returned to a previous routelevel **/ 414 public static final String ACTION_TAKEN_RETURNED_TO_PREVIOUS_CD = "Z"; 415 public static final String ACTION_TAKEN_RETURNED_TO_PREVIOUS = "RETURNED TO PREVIOUS ROUTE LEVEL"; 416 /** The document has non-routed activity against it that is recorded in the route log **/ 417 public static final String ACTION_TAKEN_LOG_DOCUMENT_ACTION_CD = "R"; 418 public static final String ACTION_TAKEN_LOG_DOCUMENT_ACTION = "LOG MESSAGE"; 419 /** The document is routed to a workgroup and a user in the workgroup wants to take authority from the workgroup **/ 420 public static final String ACTION_TAKEN_TAKE_WORKGROUP_AUTHORITY_CD = "w"; 421 public static final String ACTION_TAKEN_TAKE_WORKGROUP_AUTHORITY = "WORKGROUP AUTHORITY TAKEN"; 422 /** The person who took workgroup authority is releasing it **/ 423 public static final String ACTION_TAKEN_RELEASE_WORKGROUP_AUTHORITY_CD = "y"; 424 public static final String ACTION_TAKEN_RELEASE_WORKGROUP_AUTHORITY = "WORKGROUP AUTHORITY RELEASED"; 425 /** The document is moved **/ 426 public static final String ACTION_TAKEN_MOVE_CD = "M"; 427 public static final String ACTION_TAKEN_MOVE = "MOVED"; 428 429 /** Route Level type constants FlexRM or Route Module **/ 430 public static final String ROUTE_LEVEL_FLEX_RM = "FR"; 431 public static final String ROUTE_LEVEL_ROUTE_MODULE = "RM"; 432 public static final String ROUTE_LEVEL_PEOPLE_FLOW = "PF"; 433 public static final String ROUTE_LEVEL_RULES_ENGINE = "RE"; 434 public static final String ROUTE_LEVEL_METHOD_NAME_ROUTE_MODULE = "Route Module"; 435 public static final String ROUTE_LEVEL_METHOD_NAME_FLEX_RM = "Rule Template"; 436 /** No route module available for this route level * */ 437 public static final String ROUTE_LEVEL_NO_ROUTE_MODULE = "NONE"; 438 /** 439 * The route level value for the AdHoc route level. AdHoc like Exception route level does not have a route module and is processed directly be the engine. 440 */ 441 public static final int ADHOC_ROUTE_LEVEL = 0; 442 public static final String ADHOC_ROUTE_LEVEL_NAME = "Adhoc Routing"; 443 public static final String PARALLEL_ADHOC_ROUTE_MODULE_NAME = "org.kuali.rice.kew.routemodule.ParallelAdHocRouteModule"; 444 445 /** 446 * The route level value for the Exception route level. The Exception route level does not have a route module and the core engine processes these requests since they have special rules, such as an exception request can not itself throw an exception request. 447 */ 448 public static final int EXCEPTION_ROUTE_LEVEL = -1; 449 public static final String EXCEPTION_ROUTE_MODULE_NAME = "org.kuali.rice.kew.routemodule.ExceptionRouteModule"; 450 public static final String EXCEPTION_ROUTE_LEVEL_NAME = "Exception Routing"; 451 public static final int INVALID_ROUTE_LEVEL = -2; 452 453 /** Routing should process the associated ActionRequests in sequence */ 454 public static final String ROUTE_LEVEL_SEQUENCE = "S"; 455 public static final String ROUTE_LEVEL_SEQUENTIAL_NAME = "Sequential"; 456 public static final String ROUTE_LEVEL_SEQUENCE_LABEL = "SEQUENCE"; 457 458 /** Routing should process the associated ActionRequests in parallel */ 459 public static final String ROUTE_LEVEL_PARALLEL = "P"; 460 public static final String ROUTE_LEVEL_PARALLEL_NAME = "Parallel"; 461 public static final String ROUTE_LEVEL_PARALLEL_LABEL = "PARALLEL"; 462 463 /** Routing should process the associated ActionRequests in parallel accoring to priority */ 464 public static final String ROUTE_LEVEL_PRIORITY_PARALLEL = "R"; 465 public static final String ROUTE_LEVEL_PRIORITY_PARALLEL_NAME = "Priority-Parallel"; 466 public static final String ROUTE_LEVEL_PRIORITY_PARALLEL_LABEL = "PRIORITY-PARALLEL"; 467 468 public static final boolean ACTION_REQUEST_FORCE_ACTION = true; 469 public static final boolean ACTION_REQUEST_PREV_ACTION_AWARE = false; 470 471 /** Priority used if no priority is specified */ 472 public static final int ACTION_REQUEST_DEFAULT_PRIORITY = 1; 473 474 /** Values for Rule template options */ 475 public static final String ACTION_REQUEST_DEFAULT_CD = "D"; 476 477 478 /** 479 * Priority level that indicates an ad hoc request. If the priority is above this value, then the request is considered an ad hoc request and is processed accordingly. This is used most often when an ad hoc request must follow the end of a route level. For example, if a user wants the ad hoc to happen after all requests at route level 3 have been processed, but before any requests at route level 4. This is also the upper, exclusive bound for normal request priorities. 480 */ 481 public static final int ACTION_REQUEST_ADHOC_PRIORITY = 1000; 482 483 public static final String ACTION_REQUEST_CANCEL_REQ_LABEL = "CANCEL"; 484 /** 485 * Requested action is to Cancel document 486 */ 487 public static final String ACTION_REQUEST_CANCEL_REQ = "X"; 488 public static final String ACTION_REQUEST_ACKNOWLEDGE_REQ_LABEL = "ACKNOWLEDGE"; 489 /** 490 * Requested action is ACKKNOWLEDGE. This action does not hold up routing, but action request will not be marked DONE until an ACKNOWLEDGE actiontaken is recorded. 491 */ 492 public static final String ACTION_REQUEST_ACKNOWLEDGE_REQ = "K"; 493 public static final String ACTION_REQUEST_FYI_REQ_LABEL = "FYI"; 494 /** 495 * The action is an FYI notification only. This action request is marked DONE as soon as it is activated. 496 */ 497 public static final String ACTION_REQUEST_FYI_REQ = "F"; 498 public static final String ACTION_REQUEST_APPROVE_REQ_LABEL = "APPROVE"; 499 /** Requested action is to approve the document. */ 500 public static final String ACTION_REQUEST_APPROVE_REQ = "A"; 501 public static final String ACTION_REQUEST_COMPLETE_REQ_LABEL = "COMPLETE"; 502 /** Requested action is to complete the document, however that is defined by the application. */ 503 public static final String ACTION_REQUEST_COMPLETE_REQ = "C"; 504 public static final String ACTION_REQUEST_DISAPPROVE_LABEL = "DISAPPROVE"; 505 506 public static final String ACTION_REQUEST_TO_BE_GENERATED = "-1"; 507 /** Largest value allowed for a workgroupID. Any value larger is assumed to be a sequenceId of a user */ 508 public static final int WORKGROUP_MAX_WORKGROUP_ID = 100000000; 509 /** Last approval taken applies to entire request */ 510 //public static final String WORKGROUP_LAST_APPROVAL = "L"; 511 /** First action taken applies to entire request */ 512 //public static final String WORKGROUP_FIRST_ACTION = "F"; 513 /** Personal workgroup code */ 514 //public static final String WORKGROUP_PERSONAL = "P"; 515 516 public static final Map<String, String> ACTION_REQUEST_CODES = new HashMap<String, String>(); 517 static { 518 ACTION_REQUEST_CODES.put(ACTION_REQUEST_COMPLETE_REQ, ACTION_REQUEST_COMPLETE_REQ_LABEL); 519 ACTION_REQUEST_CODES.put(ACTION_REQUEST_APPROVE_REQ, ACTION_REQUEST_APPROVE_REQ_LABEL); 520 ACTION_REQUEST_CODES.put(ACTION_REQUEST_ACKNOWLEDGE_REQ, ACTION_REQUEST_ACKNOWLEDGE_REQ_LABEL); 521 ACTION_REQUEST_CODES.put(ACTION_REQUEST_FYI_REQ, ACTION_REQUEST_FYI_REQ_LABEL); 522 } 523 524 /** Route Queue Priorities */ 525 public static final Integer ROUTE_QUEUE_DEFAULT_PRIORITY = new Integer(5); 526 public static final Integer ROUTE_QUEUE_BLANKET_APPROVE_PRIORITY = new Integer(4); 527 public static final Integer ROUTE_QUEUE_RERESOLVE_PRIORITY = new Integer(10); 528 public static final Integer ROUTE_QUEUE_REQUEUE_PRIORITY = new Integer(10); 529 public static final Integer ROUTE_QUEUE_EMAIL_PRIORITY = new Integer(20); 530 public static final Integer ROUTE_QUEUE_RULE_CACHE_PRIORITY = new Integer(0); 531 public static final Integer ROUTE_QUEUE_EXCEPTION_PRIORITY = new Integer(21); 532 public static final Integer ROUTE_QUEUE_UPGRADE_PRIORITY = new Integer(30); 533 534 public static final String ROUTE_QUEUE_EXCEPTION = "E"; 535 public static final String ROUTE_QUEUE_ROUTING = "R"; 536 public static final String ROUTE_QUEUE_QUEUED = "Q"; 537 public static final String ROUTE_QUEUE_EXCEPTION_LABEL = "EXCEPTION"; 538 public static final String ROUTE_QUEUE_ROUTING_LABEL = "ROUTING"; 539 public static final String ROUTE_QUEUE_QUEUED_LABEL = "QUEUED"; 540 541 public static final String RULE_RESPONSIBILITY_WORKFLOW_ID = "F"; 542 public static final String RULE_RESPONSIBILITY_GROUP_ID = "G"; 543 public static final String RULE_RESPONSIBILITY_ROLE_ID = "R"; 544 545 public static final String RULE_RESPONSIBILITY_WORKFLOW_ID_LABEL = "PERSON"; 546 public static final String RULE_RESPONSIBILITY_GROUP_ID_LABEL = "GROUP"; 547 public static final String RULE_RESPONSIBILITY_ROLE_ID_LABEL = "ROLE"; 548 549 public static final Map<String, String> RULE_RESPONSIBILITY_TYPES = new HashMap<String, String>(); 550 static { 551 RULE_RESPONSIBILITY_TYPES.put(RULE_RESPONSIBILITY_WORKFLOW_ID, RULE_RESPONSIBILITY_WORKFLOW_ID_LABEL); 552 RULE_RESPONSIBILITY_TYPES.put(RULE_RESPONSIBILITY_GROUP_ID, RULE_RESPONSIBILITY_GROUP_ID_LABEL); 553 RULE_RESPONSIBILITY_TYPES.put(RULE_RESPONSIBILITY_ROLE_ID, RULE_RESPONSIBILITY_ROLE_ID_LABEL); 554 } 555 556 public static final String DEFAULT_RULE_DOCUMENT_NAME = "RuleDocument"; 557 558 public static class Sorting { 559 public static final String SORT_COLUMN_SEQUENCES = "columnSortSequences"; 560 public static final String SORT_SEQUENCE_ASC = "ASCENDING"; 561 public static final String SORT_SEQUENCE_DSC = "DESCENDING"; 562 public static final String SORT_DOC_ID = "docId"; 563 public static final String SORT_DOC_ID_NUMBER = "docIdNumber"; 564 public static final String SORT_RULE_ID = "ruleId"; 565 public static final String SORT_RULE_ID_NUMBER = "ruleIdNumber"; 566 public static final String SORT_DOC_TITLE = "docTitle"; 567 public static final String SORT_DOC_TYPE_ID = "docTypeId"; 568 public static final String SORT_DOC_TYPE_ID_NUMBER = "docTypeIdNumber"; 569 public static final String SORT_DOC_TYPE_NAME = "docTypeName"; 570 public static final String SORT_DOC_TYPE_FULL_NAME = "docTypeFullName"; 571 public static final String SORT_DOC_TYPE_LABEL = "docTypeLabel"; 572 public static final String SORT_ACTION_REQUESTED = "actionRequested"; 573 public static final String SORT_ACTION_REQUESTED_LABEL = "actionRequestedLabel"; 574 public static final String SORT_CHART = "chart"; 575 public static final String SORT_ORG = "org"; 576 public static final String SORT_REVIEWERS_ALL_NAMES = "reviewersAllNames"; 577 public static final String SORT_REVIEWER_EMPLY_ID = "reviewerEmplyId"; 578 public static final String SORT_REVIEWER_NETWORK_ID = "reviewerNetworkId"; 579 public static final String SORT_REVIEWER_FULL_NAME = "reviewerFullName"; 580 public static final String SORT_ACTIVE_IND = "activeIndicator"; 581 public static final String SORT_ACTIVE_IND_LABEL = "activeIndicatorLabel"; 582 public static final String SORT_DOC_TYPE_GROUP_ID = "docTypeGroupId"; 583 public static final String SORT_DOC_TYPE_GROUP_ID_NUMBER = "docTypeGroupIdNumber"; 584 public static final String SORT_DOC_TYPE_GROUP_NAME = "docTypeGroupName"; 585 public static final String SORT_DOC_TYPE_GROUP_FULL_NAME = "docTypeGroupFullName"; 586 public static final String SORT_DOC_TYPE_GROUP_PARENT_NAME = "docTypeGroupParentName"; 587 public static final String SORT_DOC_TYPE_GROUP_PARENT_FULL_NAME = "docTypeGroupParentFullName"; 588 public static final String SORT_DOC_TYPE_GROUP_LABEL = "docTypeGroupLabel"; 589 public static final String SORT_FISCAL_UPAA = "fiscalUpaa"; 590 public static final String SORT_FISCAL_UPAA_LABEL = "fiscalUpaaLabel"; 591 public static final String SORT_POSITION_TYPE = "positionType"; 592 public static final String SORT_POSITION_TYPE_LABEL = "positionTypeLabel"; 593 public static final String SORT_SALARY_PLAN = "salaryPlanSort"; 594 public static final String SORT_DELEGATES_ALL = "delegatesAll"; 595 public static final String SORT_DELEGATE_EMPLY_ID = "delegateEmplyId"; 596 public static final String SORT_DELEGATE_NETWORK_ID = "delegateNetworkId"; 597 public static final String SORT_DELEGATE_FULL_NAME = "delegateFullName"; 598 public static final String SORT_ROUTE_MODULE_NAME = "routeModuleName"; 599 public static final String SORT_WORKGROUP_ID = "workGroupId"; 600 public static final String SORT_WORKGROUP_ID_NUMBER = "workGroupIdNumber"; 601 public static final String SORT_WORKGROUP_NAME = "workGroupName"; 602 public static final String SORT_WORKGROUP_FULL_NAME = "workGroupFullName"; 603 public static final String SORT_USER_FULL_NAME = "userFullName"; 604 public static final String SORT_USER_NETWORK_ID = "userNetworkId"; 605 public static final String SORT_MONITOR_ID_NUMBER = "monitorId"; 606 public static final String SORT_MONITOR_DOC_TYPE = "monitorDocType"; 607 public static final String SORT_MONITOR_TYPE = "monitorType"; 608 public static final String SORT_MONITOR_TIMER = "monitorTimer"; 609 public static final String SORT_MONITOR_ACTION_TYPE = "monitorActionType"; 610 } 611 612 public static final String WORKGROUP = "workgroup"; 613 public static final String PERSON = "person"; 614 public static final String ROLE = "role"; 615 616 public static final String DOC_HANDLER_RETURN_URL = "docHandlerReturnUrl"; 617 //document operation constants 618 public static final String ADD = "add"; 619 public static final String NOOP = "noop"; 620 public static final String UPDATE = "update"; 621 public static final String DELETE = "delete"; 622 public static final String TIMESTAMP_DATE_FORMAT_PATTERN = "yyyy-mm-dd hh:mm:ss.fffffffff"; 623 public static final String TIMESTAMP_DATE_FORMAT_PATTERN2 = "MM/dd/yyyy hh:mm a"; 624 625 public static final Map<String, String> ACTION_REQUEST_CD; 626 static{ 627 ACTION_REQUEST_CD = new HashMap<String, String>(); 628 ACTION_REQUEST_CD.put(KewApiConstants.ACTION_REQUEST_ACKNOWLEDGE_REQ, KewApiConstants.ACTION_REQUEST_ACKNOWLEDGE_REQ_LABEL); 629 ACTION_REQUEST_CD.put(KewApiConstants.ACTION_REQUEST_APPROVE_REQ, KewApiConstants.ACTION_REQUEST_APPROVE_REQ_LABEL); 630 ACTION_REQUEST_CD.put(KewApiConstants.ACTION_REQUEST_COMPLETE_REQ, KewApiConstants.ACTION_REQUEST_COMPLETE_REQ_LABEL); 631 ACTION_REQUEST_CD.put(KewApiConstants.ACTION_REQUEST_FYI_REQ, KewApiConstants.ACTION_REQUEST_FYI_REQ_LABEL); 632 } 633 634 public static final Map<String, String> ACTION_TAKEN_CD; 635 static{ 636 ACTION_TAKEN_CD = new HashMap<String, String>(); 637 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_ACKNOWLEDGED_CD, KewApiConstants.ACTION_TAKEN_ACKNOWLEDGED); 638 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_ADHOC_CD, KewApiConstants.ACTION_TAKEN_ADHOC); 639 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_ADHOC_REVOKED_CD, KewApiConstants.ACTION_TAKEN_ADHOC_REVOKED); 640 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_APPROVED_CD, KewApiConstants.ACTION_TAKEN_APPROVED); 641 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_BLANKET_APPROVE_CD, KewApiConstants.ACTION_TAKEN_BLANKET_APPROVE); 642 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_CANCELED_CD, KewApiConstants.ACTION_TAKEN_CANCELED); 643 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_COMPLETED_CD, KewApiConstants.ACTION_TAKEN_COMPLETED); 644 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_DENIED_CD, KewApiConstants.ACTION_TAKEN_DENIED); 645 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_FYI_CD, KewApiConstants.ACTION_TAKEN_FYI); 646 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SAVED_CD, KewApiConstants.ACTION_TAKEN_SAVED); 647 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_RETURNED_TO_PREVIOUS_CD, KewApiConstants.ACTION_TAKEN_RETURNED_TO_PREVIOUS); 648 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_LOG_DOCUMENT_ACTION_CD, KewApiConstants.ACTION_TAKEN_LOG_DOCUMENT_ACTION); 649 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_APPROVED_CD, KewApiConstants.ACTION_TAKEN_SU_APPROVED); 650 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_CANCELED_CD, KewApiConstants.ACTION_TAKEN_SU_CANCELED); 651 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_DISAPPROVED_CD, KewApiConstants.ACTION_TAKEN_SU_DISAPPROVED); 652 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_ROUTE_LEVEL_APPROVED_CD, KewApiConstants.ACTION_TAKEN_SU_ROUTE_LEVEL_APPROVED); 653 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_ACTION_REQUEST_APPROVED_CD, KewApiConstants.ACTION_TAKEN_SU_ACTION_REQUEST_APPROVED); 654 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_SU_RETURNED_TO_PREVIOUS_CD, KewApiConstants.ACTION_TAKEN_SU_RETURNED_TO_PREVIOUS); 655 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_TAKE_WORKGROUP_AUTHORITY_CD, KewApiConstants.ACTION_TAKEN_TAKE_WORKGROUP_AUTHORITY); 656 ACTION_TAKEN_CD.put(KewApiConstants.ACTION_TAKEN_MOVE_CD, KewApiConstants.ACTION_TAKEN_MOVE); 657 } 658 659 public static final String DOCUMENT_CONTENT_VERSION_1 = "1"; 660 public static final String DOCUMENT_CONTENT_VERSION_2 = "2"; 661 662 public static final String XML_FILE_NOT_FOUND = "general.error.filenotfound"; 663 public static final String XML_PARSE_ERROR = "general.error.parsexml"; 664 665 666 667 public static final String RULE_ATTRIBUTE_TYPE = "RuleAttribute"; 668 public static final String RULE_XML_ATTRIBUTE_TYPE = "RuleXmlAttribute"; 669 public static final String SEARCHABLE_ATTRIBUTE_TYPE = "SearchableAttribute"; 670 public static final String SEARCHABLE_XML_ATTRIBUTE_TYPE = "SearchableXmlAttribute"; 671 public static final String DOCUMENT_SEARCH_CUSTOMIZER_ATTRIBUTE_TYPE = "DocumentSearchCustomizer"; 672 public static final String DOCUMENT_SECURITY_ATTRIBUTE_TYPE = "DocumentSecurityAttribute"; 673 public static final String EXTENSION_ATTRIBUTE_TYPE = "ExtensionAttribute"; 674 public static final String EMAIL_ATTRIBUTE_TYPE = "EmailAttribute"; 675 public static final String NOTE_ATTRIBUTE_TYPE = "NoteAttribute"; 676 public static final String ACTION_LIST_ATTRIBUTE_TYPE = "ActionListAttribute"; 677 public static final String RULE_VALIDATION_ATTRIBUTE_TYPE = "RuleValidationAttribute"; 678 public static final String QUALIFIER_RESOLVER_ATTRIBUTE_TYPE = "QualifierResolver"; 679 680 public static final String RULE_ATTRIBUTE_TYPE_LABEL = "Rule Attribute"; 681 public static final String RULE_XML_ATTRIBUTE_TYPE_LABEL = "Rule Xml Attribute"; 682 public static final String SEARCHABLE_ATTRIBUTE_TYPE_LABEL = "Searchable Attribute"; 683 public static final String SEARCHABLE_XML_ATTRIBUTE_TYPE_LABEL = "Searchable Xml Attribute"; 684 public static final String DOCUMENT_SEARCH_CUSTOMIZER_ATTRIBUTE_TYPE_LABEL = "Document Search Customizer"; 685 public static final String DOCUMENT_SECURITY_ATTRIBUTE_TYPE_LABEL = "Document Security Attribute"; 686 public static final String EXTENSION_ATTRIBUTE_TYPE_LABEL = "Extension Attribute"; 687 public static final String EMAIL_ATTRIBUTE_TYPE_LABEL = "Email Attribute"; 688 public static final String NOTE_ATTRIBUTE_TYPE_LABEL = "Note Attribute"; 689 public static final String ACTION_LIST_ATTRIBUTE_TYPE_LABEL = "Action List Attribute"; 690 public static final String RULE_VALIDATION_ATTRIBUTE_TYPE_LABEL = "Rule Validation Attribute"; 691 public static final String QUALIFIER_RESOLVER_ATTRIBUTE_TYPE_LABEL = "Qualifier Resolver"; 692 693 public static final String[] RULE_ATTRIBUTE_TYPES = { 694 RULE_ATTRIBUTE_TYPE, 695 RULE_XML_ATTRIBUTE_TYPE, 696 SEARCHABLE_ATTRIBUTE_TYPE, 697 SEARCHABLE_XML_ATTRIBUTE_TYPE, DOCUMENT_SEARCH_CUSTOMIZER_ATTRIBUTE_TYPE, 698 DOCUMENT_SECURITY_ATTRIBUTE_TYPE, 699 EXTENSION_ATTRIBUTE_TYPE, 700 EMAIL_ATTRIBUTE_TYPE, 701 NOTE_ATTRIBUTE_TYPE, 702 ACTION_LIST_ATTRIBUTE_TYPE, 703 RULE_VALIDATION_ATTRIBUTE_TYPE, 704 QUALIFIER_RESOLVER_ATTRIBUTE_TYPE 705 }; 706 707 public static final Map<String, String> RULE_ATTRIBUTE_TYPE_MAP; 708 static { 709 RULE_ATTRIBUTE_TYPE_MAP = new HashMap<String, String>(); 710 RULE_ATTRIBUTE_TYPE_MAP.put(RULE_ATTRIBUTE_TYPE, RULE_ATTRIBUTE_TYPE_LABEL); 711 RULE_ATTRIBUTE_TYPE_MAP.put(RULE_XML_ATTRIBUTE_TYPE, RULE_XML_ATTRIBUTE_TYPE_LABEL); 712 RULE_ATTRIBUTE_TYPE_MAP.put(SEARCHABLE_ATTRIBUTE_TYPE, SEARCHABLE_ATTRIBUTE_TYPE_LABEL); 713 RULE_ATTRIBUTE_TYPE_MAP.put(SEARCHABLE_XML_ATTRIBUTE_TYPE, SEARCHABLE_XML_ATTRIBUTE_TYPE_LABEL); 714 RULE_ATTRIBUTE_TYPE_MAP.put(DOCUMENT_SEARCH_CUSTOMIZER_ATTRIBUTE_TYPE, 715 DOCUMENT_SEARCH_CUSTOMIZER_ATTRIBUTE_TYPE_LABEL); 716 RULE_ATTRIBUTE_TYPE_MAP.put(DOCUMENT_SECURITY_ATTRIBUTE_TYPE, DOCUMENT_SECURITY_ATTRIBUTE_TYPE_LABEL); 717 RULE_ATTRIBUTE_TYPE_MAP.put(EXTENSION_ATTRIBUTE_TYPE, EXTENSION_ATTRIBUTE_TYPE_LABEL); 718 RULE_ATTRIBUTE_TYPE_MAP.put(EMAIL_ATTRIBUTE_TYPE, EMAIL_ATTRIBUTE_TYPE_LABEL); 719 RULE_ATTRIBUTE_TYPE_MAP.put(NOTE_ATTRIBUTE_TYPE, NOTE_ATTRIBUTE_TYPE_LABEL); 720 RULE_ATTRIBUTE_TYPE_MAP.put(ACTION_LIST_ATTRIBUTE_TYPE, ACTION_LIST_ATTRIBUTE_TYPE_LABEL); 721 RULE_ATTRIBUTE_TYPE_MAP.put(RULE_VALIDATION_ATTRIBUTE_TYPE, RULE_VALIDATION_ATTRIBUTE_TYPE_LABEL); 722 RULE_ATTRIBUTE_TYPE_MAP.put(QUALIFIER_RESOLVER_ATTRIBUTE_TYPE, QUALIFIER_RESOLVER_ATTRIBUTE_TYPE_LABEL); 723 } 724 725 public static final String DAILY = "daily"; 726 public static final String WEEKLY = "weekly"; 727 public static final Long EMAIL_QUEUE_ENTRY_ROUTE_HEADER_ID = new Long(-1); 728 public static final int MAX_ANNOTATION_LENGTH = 2000; 729 public static final String XML_FILE_PARSE_ERROR = "general.error.parsexml"; 730 731 732 public static final String MACHINE_GENERATED_RESPONSIBILITY_ID = "0"; 733 public static final String ADHOC_REQUEST_RESPONSIBILITY_ID = "-1"; 734 public static final String EXCEPTION_REQUEST_RESPONSIBILITY_ID = "-2"; 735 public static final String SAVED_REQUEST_RESPONSIBILITY_ID = "-3"; 736 737 public static final Set<String> SPECIAL_RESPONSIBILITY_ID_SET; 738 static { 739 SPECIAL_RESPONSIBILITY_ID_SET = new HashSet<String>(); 740 SPECIAL_RESPONSIBILITY_ID_SET.add(MACHINE_GENERATED_RESPONSIBILITY_ID); 741 SPECIAL_RESPONSIBILITY_ID_SET.add(ADHOC_REQUEST_RESPONSIBILITY_ID); 742 SPECIAL_RESPONSIBILITY_ID_SET.add(EXCEPTION_REQUEST_RESPONSIBILITY_ID); 743 SPECIAL_RESPONSIBILITY_ID_SET.add(SAVED_REQUEST_RESPONSIBILITY_ID); 744 } 745 746 public static final int DEFAULT_WEB_SERVICE_RETRY = 1; 747 748 public static final String PRIMARY_PROCESS_NAME = "PRIMARY"; 749 public static final String PRIMARY_BRANCH_NAME = "PRIMARY"; 750 public static final String DEFAULT_EXCEPTION_PROCESS_NAME = "exception"; 751 752 // Document type versions 753 public static final String ROUTING_VERSION_ROUTE_LEVEL = "1"; 754 public static final String ROUTING_VERSION_NODAL = "2"; 755 public static final String CURRENT_ROUTING_VERSION = ROUTING_VERSION_NODAL; 756 757 public static final String EDL_ATTRIBUTE_GLOBAL_ERROR_KEY = "global"; 758 public static final String POST_PROCESSOR_FAILURE_MESSAGE = "PostProcessor failed to process document: "; 759 760 public static final String DEFAULT_CONFIG_LOCATION_PARAM = "default.config.location"; 761 public static final String DEFAULT_APPLICATION_CONFIG_LOCATION = "classpath:META-INF/workflow.xml"; 762 public static final String ADDITIONAL_CONFIG_LOCATIONS_PARAM = "additional.config.locations"; 763 764 // client protocols 765 public static enum ClientProtocol { 766 WEBSERVICE, LOCAL, EMBEDDED, RMI, SPRING_INVOKER 767 } 768 769 // system branch state keys 770 public static final String POST_PROCESSOR_PROCESSED_KEY = "System.PostProcessorProcessed"; 771 public static final String POST_PROCESSOR_FINAL_KEY = "System.PostProcessorFinal"; 772 public static final String POST_PROCESSOR_NON_DEFINED_VALUE = "none"; 773 774 // custom http header keys 775 public static final String DIGITAL_SIGNATURE_HEADER = "KEW_DIGITAL_SIGNATURE"; 776 public static final String KEYSTORE_ALIAS_HEADER = "KEW_KEYSTORE_ALIAS"; 777 778 public static final int DEFAULT_TRANSACTION_TIMEOUT_SECONDS = 3600; 779 780 public static final String HTML_NON_BREAKING_SPACE = " "; 781 782 public static final String DAILY_EMAIL_CRON_EXPRESSION = "dailyEmail.cronExpression"; 783 public static final String WEEKLY_EMAIL_CRON_EXPRESSION = "weeklyEmail.cronExpression"; 784 public static final String DAILY_EMAIL_ACTIVE = "dailyEmail.active"; 785 public static final String WEEKLY_EMAIL_ACTIVE = "weeklyEmail.active"; 786 787 public static final String ACTION_LIST_NO_REFRESH = "ActionList.norefresh"; 788 789 790 // receive future action request contants 791 public static final String RECEIVE_FUTURE_REQUESTS_BRANCH_STATE_KEY = "_receive_future_requests"; 792 public static final String DEACTIVATED_FUTURE_REQUESTS_BRANCH_STATE_KEY = "_deactivated_future_requests"; 793 public static final String DONT_RECEIVE_FUTURE_REQUESTS_BRANCH_STATE_VALUE = "NO"; 794 public static final String RECEIVE_FUTURE_REQUESTS_BRANCH_STATE_VALUE = "YES"; 795 public static final String CLEAR_FUTURE_REQUESTS_BRANCH_STATE_VALUE = "CLEAR"; 796 public static final String USE_REMOTE_EMAIL_SERVICES = "Email.useRemoteServices"; 797 798 // lookupable column types 799 public static final String LOOKUP_COLUMN_TYPE_TEXT = "text"; 800 public static final String LOOKUP_COLUMN_TYPE_INTEGER = "integer"; 801 public static final String LOOKUP_COLUMN_TYPE_LONG = "long"; 802 public static final String LOOKUP_COLUMN_TYPE_FLOAT = "float"; 803 public static final String LOOKUP_COLUMN_TYPE_DATETIME = "datetime"; 804 805 // document search route status qualifiers 806 public static final String DOC_SEARCH_ROUTE_STATUS_QUALIFIER_EXACT = "equal"; 807 public static final String DOC_SEARCH_ROUTE_STATUS_QUALIFIER_BEFORE = "before"; 808 public static final String DOC_SEARCH_ROUTE_STATUS_QUALIFIER_AFTER = "after"; 809 public static final Map<String,String> DOC_SEARCH_ROUTE_STATUS_QUALIFIERS; 810 static { 811 DOC_SEARCH_ROUTE_STATUS_QUALIFIERS = new HashMap<String,String>(); 812 DOC_SEARCH_ROUTE_STATUS_QUALIFIERS.put(DOC_SEARCH_ROUTE_STATUS_QUALIFIER_EXACT, "Exactly"); 813 DOC_SEARCH_ROUTE_STATUS_QUALIFIERS.put(DOC_SEARCH_ROUTE_STATUS_QUALIFIER_BEFORE, "Before"); 814 DOC_SEARCH_ROUTE_STATUS_QUALIFIERS.put(DOC_SEARCH_ROUTE_STATUS_QUALIFIER_AFTER, "After"); 815 } 816 817 // service name constants 818 819 public static final String WORKFLOW_UTILITY_SERVICE = "enWorkflowUtilityService"; 820 821 public static final String SIMPLE_DATE_FORMAT_FOR_DATE = RiceConstants.SIMPLE_DATE_FORMAT_FOR_DATE; 822 public static final String SIMPLE_DATE_FORMAT_FOR_TIME = RiceConstants.SIMPLE_DATE_FORMAT_FOR_TIME; 823 public static final String DEFAULT_DATE_FORMAT_PATTERN = RiceConstants.DEFAULT_DATE_FORMAT_PATTERN; 824 825 public static final String ACTIONLIST_COMMAND = "displayActionListView"; 826 827 public static final String ACTIONLIST_INLINE_COMMAND = "displayActionListInlineView"; 828 829 public static final String EMAIL_COMMAND = "displayEmailView"; 830 831 public static final String DOCSEARCH_COMMAND = "displayDocSearchView"; 832 833 public static final String SUPERUSER_COMMAND = "displaySuperUserView"; 834 835 public static final String HELPDESK_ACTIONLIST_COMMAND = "displayHelpDeskActionListView"; 836 837 public static final String INITIATE_COMMAND = "initiate"; 838 839 public static final String COMMAND_PARAMETER = "command"; 840 841 public static final String DOCUMENT_ID_PARAMETER = "docId"; 842 843 public static final String BACKDOOR_ID_PARAMETER = "backdoorId"; 844 845 public static final String DOCTYPE_PARAMETER = "docTypeName"; 846 847 public static final String INITIATE_URL = "initiateURL"; 848 849 public static final String ADVANCE_SEARCH_URL = "advanceSearchURL"; 850 851 public static final String DOCHANDLER_METHOD = "dochandlerMethod"; 852 853 public static final String KEW_NAMESPACE = "KR-WKFLW"; 854 855 public static final String DEFAULT_RESPONSIBILITY_TEMPLATE_NAME = "Review"; 856 857 public static final String EXCEPTION_ROUTING_RESPONSIBILITY_TEMPLATE_NAME = "Resolve Exception"; 858 859 // Permission Details 860 861 public static final String DOCUMENT_TYPE_NAME_DETAIL = "documentTypeName"; 862 public static final String ACTION_REQUEST_CD_DETAIL = "actionRequestCd"; 863 public static final String ROUTE_NODE_NAME_DETAIL = "routeNodeName"; 864 public static final String DOCUMENT_STATUS_DETAIL = "routeStatusCode"; 865 866 // Permissions 867 868 public static final String BLANKET_APPROVE_PERMISSION = "Blanket Approve Document"; 869 public static final String AD_HOC_REVIEW_PERMISSION = "Ad Hoc Review Document"; 870 public static final String ADMINISTER_ROUTING_PERMISSION = "Administer Routing for Document"; 871 public static final String CANCEL_PERMISSION = "Cancel Document"; 872 public static final String INITIATE_PERMISSION = "Initiate Document"; 873 public static final String ROUTE_PERMISSION = "Route Document"; 874 public static final String SAVE_PERMISSION = "Save Document"; 875 public static final String ADD_MESSAGE_TO_ROUTE_LOG = "Add Message to Route Log"; 876 877 878 // signifies the delimiter character for ingested KIM groups 879 public static final String KIM_GROUP_NAMESPACE_NAME_DELIMITER_CHARACTER = ":"; 880 881 // system parameters 882 public static final String KIM_PRIORITY_ON_DOC_TYP_PERMS_IND = "KIM_PRIORITY_ON_DOC_TYP_PERMS_IND"; 883 public static final String ACTION_LIST_DOCUMENT_POPUP_IND = "ACTION_LIST_DOCUMENT_POPUP_IND"; 884 public static final String ACTION_LIST_ROUTE_LOG_POPUP_IND = "ACTION_LIST_ROUTE_LOG_POPUP_IND"; 885 public static final String ACTION_LIST_SEND_EMAIL_NOTIFICATION_IND = "SEND_EMAIL_NOTIFICATION_IND"; 886 public static final String SHOW_BACK_DOOR_LOGIN_IND = "SHOW_BACK_DOOR_LOGIN_IND"; 887 public static final String RULE_DELEGATE_LIMIT = "DELEGATE_LIMIT"; 888 public static final String EMAIL_REMINDER_FROM_ADDRESS = "FROM_ADDRESS"; 889 public static final String MAX_NODES_BEFORE_RUNAWAY_PROCESS = "MAXIMUM_NODES_BEFORE_RUNAWAY"; 890 public static final String NOTIFICATION_EXCLUDED_USERS_WORKGROUP_NAME_IND = "NOTIFY_GROUPS"; 891 public static final String DOC_SEARCH_FETCH_MORE_ITERATION_LIMIT = "FETCH_MORE_ITERATION_LIMIT"; 892 public static final String DOCUMENT_SEARCH_DOCUMENT_POPUP_IND = "DOCUMENT_SEARCH_POPUP_IND"; 893 public static final String DOCUMENT_SEARCH_ROUTE_LOG_POPUP_IND = "DOCUMENT_SEARCH_ROUTE_LOG_POPUP_IND"; 894 public static final String DOC_SEARCH_RESULT_CAP = "RESULT_CAP"; 895 public static final String EDL_DEBUG_TRANSFORM_IND = "DEBUG_TRANSFORM_IND"; 896 public static final String EDL_USE_XSLTC_IND = "USE_XSLTC_IND"; 897 public static final String IS_LAST_APPROVER_ACTIVATE_FIRST_IND = "IS_LAST_APPROVER_ACTIVATE_FIRST_IND"; 898 public static final String HELP_DESK_ACTION_LIST = "HELP_DESK_NAME_GROUP"; 899 public static final String QUICK_LINKS_RESTRICT_DOCUMENT_TYPES = "RESTRICT_DOCUMENT_TYPES"; 900 public static final String RULE_CUSTOM_DOC_TYPES = "CUSTOM_DOCUMENT_TYPES"; 901 public static final String RULE_GENERATE_ACTION_REQESTS_IND = "GENERATE_ACTION_REQUESTS_IND"; 902 public static final String SHOW_ATTACHMENTS_IND = "SHOW_ATTACHMENTS_IND"; 903 public static final String RULE_CACHE_REQUEUE_DELAY = "RULE_CACHE_REQUEUE_DELAY"; 904 public static final String ACTIONLIST_EMAIL_TEST_ADDRESS = "EMAIL_NOTIFICATION_TEST_ADDRESS"; 905 public static final String SECURE_ATTACHMENTS_PARAM = "SECURED_ATTACHMENT_SERVLET"; 906 907 //System parameter value comparisons 908 public static final String ACTION_LIST_SEND_EMAIL_NOTIFICATION_VALUE = "Y"; 909 public static final String YES_RULE_CHANGE_AR_GENERATION_VALUE = "Y"; 910 public static final String YES_DELEGATE_CHANGE_AR_GENERATION_VALUE = "Y"; 911 public static final String DOCUMENT_SEARCH_ROUTE_LOG_POPUP_VALUE = "Y"; 912 public static final String DOCUMENT_SEARCH_DOCUMENT_POPUP_VALUE = "Y"; 913 914 public static final class PermissionNames { 915 public static final String VIEW_OTHER_ACTION_LIST = "View Other Action List"; 916 public static final String UNRESTRICTED_DOCUMENT_SEARCH = "Unrestricted Document Search"; 917 918 private PermissionNames() { 919 throw new UnsupportedOperationException("do not call"); 920 } 921 } 922 923 // special user used when no other user is available 924 public static final String SYSTEM_USER = "kr"; 925 public static final String ENABLE_KEN_NOTIFICATION = "rice.kew.enableKENNotification"; 926 927 public static final String ROLEROUTE_QUALIFIER_RESOLVER_ELEMENT = "qualifierResolver"; 928 public static final String ROLEROUTE_QUALIFIER_RESOLVER_CLASS_ELEMENT = "qualifierResolverClass"; 929 public static final String ROLEROUTE_RESPONSIBILITY_TEMPLATE_NAME_ELEMENT = "responsibilityTemplateName"; 930 public static final String ROLEROUTE_NAMESPACE_ELEMENT = "namespace"; 931 932 public static final String ACTION_LIST_FILTER_ATTR_NAME = "ActionListFilter"; 933 public static final String UPDATE_ACTION_LIST_ATTR_NAME = "updateActionList"; 934 public static final String SORT_ORDER_ATTR_NAME = "sortOrder"; 935 public static final String SORT_CRITERIA_ATTR_NAME = "sortCriteria"; 936 public static final String CURRENT_PAGE_ATTR_NAME = "currentPage"; 937 938 public static final String HELP_DESK_ACTION_LIST_PRINCIPAL_ATTR_NAME = "helpDeskActionListPrincipal"; 939 public static final String HELP_DESK_ACTION_LIST_PERSON_ATTR_NAME = "helpDeskActionListPerson"; 940 public static final String PREFERENCES = "Preferences"; 941 public static final String WORKFLOW_DOCUMENT_MAP_ATTR_NAME = "workflowDocumentMap"; 942 943 public static final String USER_OPTIONS_DEFAULT_USE_OUTBOX_PARAM = "userOptions.default.useOutBox"; 944 945 946 public static final class SearchableAttributeConstants { 947 public static final String SEARCH_WILDCARD_CHARACTER = "*"; 948 public static final String SEARCH_WILDCARD_CHARACTER_REGEX_ESCAPED = "\\" + SEARCH_WILDCARD_CHARACTER; 949 public static final String DATA_TYPE_STRING = CoreConstants.DATA_TYPE_STRING; 950 public static final String DATA_TYPE_DATE = CoreConstants.DATA_TYPE_DATE; 951 public static final String DATA_TYPE_LONG = CoreConstants.DATA_TYPE_LONG; 952 public static final String DATA_TYPE_FLOAT = CoreConstants.DATA_TYPE_FLOAT; 953 public static final String DEFAULT_SEARCHABLE_ATTRIBUTE_TYPE_NAME = DATA_TYPE_STRING; 954 public static final String DEFAULT_RANGE_SEARCH_LOWER_BOUND_LABEL = "From"; 955 public static final String DEFAULT_RANGE_SEARCH_UPPER_BOUND_LABEL = "To"; 956 public static final String RANGE_LOWER_BOUND_PROPERTY_PREFIX = "rangeLowerBoundKeyPrefix_"; 957 public static final String RANGE_UPPER_BOUND_PROPERTY_PREFIX = "rangeUpperBoundKeyPrefix_"; 958 959 private SearchableAttributeConstants() {} 960 961 962 } 963 964 /** 965 * Defines the prefix to add to document attribute field names on the document search screens. 966 */ 967 public static final String DOCUMENT_ATTRIBUTE_FIELD_PREFIX = "documentAttribute."; 968 969 public static final class WorkflowProcessDirectives { 970 public static final String RUN_POST_PROCESSOR_LOGIC = "directive.run.post.processor.logic"; 971 } 972 973 public static final class GroupMembershipChangeOperations { 974 public static final String ADDED = "ADDED"; 975 public static final String REMOVED = "REMOVED"; 976 } 977 978 public static final String DOCUMENT_CONTENT_ELEMENT = "documentContent"; 979 public static final String ATTRIBUTE_CONTENT_ELEMENT = "attributeContent"; 980 public static final String SEARCHABLE_CONTENT_ELEMENT = "searchableContent"; 981 public static final String APPLICATION_CONTENT_ELEMENT = "applicationContent"; 982 public static final String DEFAULT_DOCUMENT_CONTENT = "<" + DOCUMENT_CONTENT_ELEMENT + "/>"; 983 public static final String DEFAULT_DOCUMENT_CONTENT2 = "<" + DOCUMENT_CONTENT_ELEMENT + "></" 984 + DOCUMENT_CONTENT_ELEMENT + ">"; 985 986 public static final String ATTRIBUTE_XML_CONFIG_DATA = "xmlConfigData"; 987 988 public static final class DocumentContentVersions { 989 public static final int ROUTE_LEVEL = 0; 990 public static final int NODAL = 1; 991 public static final int CURRENT = NODAL; 992 } 993 994 public final static String SERVICE_PATH_SOAP = "soap/" + Namespaces.MODULE_NAME + "/" + CoreConstants.Versions.VERSION_2_0; 995 996 public static final class Namespaces { 997 public static final String MODULE_NAME = "kew"; 998 public static final String KEW_NAMESPACE_PREFIX = CoreConstants.Namespaces.ROOT_NAMESPACE_PREFIX + "/" + MODULE_NAME; 999 1000 /** 1001 * Namespace for the kew module which is compatible with Kuali Rice 2.0.x. 1002 */ 1003 public static final String KEW_NAMESPACE_2_0 = KEW_NAMESPACE_PREFIX + "/" + Versions.VERSION_2_0; 1004 1005 } 1006 1007 public static final class ServiceNames { 1008 public static final String WORKFLOW_DOCUMENT_ACTIONS_SERVICE_SOAP = "workflowDocumentActionsService"; 1009 } 1010 1011 private KewApiConstants() { 1012 throw new UnsupportedOperationException("Should never be called."); 1013 } 1014 1015 public static final String ACTION_TAKEN_APPROVED_CD = "A"; 1016 public static final String ACTION_TAKEN_COMPLETED_CD = "C"; 1017 public static final String ACTION_TAKEN_ACKNOWLEDGED_CD = "K"; 1018 public static final String ACTION_TAKEN_FYI_CD = "F"; 1019 public static final String ACTION_TAKEN_DENIED_CD = "D"; 1020 public static final String ACTION_TAKEN_CANCELED_CD = "X"; 1021 public static final String ACTION_TAKEN_ROUTED_CD = "O"; 1022 1023 1024 }