001 /** 002 * Copyright 2005-2012 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.ksb.messaging.bam; 017 018 import org.hibernate.annotations.GenericGenerator; 019 import org.hibernate.annotations.Parameter; 020 import org.kuali.rice.ksb.api.messaging.AsynchronousCallback; 021 022 import javax.persistence.Basic; 023 import javax.persistence.CascadeType; 024 import javax.persistence.Column; 025 import javax.persistence.Entity; 026 import javax.persistence.FetchType; 027 import javax.persistence.GeneratedValue; 028 import javax.persistence.Id; 029 import javax.persistence.Lob; 030 import javax.persistence.OneToMany; 031 import javax.persistence.Table; 032 import javax.persistence.Transient; 033 import java.io.Serializable; 034 import java.sql.Timestamp; 035 import java.util.ArrayList; 036 import java.util.List; 037 038 039 /** 040 * An entry in the BAM representing a service method invocation. 041 * 042 * @author Kuali Rice Team (rice.collab@kuali.org) 043 */ 044 @Entity 045 @Table(name="KRSB_BAM_T") 046 //@Sequence(name="KRSB_BAM_S", property="bamId") 047 public class BAMTargetEntry implements Serializable { 048 049 private static final long serialVersionUID = -8376674801367598316L; 050 051 @Id 052 @GeneratedValue(generator="KRSB_BAM_S") 053 @GenericGenerator(name="KRSB_BAM_S",strategy="org.hibernate.id.enhanced.SequenceStyleGenerator",parameters={ 054 @Parameter(name="sequence_name",value="KRSB_BAM_S"), 055 @Parameter(name="value_column",value="id") 056 }) 057 @Column(name="BAM_ID") 058 private Long bamId; 059 @Column(name="SVC_NM") 060 private String serviceName; 061 @Column(name="MTHD_NM") 062 private String methodName; 063 @Column(name="THRD_NM") 064 private String threadName; 065 @Column(name="CALL_DT") 066 private Timestamp callDate; 067 @Column(name="SVC_URL") 068 private String serviceURL; 069 @Column(name="TGT_TO_STR") 070 private String targetToString; 071 @Column(name="EXCPN_TO_STR") 072 private String exceptionToString; 073 @Lob 074 @Basic(fetch=FetchType.LAZY) 075 @Column(name="EXCPN_MSG", length=4000) 076 private String exceptionMessage; 077 @Column(name="SRVR_IND") 078 private Boolean serverInvocation; 079 @OneToMany(cascade=CascadeType.ALL, mappedBy="bamParamId") 080 private List<BAMParam> bamParams = new ArrayList<BAMParam>(); 081 082 //for async calls not bam 083 @Transient 084 private AsynchronousCallback callback; 085 086 public void addBamParam(BAMParam bamParam) { 087 this.bamParams.add(bamParam); 088 } 089 public String getExceptionToString() { 090 return this.exceptionToString; 091 } 092 public void setExceptionToString(String exceptionToString) { 093 this.exceptionToString = exceptionToString; 094 } 095 public String getServiceName() { 096 return this.serviceName; 097 } 098 public void setServiceName(String serviceName) { 099 this.serviceName = serviceName; 100 } 101 public String getServiceURL() { 102 return this.serviceURL; 103 } 104 public void setServiceURL(String serviceURL) { 105 this.serviceURL = serviceURL; 106 } 107 public String getTargetToString() { 108 return this.targetToString; 109 } 110 public void setTargetToString(String targetToString) { 111 this.targetToString = targetToString; 112 } 113 public Long getBamId() { 114 return this.bamId; 115 } 116 public void setBamId(Long bamId) { 117 this.bamId = bamId; 118 } 119 public String getExceptionMessage() { 120 return this.exceptionMessage; 121 } 122 public void setExceptionMessage(String exceptionMessage) { 123 this.exceptionMessage = exceptionMessage; 124 } 125 public Boolean getServerInvocation() { 126 return this.serverInvocation; 127 } 128 public void setServerInvocation(Boolean clientInvocation) { 129 this.serverInvocation = clientInvocation; 130 } 131 public Timestamp getCallDate() { 132 return this.callDate; 133 } 134 public void setCallDate(Timestamp callDate) { 135 this.callDate = callDate; 136 } 137 public String getMethodName() { 138 return this.methodName; 139 } 140 public void setMethodName(String methodName) { 141 this.methodName = methodName; 142 } 143 public String getThreadName() { 144 return this.threadName; 145 } 146 public void setThreadName(String threadName) { 147 this.threadName = threadName; 148 } 149 public List<BAMParam> getBamParams() { 150 return this.bamParams; 151 } 152 public void setBamParams(List<BAMParam> bamParams) { 153 this.bamParams = bamParams; 154 } 155 public AsynchronousCallback getCallback() { 156 return this.callback; 157 } 158 public void setCallback(AsynchronousCallback callback) { 159 this.callback = callback; 160 } 161 } 162