public abstract class BindingImpl extends Object implements WSBinding
This class is made abstract as we don't see a situation when a BindingImpl has much meaning without binding id. IOW, for a specific binding there will be a class extending BindingImpl, for example SOAPBindingImpl.
The spi Binding interface extends Binding.
| Modifier and Type | Class and Description |
|---|---|
protected static class |
BindingImpl.MessageKey
Experimental: Identify messages based on the name of the message and the
operation that uses this message.
|
| Modifier and Type | Field and Description |
|---|---|
protected static WebServiceFeature[] |
EMPTY_FEATURES |
protected Map<BindingImpl.MessageKey,WebServiceFeatureList> |
faultMessageFeatures |
protected WebServiceFeatureList |
features |
protected HandlerConfiguration |
handlerConfig |
protected Map<QName,WebServiceFeatureList> |
inputMessageFeatures |
protected org.jvnet.ws.message.MessageContextFactory |
messageContextFactory |
protected Map<QName,WebServiceFeatureList> |
operationFeatures |
protected Map<QName,WebServiceFeatureList> |
outputMessageFeatures |
protected Service.Mode |
serviceMode |
| Modifier | Constructor and Description |
|---|---|
protected |
BindingImpl(BindingID bindingId,
WebServiceFeature... features) |
| Modifier and Type | Method and Description |
|---|---|
void |
addFeature(WebServiceFeature newFeature) |
static BindingImpl |
create(BindingID bindingId) |
static BindingImpl |
create(BindingID bindingId,
WebServiceFeature[] features) |
Codec |
createCodec() |
AddressingVersion |
getAddressingVersion()
Gets the WS-Addressing version of this binding.
|
BindingID |
getBindingId()
Gets the binding ID, which uniquely identifies the binding.
|
String |
getBindingID() |
static WSBinding |
getDefaultBinding() |
WebServiceFeatureList |
getFaultMessageFeatures(QName operationName,
QName messageName)
Experimental: Returns a list of features associated with
WSBinding that apply to
one of the fault messages of an operation. |
<F extends WebServiceFeature> |
getFeature(Class<F> featureType)
Gets a
WebServiceFeature of the specific type. |
WebServiceFeatureList |
getFeatures()
Returns a list of features associated with
WSBinding. |
List<Handler> |
getHandlerChain() |
HandlerConfiguration |
getHandlerConfig() |
WebServiceFeatureList |
getInputMessageFeatures(QName operationName)
Experimental: Returns a list of features associated with
WSBinding that apply to
the input message of an operation. |
Set<QName> |
getKnownHeaders()
Returns set of header QNames known to be supported by this binding.
|
org.jvnet.ws.message.MessageContextFactory |
getMessageContextFactory() |
<F extends WebServiceFeature> |
getOperationFeature(Class<F> featureType,
QName operationName)
Experimental: Gets a
WebServiceFeature of the specific type that applies to an operation. |
WebServiceFeatureList |
getOperationFeatures(QName operationName)
Experimental: Returns a list of features associated with
WSBinding that apply to
a particular operation. |
WebServiceFeatureList |
getOutputMessageFeatures(QName operationName)
Experimental: Returns a list of features associated with
WSBinding that apply to
the output message of an operation. |
SOAPVersion |
getSOAPVersion()
Gets the SOAP version of this binding.
|
boolean |
isFeatureEnabled(Class<? extends WebServiceFeature> feature)
Checks if a particular
WebServiceFeature is enabled. |
boolean |
isOperationFeatureEnabled(Class<? extends WebServiceFeature> featureType,
QName operationName)
Experimental: Checks if a particular
WebServiceFeature on an operation is enabled. |
void |
setFaultMessageFeatures(QName operationName,
QName messageName,
WebServiceFeature... newFeatures) |
void |
setFeatures(WebServiceFeature... newFeatures) |
void |
setInputMessageFeatures(QName operationName,
WebServiceFeature... newFeatures) |
void |
setMode(Service.Mode mode) |
void |
setOperationFeatures(QName operationName,
WebServiceFeature... newFeatures) |
void |
setOutputMessageFeatures(QName operationName,
WebServiceFeature... newFeatures) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsetHandlerChainprotected static final WebServiceFeature[] EMPTY_FEATURES
protected HandlerConfiguration handlerConfig
protected final WebServiceFeatureList features
protected final Map<QName,WebServiceFeatureList> operationFeatures
protected final Map<QName,WebServiceFeatureList> inputMessageFeatures
protected final Map<QName,WebServiceFeatureList> outputMessageFeatures
protected final Map<BindingImpl.MessageKey,WebServiceFeatureList> faultMessageFeatures
protected Service.Mode serviceMode
protected org.jvnet.ws.message.MessageContextFactory messageContextFactory
protected BindingImpl(BindingID bindingId, WebServiceFeature... features)
@NotNull public List<Handler> getHandlerChain()
getHandlerChain in interface WSBindinggetHandlerChain in interface Bindingpublic HandlerConfiguration getHandlerConfig()
public void setMode(@NotNull
Service.Mode mode)
public Set<QName> getKnownHeaders()
WSBindinggetKnownHeaders in interface WSBinding@NotNull public BindingID getBindingId()
WSBindingThe 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, ...)
getBindingId in interface WSBindingpublic final SOAPVersion getSOAPVersion()
WSBinding
This is just a short-cut for getBindingID().getSOAPVersion()
getSOAPVersion in interface WSBindingSOAPVersion 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.public AddressingVersion getAddressingVersion()
WSBindinggetAddressingVersion in interface WSBindingAddressingVersion 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.@NotNull public final Codec createCodec()
public static BindingImpl create(@NotNull BindingID bindingId)
public static BindingImpl create(@NotNull BindingID bindingId, WebServiceFeature[] features)
public static WSBinding getDefaultBinding()
public String getBindingID()
getBindingID in interface Binding@Nullable public <F extends WebServiceFeature> F getFeature(@NotNull Class<F> featureType)
WSBindingWebServiceFeature of the specific type.getFeature in interface WSBindingfeatureType - The type of the feature to retrieve.@Nullable public <F extends WebServiceFeature> F getOperationFeature(@NotNull Class<F> featureType, @NotNull QName operationName)
WSBindingWebServiceFeature of the specific type that applies to an operation.getOperationFeature in interface WSBindingfeatureType - The type of the feature to retrieve.operationName - The WSDL name of the operation.public boolean isFeatureEnabled(@NotNull
Class<? extends WebServiceFeature> feature)
WSBindingWebServiceFeature is enabled.isFeatureEnabled in interface WSBindingpublic boolean isOperationFeatureEnabled(@NotNull
Class<? extends WebServiceFeature> featureType,
@NotNull
QName operationName)
WSBindingWebServiceFeature on an operation is enabled.isOperationFeatureEnabled in interface WSBindingoperationName - The WSDL name of the operation.@NotNull public WebServiceFeatureList getFeatures()
WSBindingWSBinding.getFeatures in interface WSBinding@NotNull public WebServiceFeatureList getOperationFeatures(@NotNull QName operationName)
WSBindingWSBinding that apply to
a particular operation.getOperationFeatures in interface WSBindingoperationName - The WSDL name of the operation.@NotNull public WebServiceFeatureList getInputMessageFeatures(@NotNull QName operationName)
WSBindingWSBinding that apply to
the input message of an operation.getInputMessageFeatures in interface WSBindingoperationName - The WSDL name of the operation.@NotNull public WebServiceFeatureList getOutputMessageFeatures(@NotNull QName operationName)
WSBindingWSBinding that apply to
the output message of an operation.getOutputMessageFeatures in interface WSBindingoperationName - The WSDL name of the operation.@NotNull public WebServiceFeatureList getFaultMessageFeatures(@NotNull QName operationName, @NotNull QName messageName)
WSBindingWSBinding that apply to
one of the fault messages of an operation.getFaultMessageFeatures in interface WSBindingoperationName - The WSDL name of the operation.messageName - The WSDL name of the fault message.public void setFeatures(WebServiceFeature... newFeatures)
public void setOperationFeatures(@NotNull
QName operationName,
WebServiceFeature... newFeatures)
public void setInputMessageFeatures(@NotNull
QName operationName,
WebServiceFeature... newFeatures)
public void setOutputMessageFeatures(@NotNull
QName operationName,
WebServiceFeature... newFeatures)
public void setFaultMessageFeatures(@NotNull
QName operationName,
@NotNull
QName messageName,
WebServiceFeature... newFeatures)
public void addFeature(@NotNull
WebServiceFeature newFeature)
@NotNull public org.jvnet.ws.message.MessageContextFactory getMessageContextFactory()
getMessageContextFactory in interface WSBindingCopyright (c) 1997-2012 Oracle and/or its affiliates. All rights reserved.