com.sun.xml.ws.api
Interface WSBinding

All Superinterfaces:
javax.xml.ws.Binding
All Known Implementing Classes:
BindingImpl, HTTPBindingImpl, SOAPBindingImpl

public interface WSBinding
extends javax.xml.ws.Binding

JAX-WS implementation of Binding.

This object can be created by BindingID.createBinding().

Binding conceptually includes the on-the-wire format of the message, this this object owns Codec.


Method Summary
 AddressingVersion getAddressingVersion()
          Gets the WS-Addressing version of this binding.
 BindingID getBindingId()
          Gets the binding ID, which uniquely identifies the binding.
<F extends javax.xml.ws.WebServiceFeature>
F
getFeature(Class<F> featureType)
          Gets a WebServiceFeature of the specific type.
 WSFeatureList getFeatures()
          Returns a list of features associated with WSBinding.
 List<javax.xml.ws.handler.Handler> getHandlerChain()
           
 SOAPVersion getSOAPVersion()
          Gets the SOAP version of this binding.
 boolean isFeatureEnabled(Class<? extends javax.xml.ws.WebServiceFeature> feature)
          Checks if a particular WebServiceFeature is enabled.
 
Methods inherited from interface javax.xml.ws.Binding
getBindingID, setHandlerChain
 

Method Detail

getSOAPVersion

SOAPVersion getSOAPVersion()
Gets the SOAP version of this binding. TODO: clarify what to do with XML/HTTP binding

This is just a shor-cut for getBindingID().getSOAPVersion()

Returns:
If the binding is using SOAP, this method returns a SOAPVersion constant. If the binding is not based on SOAP, this method returns null. See Message for how a non-SOAP binding shall be handled by Tubes.

getAddressingVersion

AddressingVersion getAddressingVersion()
Gets the WS-Addressing version of this binding.

TODO: clarify what to do with XML/HTTP binding

Returns:
If the binding is using SOAP and WS-Addressing is enabled, this method returns a AddressingVersion constant. If binding is not using SOAP or WS-Addressing is not enabled, this method returns null. This might be little slow as it has to go over all the features on binding. Its advisable to cache the addressingVersion wherever possible and reuse it.

getBindingId

@NotNull
BindingID getBindingId()
Gets the binding ID, which uniquely identifies the binding.

The relevant specs define the binding IDs and what they mean. The ID is used in many places to identify the kind of binding (such as SOAP1.1, SOAP1.2, REST, ...)

Returns:
Always non-null same value.

getHandlerChain

@NotNull
List<javax.xml.ws.handler.Handler> getHandlerChain()
Specified by:
getHandlerChain in interface javax.xml.ws.Binding

isFeatureEnabled

boolean isFeatureEnabled(@NotNull
                         Class<? extends javax.xml.ws.WebServiceFeature> feature)
Checks if a particular WebServiceFeature is enabled.

Returns:
true if enabled.

getFeature

@Nullable
<F extends javax.xml.ws.WebServiceFeature> F getFeature(@NotNull
                                                                 Class<F> featureType)
Gets a WebServiceFeature of the specific type.

Parameters:
featureType - The type of the feature to retrieve.
Returns:
If the feature is present and enabled, return a non-null instance. Otherwise null.

getFeatures

@NotNull
WSFeatureList getFeatures()
Returns a list of features associated with WSBinding.