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: /**
053: * Section 8 of the WfMC Interface 5 standard. This is simply a base class
054: * that other classes extend.
055: *
056: * @author Antony Lodge
057: */
058: public abstract class WMASourceWorkflow extends WMARemoteAuditBase {
059: private static final long serialVersionUID = 6083932758362287160L;
060:
061: private String sourceActivityDefinitionBusinessName;
062: private String targetProcessInstanceId;
063: private String targetProcessDefinitionBusinessName;
064: private String targetNodeId;
065: private String targetUserId;
066: private String targetRoleId;
067:
068: protected WMASourceWorkflow() {
069: }
070:
071: /**
072: * @param cwadPrefix
073: * @param messageId
074: * @param extensionNumber
075: * @param extensionType
076: * @param sourceConversationId
077: * @param targetConversationId
078: * @param sourceActivityDefinitionBusinessName
079: *
080: * @param targetProcessInstanceId
081: * @param targetProcessDefinitionBusinessName
082: *
083: * @param targetNodeId
084: * @param targetUserId
085: * @param targetRoleId
086: */
087: protected WMASourceWorkflow(CWADPrefix cwadPrefix,
088: String messageId, short extensionNumber,
089: String extensionType, String sourceConversationId,
090: String targetConversationId,
091: String sourceActivityDefinitionBusinessName,
092: String targetProcessInstanceId,
093: String targetProcessDefinitionBusinessName,
094: String targetNodeId, String targetUserId,
095: String targetRoleId) {
096:
097: super (cwadPrefix, messageId, extensionNumber, extensionType,
098: sourceConversationId, targetConversationId);
099:
100: this .sourceActivityDefinitionBusinessName = sourceActivityDefinitionBusinessName;
101: this .targetProcessInstanceId = targetProcessInstanceId;
102: this .targetProcessDefinitionBusinessName = targetProcessDefinitionBusinessName;
103: this .targetNodeId = targetNodeId;
104: this .targetUserId = targetUserId;
105: this .targetRoleId = targetRoleId;
106: }
107:
108: /**
109: * @return WMAObjectName Business name of current activity on the source
110: * engine originating the request to create a new process instance
111: */
112: public String getSourceActivityDefinitionBusinessName() {
113: return sourceActivityDefinitionBusinessName;
114: }
115:
116: /**
117: * @param sourceActivityDefinitionBusinessName
118: * WMAObjectName Business name
119: * of current activity on the source engine originating the request
120: * to create a new process instance
121: */
122: public void setSourceActivityDefinitionBusinessName(
123: String sourceActivityDefinitionBusinessName) {
124:
125: this .sourceActivityDefinitionBusinessName = sourceActivityDefinitionBusinessName;
126: }
127:
128: /**
129: * @return process instance created on the target Workflow Engine
130: */
131: public String getTargetProcessInstanceId() {
132: return targetProcessInstanceId;
133: }
134:
135: /**
136: * @param targetProcessInstanceId process instance created on the target
137: * Workflow Engine
138: */
139: public void setTargetProcessInstanceId(
140: String targetProcessInstanceId) {
141: this .targetProcessInstanceId = targetProcessInstanceId;
142: }
143:
144: /**
145: * @return null | as supplied by target Workflow Engine
146: */
147: public String getTargetProcessDefinitionBusinessName() {
148: return targetProcessDefinitionBusinessName;
149: }
150:
151: /**
152: * @param targetProcessDefinitionBusinessName
153: * null | as supplied by target
154: * Workflow Engine
155: */
156: public void setTargetProcessDefinitionBusinessName(
157: String targetProcessDefinitionBusinessName) {
158:
159: this .targetProcessDefinitionBusinessName = targetProcessDefinitionBusinessName;
160: }
161:
162: /**
163: * @return Node Id of Workflow Engine accepting the conversation
164: */
165: public String getTargetNodeId() {
166: return targetNodeId;
167: }
168:
169: /**
170: * @param targetNodeId Node Id of Workflow Engine accepting the conversation
171: */
172: public void setTargetNodeId(String targetNodeId) {
173: this .targetNodeId = targetNodeId;
174: }
175:
176: /**
177: * @return null | Id of remote user requested // O perform the process
178: */
179: public String getTargetUserId() {
180: return targetUserId;
181: }
182:
183: /**
184: * @param targetUserId null | Id of remote user requested // O perform the
185: * process
186: */
187: public void setTargetUserId(String targetUserId) {
188: this .targetUserId = targetUserId;
189: }
190:
191: /**
192: * @return null | IS of remote role requested to perform the process
193: */
194: public String getTargetRoleId() {
195: return targetRoleId;
196: }
197:
198: /**
199: * @param targetRoleId null | IS of remote role requested to perform the
200: * process
201: */
202: public void setTargetRoleId(String targetRoleId) {
203: this .targetRoleId = targetRoleId;
204: }
205:
206: public String toString() {
207: return "WMASourceWorkflow@" + System.identityHashCode(this )
208: + '[' + " cwadPrefix=" + formatCwadPrefix()
209: + ", messageId=" + getMessageId()
210: + ", sourceActivityDefinitionBusinessName='"
211: + sourceActivityDefinitionBusinessName + '\''
212: + ", targetProcessInstanceId="
213: + targetProcessInstanceId
214: + ", targetProcessDefinitionBusinessName='"
215: + targetProcessDefinitionBusinessName + '\''
216: + ", targetNodeId=" + targetNodeId + ", targetUserId="
217: + targetUserId + ", targetRoleId=" + targetRoleId
218: + ", extensionNumber=" + getExtensionNumber()
219: + ", extensionType='" + getExtensionType() + '\''
220: + ", sourceConversationId='"
221: + getSourceConversationId() + '\''
222: + ", targetConversationId='"
223: + getTargetConversationId() + '\'' + ']';
224: }
225: }
|