public class VersionTransformer extends Object
The native version is that used throughout the stack, were the WS-A types are represented via the JAXB generated types for the 2005/08 schema.
The exposed version is that used when the WS-A types are externalized, i.e. are encoded in the headers of outgoing messages. For outgoing requests, the exposed version is determined from configuration. For outgoing responses, the exposed version is determined by the exposed version of the corresponding request.
The motivation for using different native and exposed types is usually to facilitate a WS-* standard based on an earlier version of WS-Adressing (for example WS-RM depends on the 2004/08 version).
Modifier and Type | Class and Description |
---|---|
static class |
VersionTransformer.Names200403
Holder for 2004/03 Names
|
static class |
VersionTransformer.Names200408
Holder for 2004/08 Names
|
Modifier and Type | Field and Description |
---|---|
protected static String |
NATIVE_VERSION |
Modifier | Constructor and Description |
---|---|
protected |
VersionTransformer()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
static org.apache.cxf.ws.addressing.AttributedURIType |
convert(org.apache.cxf.ws.addressing.v200408.AttributedURI exposed)
Convert from 2004/08 AttributedURI to 2005/08 AttributedURI.
|
static org.apache.cxf.ws.addressing.AttributedURIType |
convert(org.apache.cxf.ws.addressing.v200403.AttributedURI exposed)
Convert from 2004/03 AttributedURI to 2005/08 AttributedURI.
|
static org.apache.cxf.ws.addressing.v200408.AttributedURI |
convert(org.apache.cxf.ws.addressing.AttributedURIType internal)
Convert from 2005/08 AttributedURI to 2004/08 AttributedURI.
|
static org.apache.cxf.ws.addressing.v200408.EndpointReferenceType |
convert(org.apache.cxf.ws.addressing.EndpointReferenceType internal)
Convert from 2005/08 EndpointReferenceType to 2004/08
EndpointReferenceType.
|
static org.apache.cxf.ws.addressing.EndpointReferenceType |
convert(org.apache.cxf.ws.addressing.v200408.EndpointReferenceType exposed)
Convert from 2004/08 EndpointReferenceType to 2005/08
EndpointReferenceType.
|
static org.apache.cxf.ws.addressing.EndpointReferenceType |
convert(org.apache.cxf.ws.addressing.v200403.EndpointReferenceType exposed)
Convert from 2004/03 EndpointReferenceType to 2005/08 EndpointReferenceType.
|
static org.apache.cxf.ws.addressing.v200408.ReferenceParametersType |
convert(org.apache.cxf.ws.addressing.ReferenceParametersType internal)
Convert from 2005/08 ReferenceParametersType to 2004/08
ReferenceParametersType.
|
static org.apache.cxf.ws.addressing.ReferenceParametersType |
convert(org.apache.cxf.ws.addressing.v200408.ReferenceParametersType exposed)
Convert from 2004/08 ReferenceParametersType to 2005/08
ReferenceParametersType.
|
static org.apache.cxf.ws.addressing.v200408.Relationship |
convert(org.apache.cxf.ws.addressing.RelatesToType internal)
Convert from 2005/08 RelatesToType to 2004/08 Relationship.
|
static org.apache.cxf.ws.addressing.RelatesToType |
convert(org.apache.cxf.ws.addressing.v200408.Relationship exposed)
Convert from 2004/08 Relationship to 2005/08 RelatesToType.
|
static org.apache.cxf.ws.addressing.RelatesToType |
convert(org.apache.cxf.ws.addressing.v200403.Relationship exposed)
Convert from 2004/03 Relationship to 2005/08 RelatesToType.
|
static org.apache.cxf.ws.addressing.v200403.AttributedURI |
convertTo200403(org.apache.cxf.ws.addressing.AttributedURIType internal)
Convert from 2005/08 AttributedURI to 2004/03 AttributedURI.
|
static org.apache.cxf.ws.addressing.v200403.EndpointReferenceType |
convertTo200403(org.apache.cxf.ws.addressing.EndpointReferenceType internal)
Convert from 2005/08 EndpointReferenceType to 2004/03 EndpointReferenceType.
|
static org.apache.cxf.ws.addressing.v200403.Relationship |
convertTo200403(org.apache.cxf.ws.addressing.RelatesToType internal)
Convert from 2005/08 RelatesToType to 2004/03 Relationship.
|
static org.apache.cxf.ws.addressing.EndpointReferenceType |
convertToNative(Object exposed)
Converts a version specific EndpointReferenceType to the native version
used internally by CXF
|
static JAXBContext |
getExposedJAXBContext(String exposedURI) |
static Class<?> |
getExposedReferenceType(String exposedURI)
Gets the Class representing the EndpointReferenceType that is used
for the specific WS-Addressing version
|
static boolean |
isSupported(String namespace) |
static org.apache.cxf.ws.addressing.EndpointReferenceType |
parseEndpointReference(Element ref)
Parse an EndpointReferenceType from a DOM element.
|
protected static final String NATIVE_VERSION
public static boolean isSupported(String namespace)
namespace
- a namspace URI to considerpublic static org.apache.cxf.ws.addressing.v200408.AttributedURI convert(org.apache.cxf.ws.addressing.AttributedURIType internal)
internal
- the 2005/08 AttributedURITypepublic static org.apache.cxf.ws.addressing.v200403.AttributedURI convertTo200403(org.apache.cxf.ws.addressing.AttributedURIType internal)
internal
- the 2005/08 AttributedURITypepublic static org.apache.cxf.ws.addressing.AttributedURIType convert(org.apache.cxf.ws.addressing.v200408.AttributedURI exposed)
exposed
- the 2004/08 AttributedURIpublic static org.apache.cxf.ws.addressing.AttributedURIType convert(org.apache.cxf.ws.addressing.v200403.AttributedURI exposed)
exposed
- the 2004/03 AttributedURIpublic static org.apache.cxf.ws.addressing.v200408.EndpointReferenceType convert(org.apache.cxf.ws.addressing.EndpointReferenceType internal)
internal
- the 2005/08 EndpointReferenceTypepublic static org.apache.cxf.ws.addressing.v200403.EndpointReferenceType convertTo200403(org.apache.cxf.ws.addressing.EndpointReferenceType internal)
internal
- the 2005/08 EndpointReferenceTypepublic static org.apache.cxf.ws.addressing.EndpointReferenceType convert(org.apache.cxf.ws.addressing.v200408.EndpointReferenceType exposed)
exposed
- the 2004/08 EndpointReferenceTypepublic static org.apache.cxf.ws.addressing.EndpointReferenceType convert(org.apache.cxf.ws.addressing.v200403.EndpointReferenceType exposed)
exposed
- the 2004/03 EndpointReferenceTypepublic static org.apache.cxf.ws.addressing.v200408.ReferenceParametersType convert(org.apache.cxf.ws.addressing.ReferenceParametersType internal)
internal
- the 2005/08 ReferenceParametersTypepublic static org.apache.cxf.ws.addressing.ReferenceParametersType convert(org.apache.cxf.ws.addressing.v200408.ReferenceParametersType exposed)
exposed
- the 2004/08 ReferenceParametersTypepublic static org.apache.cxf.ws.addressing.v200408.Relationship convert(org.apache.cxf.ws.addressing.RelatesToType internal)
internal
- the 2005/08 RelatesToTypepublic static org.apache.cxf.ws.addressing.v200403.Relationship convertTo200403(org.apache.cxf.ws.addressing.RelatesToType internal)
internal
- the 2005/08 RelatesToTypepublic static org.apache.cxf.ws.addressing.RelatesToType convert(org.apache.cxf.ws.addressing.v200408.Relationship exposed)
exposed
- the 2004/08 Relationshippublic static org.apache.cxf.ws.addressing.RelatesToType convert(org.apache.cxf.ws.addressing.v200403.Relationship exposed)
exposed
- the 2004/03 Relationshippublic static org.apache.cxf.ws.addressing.EndpointReferenceType parseEndpointReference(Element ref) throws JAXBException
ref
- JAXBException
public static org.apache.cxf.ws.addressing.EndpointReferenceType convertToNative(Object exposed)
exposed
- public static Class<?> getExposedReferenceType(String exposedURI)
exposedURI
- public static JAXBContext getExposedJAXBContext(String exposedURI) throws JAXBException
exposedURI
- specifies the version WS-AddressingJAXBException
Apache CXF