001: /*--
002:
003: Copyright (C) 2002 Anthony Eden.
004: All rights reserved.
005:
006: Redistribution and use in source and binary forms, with or without
007: modification, are permitted provided that the following conditions
008: are met:
009:
010: 1. Redistributions of source code must retain the above copyright
011: notice, this list of conditions, and the following disclaimer.
012:
013: 2. Redistributions in binary form must reproduce the above copyright
014: notice, this list of conditions, and the disclaimer that follows
015: these conditions in the documentation and/or other materials
016: provided with the distribution.
017:
018: 3. The names "OBE" and "Open Business Engine" must not be used to
019: endorse or promote products derived from this software without prior
020: written permission. For written permission, please contact
021: me@anthonyeden.com.
022:
023: 4. Products derived from this software may not be called "OBE" or
024: "Open Business Engine", nor may "OBE" or "Open Business Engine"
025: appear in their name, without prior written permission from
026: Anthony Eden (me@anthonyeden.com).
027:
028: In addition, I request (but do not require) that you include in the
029: end-user documentation provided with the redistribution and/or in the
030: software itself an acknowledgement equivalent to the following:
031: "This product includes software developed by
032: Anthony Eden (http://www.anthonyeden.com/)."
033:
034: THIS SOFTWARE IS PROVIdED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
035: WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
036: OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
037: DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT,
038: INDIRECT, INCIdENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
039: (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
040: SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
041: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
042: STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
043: IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
044: POSSIBILITY OF SUCH DAMAGE.
045:
046: For more information on OBE, please see <http://obe.sourceforge.net/>.
047:
048: */
049:
050: package org.wfmc.audit;
051:
052: import java.util.Date;
053:
054: /**
055: * @author Antony Lodge
056: */
057: public abstract class WMASourceWorkflowOperation extends
058: WMARemoteAuditBase {
059: private static final long serialVersionUID = 8323948523064141874L;
060:
061: private String sourceActivityInstanceId;
062: private String remoteNodeId;
063: private String remoteProcessInstanceId;
064: private Date remoteTimestamp;
065: private String remoteProcessDefinitionBusinessName;
066:
067: protected WMASourceWorkflowOperation() {
068: }
069:
070: /**
071: * @param cwadPrefix
072: * @param messageId
073: * @param extensionNumber
074: * @param extensionType
075: * @param sourceConversationId
076: * @param targetConversationId
077: */
078: protected WMASourceWorkflowOperation(CWADPrefix cwadPrefix,
079: String messageId, short extensionNumber,
080: String extensionType, String sourceConversationId,
081: String targetConversationId) {
082:
083: super (cwadPrefix, messageId, extensionNumber, extensionType,
084: sourceConversationId, targetConversationId);
085: }
086:
087: /**
088: * @param cwadPrefix
089: * @param messageId
090: * @param extensionNumber
091: * @param extensionType
092: * @param sourceConversationId
093: * @param targetConversationId
094: * @param sourceActivityInstanceId
095: * @param remoteNodeId
096: * @param remoteProcessInstanceId
097: * @param remoteTimestamp
098: * @param remoteProcessDefinitionBusinessName
099: *
100: */
101: protected WMASourceWorkflowOperation(CWADPrefix cwadPrefix,
102: String messageId, short extensionNumber,
103: String extensionType, String sourceConversationId,
104: String targetConversationId,
105: String sourceActivityInstanceId, String remoteNodeId,
106: String remoteProcessInstanceId, Date remoteTimestamp,
107: String remoteProcessDefinitionBusinessName) {
108:
109: super (cwadPrefix, messageId, extensionNumber, extensionType,
110: sourceConversationId, targetConversationId);
111:
112: this .sourceActivityInstanceId = sourceActivityInstanceId;
113: this .remoteNodeId = remoteNodeId;
114: this .remoteProcessInstanceId = remoteProcessInstanceId;
115: this .remoteTimestamp = remoteTimestamp;
116: this .remoteProcessDefinitionBusinessName = remoteProcessDefinitionBusinessName;
117: }
118:
119: /**
120: * @return Activity Id on source Workflow Engine
121: */
122: public String getSourceActivityInstanceId() {
123: return sourceActivityInstanceId;
124: }
125:
126: /**
127: * @param sourceActivityInstanceId Activity Id on source Workflow Engine
128: */
129: public void setSourceActivityInstanceId(
130: String sourceActivityInstanceId) {
131:
132: this .sourceActivityInstanceId = sourceActivityInstanceId;
133: }
134:
135: /**
136: * @return Node Id of target Workflow Engine
137: */
138: public String getRemoteNodeId() {
139: return remoteNodeId;
140: }
141:
142: /**
143: * @param remoteNodeId Node Id of target Workflow Engine
144: */
145: public void setRemoteNodeId(String remoteNodeId) {
146: this .remoteNodeId = remoteNodeId;
147: }
148:
149: /**
150: * @return process instance created on the target Workflow Engine
151: */
152: public String getRemoteProcessInstanceId() {
153: return remoteProcessInstanceId;
154: }
155:
156: /**
157: * @param remoteProcessInstanceId process instance created on the target
158: * Workflow Engine
159: */
160: public void setRemoteProcessInstanceId(
161: String remoteProcessInstanceId) {
162:
163: this .remoteProcessInstanceId = remoteProcessInstanceId;
164: }
165:
166: /**
167: * @return Timestamp for when process instance created on target Workflow
168: * Engine
169: */
170: public Date getRemoteTimestamp() {
171: return remoteTimestamp;
172: }
173:
174: /**
175: * @param remoteTimestamp Timestamp for when process instance created on
176: * target Workflow Engine
177: */
178: public void setRemoteTimestamp(Date remoteTimestamp) {
179: this .remoteTimestamp = remoteTimestamp;
180: }
181:
182: /**
183: * @return null | as supplied by target Workflow Engine
184: */
185: public String getRemoteProcessDefinitionBusinessName() {
186: return remoteProcessDefinitionBusinessName;
187: }
188:
189: /**
190: * @param remoteProcessDefinitionBusinessName
191: * null | as supplied by target
192: * Workflow Engine
193: */
194: public void setRemoteProcessDefinitionBusinessName(
195: String remoteProcessDefinitionBusinessName) {
196: this .remoteProcessDefinitionBusinessName = remoteProcessDefinitionBusinessName;
197: }
198:
199: public String toString() {
200: return "WMASourceWorkflowOperation@"
201: + System.identityHashCode(this ) + '[' + " cwadPrefix="
202: + formatCwadPrefix() + ", messageId=" + getMessageId()
203: + ", sourceActivityInstanceId="
204: + sourceActivityInstanceId + ", remoteNodeId="
205: + remoteNodeId + ", remoteProcessInstanceId="
206: + remoteProcessInstanceId + ", remoteTimestamp="
207: + remoteTimestamp
208: + ", remoteProcessDefinitionBusinessName='"
209: + remoteProcessDefinitionBusinessName + '\''
210: + ", extensionNumber=" + getExtensionNumber()
211: + ", extensionType='" + getExtensionType() + '\''
212: + ", sourceConversationId='"
213: + getSourceConversationId() + '\''
214: + ", targetConversationId='"
215: + getTargetConversationId() + '\'' + ']';
216: }
217: }
|