001 /**
002 * Copyright 2005-2013 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.krad.bo;
017
018 import org.apache.commons.lang.StringUtils;
019 import org.kuali.rice.kew.api.KewApiConstants;
020 import org.kuali.rice.kew.api.util.CodeTranslator;
021
022 import javax.persistence.Column;
023 import javax.persistence.Id;
024 import javax.persistence.MappedSuperclass;
025 import javax.persistence.Transient;
026 import java.util.Map;
027
028
029 /**
030 * TODO we should not be referencing kew constants from this class and wedding ourselves to that workflow application Ad Hoc Route
031 * Recipient Business Object
032 *
033 * @author Kuali Rice Team (rice.collab@kuali.org)
034 */
035 @MappedSuperclass
036 public class AdHocRouteRecipient extends PersistableBusinessObjectBase {
037 private static final long serialVersionUID = -6499610180752232494L;
038
039 private static Map actionRequestCds;
040 public static final Integer PERSON_TYPE = new Integer(0);
041 public static final Integer WORKGROUP_TYPE = new Integer(1);
042
043 @Id
044 @Column(name="RECIP_TYP_CD")
045 protected Integer type;
046
047 @Id
048 @Column(name="ACTN_RQST_CD")
049 protected String actionRequested;
050
051 @Id
052 @Column(name="ACTN_RQST_RECIP_ID")
053 protected String id; // can be networkId or group id
054
055 @Transient
056 protected String name;
057
058 @Column(name="DOC_HDR_ID")
059 protected String documentNumber;
060
061 public AdHocRouteRecipient() {
062 // set some defaults that can be overridden
063 this.actionRequested = KewApiConstants.ACTION_REQUEST_APPROVE_REQ;
064 this.versionNumber = new Long(1);
065 }
066
067 public String getActionRequested() {
068 return actionRequested;
069 }
070
071 public void setActionRequested(String actionRequested) {
072 this.actionRequested = actionRequested;
073 }
074
075 public String getId() {
076 return id;
077 }
078
079 public void setId(String id) {
080 this.id = id;
081 }
082
083 public String getName() {
084 return name;
085 }
086
087 public void setName(String name) {
088 this.name = name;
089 }
090
091 public Integer getType() {
092 return type;
093 }
094
095 public void setType(Integer type) {
096 this.type = type;
097 }
098
099 public void setdocumentNumber (String documentNumber){
100 this.documentNumber = documentNumber;
101 }
102
103 public String getdocumentNumber (){
104 return documentNumber;
105 }
106
107 public String getActionRequestedValue() {
108 String actionRequestedValue = null;
109 if (StringUtils.isNotBlank(getActionRequested())) {
110 actionRequestCds.clear();
111 actionRequestCds.putAll(CodeTranslator.arLabels);
112 actionRequestedValue = (String) actionRequestCds.get(getActionRequested());
113 }
114
115 return actionRequestedValue;
116 }
117 }