01: /*
02: * This file is part of the WfMOpen project.
03: * Copyright (C) 2001-2003 Danet GmbH (www.danet.de), GS-AN.
04: * All rights reserved.
05: *
06: * This program is free software; you can redistribute it and/or modify
07: * it under the terms of the GNU General Public License as published by
08: * the Free Software Foundation; either version 2 of the License, or
09: * (at your option) any later version.
10: *
11: * This program is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14: * GNU General Public License for more details.
15: *
16: * You should have received a copy of the GNU General Public License
17: * along with this program; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19: *
20: * $Id: ExtImplementationLocal.java,v 1.1 2007/05/03 21:58:21 mlipp Exp $
21: *
22: * $Log: ExtImplementationLocal.java,v $
23: * Revision 1.1 2007/05/03 21:58:21 mlipp
24: * Internal refactoring for making better use of local EJBs.
25: *
26: */
27: package de.danet.an.workflow.internalapi;
28:
29: import java.util.Map;
30:
31: import de.danet.an.workflow.api.Activity.Implementation;
32: import de.danet.an.workflow.localapi.ActivityLocal;
33: import de.danet.an.workflow.omgcore.InvalidDataException;
34:
35: /**
36: * This interface extends the base interface with some methods that
37: * all implementations of <code>Activity.Implementation</code> in this
38: * package provide.
39: *
40: * @author <a href="mailto:lipp@danet.de"></a>
41: * @version $Revision: 1.1 $
42: */
43:
44: public interface ExtImplementationLocal extends Implementation {
45:
46: /**
47: * Run the implementation.
48: * @param act the activity to perform
49: */
50: void invoke(ExtActivityLocal act);
51:
52: /**
53: * Merge the result returned by an implementation into the process
54: * data. The names of the result data items must be formal parameter
55: * names which are mapped to process data items as defined by the
56: * actual parameters.
57: *
58: * @param act the activity related with the implementation invocation.
59: * @param result the result data.
60: * @throws InvalidDataException if the entries in the result do not
61: * match formal parameter names or excessive entries exist.
62: */
63: void mergeResult(ActivityLocal act, Map result)
64: throws InvalidDataException;
65: }
|