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: XMLArgumentTypeProvider.java,v 1.2 2006/09/29 12:32:10 drmlipp Exp $
21: *
22: * $Log: XMLArgumentTypeProvider.java,v $
23: * Revision 1.2 2006/09/29 12:32:10 drmlipp
24: * Consistently using WfMOpen as projct name now.
25: *
26: * Revision 1.1.1.2 2003/12/19 13:01:26 drmlipp
27: * Updated to 1.1rc1
28: *
29: * Revision 1.3 2003/10/13 09:13:19 lipp
30: * Added details to documentation.
31: *
32: * Revision 1.2 2003/06/27 08:51:44 lipp
33: * Fixed copyright/license information.
34: *
35: * Revision 1.1 2003/06/17 15:47:26 lipp
36: * Prepared XML argument type control be tool implementation.
37: *
38: */
39: package de.danet.an.workflow.spis.aii;
40:
41: /**
42: * This interface can be implemented by {@link ToolAgent
43: * <code>ToolAgent</code>s} that provide information about the
44: * accepted coding of arguments that describe XML data.<P>
45: *
46: * Note that if a tool agent implements this interface, the type
47: * returned by <code>requestedXMLArgumentType</code> overrides any
48: * settings in XPDL.
49: *
50: * @author <a href="mailto:lipp@danet.de">Michael Lipp</a>
51: * @version $Revision: 1.2 $
52: */
53: public interface XMLArgumentTypeProvider {
54:
55: /**
56: * Pass parameters as W3C DOM when tool is invoked. The parameter
57: * is passed in as <code>org.w3c.dom.DocumentFragement</code>,
58: * containing one or more elements, to support single-rooted XML
59: * structures as well as non-single rooted structures.
60: */
61: public static final int XML_AS_W3C_DOM = 1;
62:
63: /**
64: * Pass parameters as JDOM when tool is invoked. The parameter is
65: * passed in as <code>java.util.List</code>, containing one or
66: * more elements, to support single-rooted XML structures as well
67: * as non-single rooted structures.
68: */
69: public static final int XML_AS_JDOM = 2;
70:
71: /** Pass parameters as {@link
72: * de.danet.an.workflow.api.SAXEventBuffer
73: * <code>SAXEventBuffer</code>} when tool is invoked. */
74: public static final int XML_AS_SAX = 3;
75:
76: /**
77: * Return the requested type for XML arguments.
78: * @return one of <code>XML_AS_W3C_DOM</code>,
79: * <code>XML_AS_JDOM</code> or <code>XML_AS_SAX</code>
80: */
81: int requestedXMLArgumentType();
82: }
|