com.sun.xml.ws.rx.rm.runtime
Enum RmRuntimeVersion

java.lang.Object
  extended by java.lang.Enum<RmRuntimeVersion>
      extended by com.sun.xml.ws.rx.rm.runtime.RmRuntimeVersion
All Implemented Interfaces:
Serializable, Comparable<RmRuntimeVersion>

public enum RmRuntimeVersion
extends Enum<RmRuntimeVersion>

This enumeration contains all currently supported WS-ReliableMessaging versions. The used reliable messaging version affects the WS-ReliableMessaging Policy assertions displayed int the web service's WSDL, XML namespace of RM protocol element being created as well as RM protocol message processing logic.

Author:
Marek Potociar
See Also:
WSRM200502, WSRM200702

Enum Constant Summary
WSRM200502
           This value represents the outdated and obsolete WS-ReliableMessaging v1.0 protocol.
WSRM200702
           This value represents the version of WS-ReliableMessaging protocol standardized by OASIS organization.
 
Field Summary
 RmProtocolVersion protocolVersion
          General constants
 
Method Summary
 Unmarshaller createUnmarshaller(AddressingVersion av)
          Creates JAXB Unmarshaller that is able to unmarshall protocol elements for given WS-RM version.
static RmRuntimeVersion forProtocolVersion(RmProtocolVersion protocolVersion)
           
static RmRuntimeVersion getDefault()
          Provides a default reliable messaging version value.
 JAXBRIContext getJaxbContext(AddressingVersion av)
          Returns JAXB context that is intitialized based on a given addressing version.
 String toString()
           
static RmRuntimeVersion valueOf(String name)
          Returns the enum constant of this type with the specified name.
static RmRuntimeVersion[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

WSRM200502

public static final RmRuntimeVersion WSRM200502

This value represents the outdated and obsolete WS-ReliableMessaging v1.0 protocol.

You may want to choose this version for your WS endpoints to ensure maximum backward compatibility with clients running on older systems, such as Metro 1.0 or .NET 3.0

See Also:
RmVersion

WSRM200702

public static final RmRuntimeVersion WSRM200702

This value represents the version of WS-ReliableMessaging protocol standardized by OASIS organization. This is currently the most up-to-date version.

You should primarily use this version for your WS endpoints. It is compatible with clients running on Metro 1.3 or .NET 3.5 and later.

See Also:
RmVersion
Field Detail

protocolVersion

public final RmProtocolVersion protocolVersion
General constants

Method Detail

values

public static RmRuntimeVersion[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (RmRuntimeVersion c : RmRuntimeVersion.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static RmRuntimeVersion valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
IllegalArgumentException - if this enum type has no constant with the specified name
NullPointerException - if the argument is null

forProtocolVersion

public static RmRuntimeVersion forProtocolVersion(RmProtocolVersion protocolVersion)

getDefault

public static RmRuntimeVersion getDefault()
Provides a default reliable messaging version value.

Returns:
a default reliable messaging version value. Currently returns WSRM200702.
See Also:
RmVersion

createUnmarshaller

public Unmarshaller createUnmarshaller(AddressingVersion av)
                                throws RxRuntimeException
Creates JAXB Unmarshaller that is able to unmarshall protocol elements for given WS-RM version.

As JAXB unmarshallers are not thread-safe, this method should be used to create a new Unmarshaller instance whenever there is a chance that the same instance might be invoked concurrently from multiple threads. On th other hand, it is prudent to cache or pool Unmarshaller instances if possible as constructing a new Unmarshaller instance is rather expensive.

For additional information see this blog entry.

Returns:
created JAXB unmarshaller
Throws:
RxRuntimeException - in case the creation of unmarshaller failed

getJaxbContext

public JAXBRIContext getJaxbContext(AddressingVersion av)
Returns JAXB context that is intitialized based on a given addressing version.

Parameters:
av - addressing version used to initialize JAXB context
Returns:
JAXB context that is intitialized based on a given addressing version.

toString

public String toString()
Overrides:
toString in class Enum<RmRuntimeVersion>


Copyright © 2005-2015 Oracle Corporation. All Rights Reserved.