javax.wsdl
Interface Binding

All Superinterfaces:
AttributeExtensible, ElementExtensible, java.io.Serializable, WSDLElement
All Known Implementing Classes:
BindingImpl

public interface Binding
extends WSDLElement

This interface represents a port type binding and describes the protocol required for using operations in a port type.

Author:
Paul Fremantle, Nirmal Mukhi, Matthew J. Duftler

Field Summary
 
Fields inherited from interface javax.wsdl.extensions.AttributeExtensible
LIST_OF_QNAMES_TYPE, LIST_OF_STRINGS_TYPE, NO_DECLARED_TYPE, QNAME_TYPE, STRING_TYPE
 
Method Summary
 void addBindingOperation(BindingOperation bindingOperation)
          Add an operation binding to binding.
 BindingOperation getBindingOperation(java.lang.String name, java.lang.String inputName, java.lang.String outputName)
          Get the specified operation binding.
 java.util.List getBindingOperations()
          Get all the operation bindings defined here.
 PortType getPortType()
          Get the port type this is a binding for.
 QName getQName()
          Get the name of this binding.
 boolean isUndefined()
           
 BindingOperation removeBindingOperation(java.lang.String name, java.lang.String inputName, java.lang.String outputName)
          Remove the specified operation binding.
 void setPortType(PortType portType)
          Set the port type this is a binding for.
 void setQName(QName name)
          Set the name of this binding.
 void setUndefined(boolean isUndefined)
           
 
Methods inherited from interface javax.wsdl.WSDLElement
getDocumentationElement, setDocumentationElement
 
Methods inherited from interface javax.wsdl.extensions.AttributeExtensible
getExtensionAttribute, getExtensionAttributes, getNativeAttributeNames, setExtensionAttribute
 
Methods inherited from interface javax.wsdl.extensions.ElementExtensible
addExtensibilityElement, getExtensibilityElements, removeExtensibilityElement
 

Method Detail

setQName

public void setQName(QName name)
Set the name of this binding.

Parameters:
name - the desired name

getQName

public QName getQName()
Get the name of this binding.

Returns:
the binding name

setPortType

public void setPortType(PortType portType)
Set the port type this is a binding for.

Parameters:
portType - the port type associated with this binding

getPortType

public PortType getPortType()
Get the port type this is a binding for.

Returns:
the associated port type

addBindingOperation

public void addBindingOperation(BindingOperation bindingOperation)
Add an operation binding to binding.

Parameters:
bindingOperation - the operation binding to be added

getBindingOperation

public BindingOperation getBindingOperation(java.lang.String name,
                                            java.lang.String inputName,
                                            java.lang.String outputName)
Get the specified operation binding. Note that operation names can be overloaded within a PortType. In case of overloading, the names of the input and output messages can be used to further refine the search.

The search criteria will be the operation name parameter and any non-null input or output message name parameters. To exclude the input or output message name from the search criteria, specify a null value for the input or output message name parameter. To search for operations with unnamed input or output messages (i.e. <input> or <output> elements with the 'name' attribute omitted), specify the string ":none" for the input or output message name parameter.

Note: the use of a string value ":none" rather than null to search for unnamed input or output messages is necessary to retain backward compatibility with earlier versions of the JWSDL API, which defined a null value to mean 'ignore this parameter'. The colon in ":none" is to avoid name clashes with input or output message names, which must be of type NCName (i.e. they cannot contain colons).

Parameters:
name - the name of the desired operation binding.
inputName - the name of the input message; if this is null it will be ignored, if this is ":none" it means search for an input message without a name.
outputName - the name of the output message; if this is null it will be ignored, if this is ":none" it means search for an output message without a name.
Returns:
the corresponding operation binding, or null if there wasn't any matching operation binding
Throws:
java.lang.IllegalArgumentException - if duplicate operations are found.

getBindingOperations

public java.util.List getBindingOperations()
Get all the operation bindings defined here.


removeBindingOperation

public BindingOperation removeBindingOperation(java.lang.String name,
                                               java.lang.String inputName,
                                               java.lang.String outputName)
Remove the specified operation binding. Note that operation names can be overloaded within a PortType. In case of overloading, the names of the input and output messages can be used to further refine the search.

Usage of the input and output message name parameters is as described for the getBindingOperation method.

Parameters:
name - the name of the operation binding to be removed.
inputName - the name of the input message; if this is null it will be ignored, if this is ":none" it means search for an input message without a name.
outputName - the name of the output message; if this is null it will be ignored, if this is ":none" it means search for an output message without a name.
Returns:
the binding operation which was removed, or null if there wasn't any matching operation
Throws:
java.lang.IllegalArgumentException - if duplicate operations are found.
See Also:
getBindingOperation(String, String, String)

setUndefined

public void setUndefined(boolean isUndefined)

isUndefined

public boolean isUndefined()


Copyright ? 2003,2006 IBM. All Rights Reserved.