com.ibm.task.api
Class ClientTaskFactory

java.lang.Object
  extended by com.ibm.task.api.ClientTaskFactory

public abstract class ClientTaskFactory
extends java.lang.Object

Factory to create a ClientTaskFactory object.

Since:
6.0.1

Field Summary
static java.lang.String COPYRIGHT
           
 
Constructor Summary
ClientTaskFactory()
           
 
Method Summary
abstract  javax.wsdl.Operation createOperation(javax.wsdl.Definition definition, javax.wsdl.PortType portType, java.lang.String name, javax.xml.namespace.QName inputType, javax.xml.namespace.QName outputType, java.util.Map faultTypes)
          Creates an operation with the specified name for the specified port type and WSDL definition.
abstract  javax.wsdl.PortType createPortType(javax.wsdl.Definition definition, java.lang.String name)
          Creates a port type with the specified name in the specified WSDL definition.
abstract  org.eclipse.emf.ecore.resource.ResourceSet createResourceSet()
          Creates a resource set.
abstract  org.eclipse.emf.ecore.resource.ResourceSet createResourceSet(java.lang.ClassLoader cl)
          Creates a resource set that uses the specified class loader to locate resources.
static TaskModel createTaskModel(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
          Creates a task model.
abstract  TTask createTTask(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, TTaskKinds taskKind, java.lang.String taskName, com.ibm.bpe.api.UTCDate validFrom, java.lang.String targetNamespace, javax.wsdl.PortType portType, javax.wsdl.Operation operation)
          Creates a collaboration or to-do task with the specified name in the specified resource set.
abstract  javax.wsdl.Definition createWSDLDefinition(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, javax.xml.namespace.QName name)
          Creates a WSDL definition with the specified name in the specified resource set.
abstract  TaskFactory getTaskFactory()
          Returns the TaskFactory so that TTask objects can be modified.
abstract  org.eclipse.wst.wsdl.WSDLFactory getWSDLFactory()
          Returns the WSDLFactory so that WSDL objects can be created.
abstract  org.eclipse.xsd.XSDFactory getXSDFactory()
          Returns the XSDFactory so that XSD objects can be created.
abstract  javax.wsdl.Definition loadWSDLDefinition(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, java.lang.String wsdlLocation)
          Retrieves the specified WSDL definition and puts it into the specified resource set.
abstract  org.eclipse.xsd.XSDSchema loadXSDSchema(org.eclipse.emf.ecore.resource.ResourceSet resourceSet, java.lang.String xsdLocation)
          Retrieves the XSD schema of the specified complex message type and puts it into the specified resource set.
static ClientTaskFactory newInstance()
          Returns the single instance of a ClientTaskFactory.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COPYRIGHT

public static final java.lang.String COPYRIGHT
See Also:
Constant Field Values
Constructor Detail

ClientTaskFactory

public ClientTaskFactory()
Method Detail

newInstance

public static ClientTaskFactory newInstance()
Returns the single instance of a ClientTaskFactory.

Returns:
ClientTaskFactory - The ClientTaskFactory object.

createTaskModel

public static TaskModel createTaskModel(org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
Creates a task model. The task model wraps all information contained in the specified resource set so that the new task definition can be passed to the Human Task Manager.

Parameters:
resourceSet - The resource set that contains the information to be wrapped by the task model.
Returns:
TaskModel - The task model created.

getTaskFactory

public abstract TaskFactory getTaskFactory()
Returns the TaskFactory so that TTask objects can be modified.

Returns:
TaskFactory - A TaskFactory to modify task objects.

getXSDFactory

public abstract org.eclipse.xsd.XSDFactory getXSDFactory()
Returns the XSDFactory so that XSD objects can be created.

Returns:
XSDFactory - An XSDFactory to create XSD objects.

getWSDLFactory

public abstract org.eclipse.wst.wsdl.WSDLFactory getWSDLFactory()
Returns the WSDLFactory so that WSDL objects can be created.

Returns:
WSDLFactory - A WSDLFactory to create WSDL objects.

createResourceSet

public abstract org.eclipse.emf.ecore.resource.ResourceSet createResourceSet()
Creates a resource set.

Returns:
ResourceSet- The resource set created.

createResourceSet

public abstract org.eclipse.emf.ecore.resource.ResourceSet createResourceSet(java.lang.ClassLoader cl)
Creates a resource set that uses the specified class loader to locate resources.

Parameters:
cl - A ClassLoader to resolve resources references.
Returns:
ResourceSet - The resource set created.

loadXSDSchema

public abstract org.eclipse.xsd.XSDSchema loadXSDSchema(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                        java.lang.String xsdLocation)
                                                 throws ParameterNullException,
                                                        java.io.IOException
Retrieves the XSD schema of the specified complex message type and puts it into the specified resource set.

Parameters:
resourceSet - The resource set that is to contain the XSD schema.
xsdLocation - The location of the XSD schema, for example, "Address.xsd".
Returns:
XSDSchema - The XSD schema.
Throws:
ParameterNullException
java.io.IOException

loadWSDLDefinition

public abstract javax.wsdl.Definition loadWSDLDefinition(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                         java.lang.String wsdlLocation)
                                                  throws ParameterNullException,
                                                         java.io.IOException
Retrieves the specified WSDL definition and puts it into the specified resource set.

Parameters:
resourceSet - The resource set that is to contain the WSDL definition.
wsdlLocation - The location of the WSDL definition.
Returns:
Definition - The WSDL definition.
Throws:
ParameterNullException
java.io.IOException

createWSDLDefinition

public abstract javax.wsdl.Definition createWSDLDefinition(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                                           javax.xml.namespace.QName name)
                                                    throws ParameterNullException
Creates a WSDL definition with the specified name in the specified resource set.

Parameters:
resourceSet - The resource set that is to contain the WSDL definition.
name - The name of the WSDL definition.
Returns:
Definition - The WSDL definition created.
Throws:
ParameterNullException

createOperation

public abstract javax.wsdl.Operation createOperation(javax.wsdl.Definition definition,
                                                     javax.wsdl.PortType portType,
                                                     java.lang.String name,
                                                     javax.xml.namespace.QName inputType,
                                                     javax.xml.namespace.QName outputType,
                                                     java.util.Map faultTypes)
                                              throws ParameterNullException,
                                                     ConflictingTypesException
Creates an operation with the specified name for the specified port type and WSDL definition. The operation is created in doc/lit wrapped style.

The input, output, and fault definitions are read from the XSD files pointed to by the specified URIs.

Note: A message definition XSD should look like following:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:complexType name="NAME">
    <xsd:sequence>
      ...CONTENT...
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

This results in an operation:
<wsdl:types>
  <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <xsd:element name="NAME">
      <xsd:complexType>
        <xsd:sequence>
          <xsd:element name="NAME + 'Element'" nillable="true" type="INPUT_BO_TYPE"/>
        </xsd:sequence>
      </xsd:complexType>
    </xsd:element>
    <xsd:element name="NAME + 'Response'">
      <xsd:complexType>
        <xsd:sequence>
          <xsd:element name="NAME + 'ResponseElement'" nillable="true" type="OUTPUT_BO_TYPE"/>
        </xsd:sequence>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
</wsdl:types>
<wsdl:message name="NAME + 'RequestMsg'">
  <wsdl:part element="NAME" name="NAME + 'Parameters'"/>
</wsdl:message>
<wsdl:message name="NAME + 'ResponseMsg'">
  <wsdl:part element="NAME + 'Response'" name="NAME + 'Result'"/>
</wsdl:message>
<wsdl:portType name="PORT_TYPE_NAME">
  <wsdl:operation name="NAME">
    <wsdl:input message="NAME + 'RequestMsg'" name="NAME + 'Request'"/>
    <wsdl:output message="NAME + 'ResponseMsg'" name="NAME + 'Response'"/>
  </wsdl:operation>
</wsdl:portType>

Parameters:
definition - The WSDL definition to contain the operation.
portType - The port type of the operation.
name - The name of the operation.
inputType - The URI of the BO XSD that is to be used as input data type, if any.
outputType - The URI of the BO XSD that is to be used as output data type, if any.
faultTypes - A map of fault definitions, if any. The fault name is the key of the map and the value of the map is the URI of the BO XSD that is to be used as fault data type.
Returns:
Operation - The operation created.
Throws:
ParameterNullException
ConflictingTypesException

createPortType

public abstract javax.wsdl.PortType createPortType(javax.wsdl.Definition definition,
                                                   java.lang.String name)
                                            throws ParameterNullException
Creates a port type with the specified name in the specified WSDL definition.

Parameters:
definition - The WSDL definition that is to contain the port type.
name - The name of the port type.
Returns:
PortType - The port type created.
Throws:
ParameterNullException

createTTask

public abstract TTask createTTask(org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                                  TTaskKinds taskKind,
                                  java.lang.String taskName,
                                  com.ibm.bpe.api.UTCDate validFrom,
                                  java.lang.String targetNamespace,
                                  javax.wsdl.PortType portType,
                                  javax.wsdl.Operation operation)
                           throws ParameterNullException,
                                  WrongKindException
Creates a collaboration or to-do task with the specified name in the specified resource set. Collaboration and to-do tasks are also known as human and participating tasks. All specific task information is initialized with default values.

Parameters:
resourceSet - The resource set that is to contain the task definition.
taskKind - The kind of the task, either HTASK_LITERAL or PTASK_LITERAL - see TTaskKinds.
taskName - The name of the task.
validFrom - The time from which on the task is to become valid - see com.ibm.bpe.api.UTCDate.
targetNamespace - The namespace of the task.
portType - The port type to be associated with the task.
operation - The operation to be associated with the task.
Returns:
TTask - The TTask object created.
Throws:
ParameterNullException
WrongKindException