public class WSDefinition extends AbstractDefinition
The webservice data control definitions can be created in following ways
#loadFromMetadata(Node, HashMap)
 to load from the metadata definition. Once the definition is loaded,
 it calls the createDataControl() to create the data control
 instance.
 AbstractDefinition| Modifier and Type | Field and Description | 
|---|---|
static java.lang.String | 
ALTERNATE_PARAM_TYPE
Alternate type hint in structuredef. 
 | 
static java.lang.String | 
ATTR_CONNECTION
Connection Attribute for the Adapter. 
 | 
static java.lang.String | 
ATTR_DATATYPE
Part Datatype attribute 
 | 
static java.lang.String | 
ATTR_DEFAULT_VALUE
Parameter Value tag 
 | 
static java.lang.String | 
ATTR_FORMAT
Format attribute 
 | 
static java.lang.String | 
ATTR_NAME
Name attribute 
 | 
static java.lang.String | 
ATTR_NAMESPACE
Operation Name Space Attribute 
 | 
static java.lang.String | 
ATTR_PARAM_NAME
HttpHeaders ParamName attribute 
 | 
static java.lang.String | 
ATTR_PROVIDER
Provider element, describes the underlying invocation provider 
 for the data control. 
 | 
static java.lang.String | 
ATTR_VERSION
Version attribute 
 | 
static java.lang.String | 
ATTR_WSDL
WSDL attribute 
 | 
static java.lang.String | 
ELEM_DATAFORMAT
Data Format element, describes a Data format 
 | 
static java.lang.String | 
ELEM_DEFINITION
The definition node for this data control 
 | 
static java.lang.String | 
ELEM_HTTP_HEADERS
HttpHeaders Element, describes the custom Http Headers. 
 | 
static java.lang.String | 
ELEM_OPERATION
Operation Element 
 | 
static java.lang.String | 
ELEM_PARAMETER
Parameter tag 
 | 
static java.lang.String | 
ELEM_PARAMETERS
Parameters tag 
 | 
static java.lang.String | 
ELEM_PORT
Port Element, describes a port. 
 | 
static java.lang.String | 
ELEM_SERVICE
Service Element in the XML Metadata file 
 | 
static java.lang.String | 
ENSURE_KEY_ATTRIBUTE
Value of Attribute in MetaData will enforce PrimaryKey in structure 
 | 
static java.lang.String | 
LOGGER  | 
static java.lang.String | 
USE_PERSIST_STRUCT  | 
static java.lang.String | 
USE_WSDL_IDENTITY
Value of Attribute in MetaData will enforce reading of identity from wsdl 
 | 
static java.lang.String | 
XMLNS
Namespace in which this metadata is defined 
 | 
CACHE_TO_SOURCEPATH, DONT_CACHE, mDCConfiguration, mFullName, mRootDefNameTYPE_ACCESSOR, TYPE_ATTRIBUTE, TYPE_CRITERIA, TYPE_CRITERIA_ITEM, TYPE_CRITERIA_OPERATOR, TYPE_CRITERIA_ROW, TYPE_DATACONTROL, TYPE_DEFINITION, TYPE_DEFINITIONCONTEXT, TYPE_NAMED, TYPE_OPERATION, TYPE_OPERATIONRETURN, TYPE_PARAMETER, TYPE_STRUCTURE, TYPE_VARIABLE| Constructor and Description | 
|---|
WSDefinition()
Create this Data Control defintion 
 | 
WSDefinition(java.lang.String name)
Create  Data Control defintion 
 | 
WSDefinition(java.lang.String name,
            java.net.URL wsdlURL)
Create this Data control definition instance. 
 | 
WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            boolean createConn)
Create this Data control definition instance. 
 | 
WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            boolean createConn,
            boolean sharedConn)
Create this Data control definition instance. 
 | 
WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            WSModel model,
            javax.xml.namespace.QName serviceName)
Create this Data control definition instance from the WSDL url and 
 the model representing the service. 
 | 
WSDefinition(java.net.URL wsdlURL)
Create this Data Control defintion from the WSDL source 
 | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
bindServiceConnection(javax.naming.Context context)
Bind the underlying connection used by this data control into the
 context provided by the caller. 
 | 
DataControl | 
createDataControl()
Creates an instance of the Webservice data control generated
 from the metadata definition. 
 | 
protected void | 
destroy()
Destroy this definition instance. 
 | 
java.lang.String | 
getAdapterType()
Get the adapter type of this data control. 
 | 
WebServiceConnection | 
getConnection()  | 
java.lang.String | 
getConnectionName()  | 
java.lang.String | 
getDCName()
Get the name of the Data control for which this Definition is created. 
 | 
java.util.Map | 
getDCOperations()
Get the operations that the data control can invoke on the service 
 | 
java.util.Map | 
getDCOperationsInternal()
Deprecated. 
 
Use  
getDCOperations()
 This method returns the web service operations that have been included in the data control. 
 If no operations have been included it returns null | 
java.util.Map | 
getDefaultDCOperations(javax.xml.namespace.QName serviceName)
Get the Default operations for a given service. 
 | 
boolean | 
getEnsureStructureV2()
Deprecated.   
 | 
java.lang.String | 
getHttHeaderParamName()  | 
Node | 
getMetadata()
Returns the element that defines the metadata for the data control. 
 | 
WSModel | 
getModel()
Get the underlying webservice model for this definition's source. 
 | 
java.lang.String | 
getRootStructureName()
Get the root structure definition name for this dc 
 | 
SecurityModel | 
getSecurityModel()
Get the underlying security model for this Data control. 
 | 
javax.xml.namespace.QName | 
getServiceName()
Get the default service name for this Data control definition 
 | 
StructureDefinition | 
getStructure()
Get the strcuture definition for the data 
 | 
boolean | 
getUseWSDLIdentity()
Deprecated.   
 | 
java.net.URL | 
getWSDL()  | 
java.lang.String | 
getWSDLLocation()
Deprecated.   
 | 
boolean | 
isIncludeHttpHeaders()  | 
boolean | 
isStructureDirty(boolean refresh)
Tells the framework whether the Data control structure is dirty and needs
 to be refreshed on the palette. 
 | 
boolean | 
isSupported(java.lang.String flag)
Indicates if the adapter support things like sorting, transaction etc. 
 | 
void | 
loadFromMetadata(Node node,
                java.util.Map params)
Loads the definition from a metadata  
Node. | 
void | 
refresh()  | 
void | 
refresh(WSModel model)
Refresh the underlying model of the data control. 
 | 
void | 
refresh(WSModel model,
       boolean reloadOperations)  | 
void | 
setConnectionName(java.lang.String connName)  | 
void | 
setDCOperations(java.util.Map dcOperations)
Set the Data control operations in this Defintion. 
 | 
void | 
setEnsureKeyAttribute(boolean ensureKeyAttribute)
Deprecated.   
 | 
void | 
setEnsureStructureV2(boolean ensureStructureV2)
Deprecated.   
 | 
void | 
setHttHeaderParamName(java.lang.String mHttpHeaderParamName)  | 
void | 
setIncludeHttpHeaders(boolean mIncludeHttpHeaders)  | 
void | 
setRootStructureName(java.lang.String rootDefName)
Set the qualified root structure def name for this dc structure 
 | 
void | 
setServiceName(javax.xml.namespace.QName serviceName)
Set the Service Name for this data control definition 
 | 
void | 
setUseWSDLIdentity(boolean useWSDLIdentity)
Deprecated.   
 | 
void | 
setWSDL(java.lang.String wsdlURL)  | 
void | 
updateModel(WSModel model)
Update the underlying model of the definition. 
 | 
assignDefaultPackage, createDuplicateDetailIterator, getAdapterContext, getCachingMode, getConfiguration, getConfigurationFullName, getDefClassName, getDefinitionParent, getDefinitionType, getFactoryClassName, getFullName, getJUDTDataControlName, getName, getParameters, getProperties, getProperty, getRuntimeParameters, setAdapterContext, setCachingMode, setCompileProjectOnCreate, setConfigurationFullName, setFullName, setName, setProperty, shouldCompileProjectOnCreate, useDefinitionProvider, usePersistedStructurepublic static final java.lang.String XMLNS
public static final java.lang.String ELEM_DEFINITION
public static final java.lang.String ELEM_SERVICE
public static final java.lang.String ELEM_OPERATION
public static final java.lang.String ELEM_PORT
public static final java.lang.String ELEM_HTTP_HEADERS
public static final java.lang.String ELEM_DATAFORMAT
public static final java.lang.String ATTR_FORMAT
public static final java.lang.String ATTR_PROVIDER
public static final java.lang.String ATTR_CONNECTION
public static final java.lang.String ATTR_NAME
public static final java.lang.String ATTR_NAMESPACE
public static final java.lang.String ATTR_DATATYPE
public static final java.lang.String ATTR_WSDL
public static final java.lang.String ATTR_VERSION
public static final java.lang.String ATTR_PARAM_NAME
public static final java.lang.String USE_PERSIST_STRUCT
public static final java.lang.String ENSURE_KEY_ATTRIBUTE
public static final java.lang.String ALTERNATE_PARAM_TYPE
public static final java.lang.String USE_WSDL_IDENTITY
public static final java.lang.String ELEM_PARAMETERS
public static final java.lang.String ELEM_PARAMETER
public static final java.lang.String ATTR_DEFAULT_VALUE
public static final java.lang.String LOGGER
public WSDefinition()
public WSDefinition(java.net.URL wsdlURL)
             throws AdapterException
wsdlURL - The WSDL URL describing the service.{@link - AdapterException} if the data control definition 
         cannot be created from the WSDL URLAdapterExceptionpublic WSDefinition(java.lang.String name)
name - Data Control name.public WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            boolean createConn)
             throws AdapterException
name - The name of the data control for which the definition
             is being created.wsdlURL - The URL of the service description.createconn - Whether to create service connection and register
                   with context. Required for dc created at runtime.{@link - AdapterException} if the definition for this data
         control could be created. This failure may happen if the
         WSDL url is invalid and the model cannot be initialized.
         or the underlying connection cannot be created.AdapterExceptionpublic WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            boolean createConn,
            boolean sharedConn)
             throws AdapterException
name - The name of the data control for which the definition
             is being created.wsdlURL - The URL of the service description.createConn - Whether to create service connection and register
                   with context. Required for dc created at runtime.sharedConn - Whether to create service connection in shared 
                   customization layer from mdssession, in place of 
                   default adfshare/appuid layer. Applicable for dc
                   created at runtime.{@link - AdapterException} if the definition for this data
         control could be created. This failure may happen if the
         WSDL url is invalid and the model cannot be initialized.
         or the underlying connection cannot be created.AdapterExceptionpublic WSDefinition(java.lang.String name,
            java.net.URL wsdlURL)
             throws AdapterException
name - The name of the data control for which the definition
             is being created.wsdlURL - The URL of the service description.{@link - AdapterException} if the definition for this data
         control could be created. This failure may happen if the
         WSDL url is invalid and the model cannot be initialized.
         or the underlying connection cannot be created.AdapterExceptionpublic WSDefinition(java.lang.String name,
            java.net.URL wsdlURL,
            WSModel model,
            javax.xml.namespace.QName serviceName)
             throws AdapterException
name - The name of the data control for which the definition
                    is being created.wsdlURL - The URL of the service description.model - The model representing the Service. The model describes
                    all the ports and operations exposed by the service
                    description.serviceName - The qualified service name for which the definition
                    is to be intialized. The service description may 
                    describe more that one service. In such a case
                    the definition is created for the requested service.{@link - AdapterException} if the definition for this data 
         control could be created. This failure may happen if the 
         WSDL url is invalid and the model cannot be initialized.
         or the underlying connection cannot be created.AdapterExceptionpublic java.lang.String getDCName()
getDCName in class AbstractDefinitionpublic WSModel getModel()
public java.net.URL getWSDL()
public void setWSDL(java.lang.String wsdlURL)
public java.util.Map getDCOperations()
Map of the operations for this data control@Deprecated public java.util.Map getDCOperationsInternal()
getDCOperations()
 This method returns the web service operations that have been included in the data control. 
 If no operations have been included it returns nullMap of the operations for this data control.public void setDCOperations(java.util.Map dcOperations)
dcOperations - The Map of the operations for this
                     data controlpublic javax.xml.namespace.QName getServiceName()
public void setServiceName(javax.xml.namespace.QName serviceName)
serviceName - The Service name for for this definitionpublic java.lang.String getAdapterType()
getAdapterType in class AbstractDefinitionAdapterDefinitionpublic SecurityModel getSecurityModel()
public DataControl createDataControl()
createDataControl in class AbstractDefinitionnull If the data control instance could
         not be created.public void loadFromMetadata(Node node, java.util.Map params) throws AdapterException
Node.loadFromMetadata in class AbstractDefinitionnode - the metadata node. It can be null if no metadata is defined.params - context parameters.{@link - AdapterException} if the data control definition
         cannot be reconstructed back from the metadata information.AdapterExceptionpublic StructureDefinition getStructure()
getStructure in interface DataControlDefinitiongetStructure in class AbstractDefinitionStructureDefinition representing the strcuture 
         of the data returned by this data control.public void refresh()
             throws AdapterException
AdapterExceptionpublic void refresh(WSModel model) throws AdapterException
AdapterExceptionpublic void refresh(WSModel model, boolean reloadOperations) throws AdapterException
AdapterExceptionpublic boolean isStructureDirty(boolean refresh)
refresh if refresh is requested. If a refresh is needed,
 the data control definition recreates the underlying model and connection
 to update the metadata of any possible changes to the service operation
 signature.isStructureDirty in class AbstractDefinitionrefresh - flag to indicate if the refresh is requested for the 
                structure. If true, the definition 
                regenerates the underlying model, operation map and 
                connection information. This re-generation is needed to 
                rebuild the structure and make sure that the runtime 
                has the right connection metadata to execute any modified
                operation bindingstrue if the implementation decides that the 
                structure of the data should be regenerated,
                false otherwise.public Node getMetadata()
The WSDL is parsed to extract as much information as is needed to be stored in the metdata to invoke the service operation at runtime.
getMetadata in class AbstractDefinitionNode that defines the metadata for this instance.
         This metadata will be used at the runtime to fetch data from the
         data source.public java.util.Map getDefaultDCOperations(javax.xml.namespace.QName serviceName)
                                     throws AdapterException
serviceName - The Qualified service Name for which operations
                    must be fetched.Map of Operations for this service.{@link - AdapterException} if the service does not exist in 
         the underlying model.AdapterExceptionpublic void bindServiceConnection(javax.naming.Context context)
                           throws AdapterException
context - The Context provided by the caller into which 
                the connection for this service is to be bound.{@link - AdapterException} If the connection cannot be bound into 
         the context provided.AdapterExceptionpublic boolean isSupported(java.lang.String flag)
AbstractDefinitionisSupported in class AbstractDefinitionflag - one of the values defined in 
        DataControlDefinition.public void setRootStructureName(java.lang.String rootDefName)
setRootStructureName in class AbstractDefinitionrootDefName - The qualified root structure name for this dcpublic java.lang.String getRootStructureName()
getRootStructureName in class AbstractDefinitionpublic void setIncludeHttpHeaders(boolean mIncludeHttpHeaders)
public boolean isIncludeHttpHeaders()
public java.lang.String getConnectionName()
public java.lang.String getHttHeaderParamName()
public void setHttHeaderParamName(java.lang.String mHttpHeaderParamName)
public WebServiceConnection getConnection()
public void setConnectionName(java.lang.String connName)
                       throws java.lang.Exception
java.lang.Exceptionpublic void updateModel(WSModel model)
model - New modelprotected void destroy()
                throws AdapterException
Should be invoked by the data control when it is released from an application. The data control definition is voided out once the destroy is invoked. This includes cleaning up of the operations table, purging out the security model and the underlying connection bindings. The definition is not usable anymore once it is destroyed. A new instance of the definition must be created for the dc by loading the definition from the metadata.
AdapterException - if the definition cannot be destroyed.@Deprecated public void setEnsureKeyAttribute(boolean ensureKeyAttribute)
@Deprecated public void setEnsureStructureV2(boolean ensureStructureV2)
@Deprecated public boolean getEnsureStructureV2()
@Deprecated public void setUseWSDLIdentity(boolean useWSDLIdentity)
@Deprecated public boolean getUseWSDLIdentity()
@Deprecated public java.lang.String getWSDLLocation()