|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjavax.xml.ws.WebServiceFeature
com.sun.xml.ws.rx.rm.api.ReliableMessagingFeature
@ManagedData public class ReliableMessagingFeature
Reliable messaging feature is an implementation of WebServiceFeature
that configures Metro Reliable Messaging runtime functionality.
ReliableMessagingFeature, use a convenience
ReliableMessagingFeatureBuilder builder class.
| Nested Class Summary | |
|---|---|
static class |
ReliableMessagingFeature.BackoffAlgorithm
Defines the enumeration of all possible backoff algortihms that can be applied for to message retransmission. |
static class |
ReliableMessagingFeature.DeliveryAssurance
Defines the enumeration of Delivery Assurance options, which can be supported by RM Sources and RM Destinations. |
static class |
ReliableMessagingFeature.SecurityBinding
Defines the enumeration of possible security binding mechanism options that can be applied to a created sequence. |
| Field Summary | |
|---|---|
static long |
DEFAULT_ACK_REQUEST_TRANSMISSION_INTERVAL
A constant specifying the default value of interval between sending subsequent acknowledgement request messages. |
static long |
DEFAULT_ACKNOWLEDGEMENT_TRANSMISSION_INTERVAL
Specifies the duration in milliseconds after which the RM Destination will transmit an acknowledgement. |
static long |
DEFAULT_CLOSE_SEQUENCE_OPERATION_TIMEOUT
A constant specifying the default value of close sequence operation timeout. |
static long |
DEFAULT_DESTINATION_BUFFER_QUOTA
A constant specifying the default value of destination flow control buffer quota. |
static long |
DEFAULT_MAX_CONCURRENT_SESSIONS
A constant specifying the default value for how many concurrently active RM sessions (measured based on inbound RM sequences) the sequence manager dedicated to the WS Endpoint accepts before starting to refuse new requests for sequence creation. |
static long |
DEFAULT_MAX_MESSAGE_RETRANSMISSION_COUNT
A constant specifies the default value of maximum number of message redelivery attempts. |
static long |
DEFAULT_MAX_RM_SESSION_CONTROL_MESSAGE_RESEND_ATTEMPTS
A constant specifies the default value of maximum number of attempts to send a reliable messaging session control messgae such as CreateSequence, CloseSequence and TerminateSequence Currently, the default value is set to 3. |
static long |
DEFAULT_MESSAGE_RETRANSMISSION_INTERVAL
A constant specifying the default value of base message retransmission interval. |
static boolean |
DEFAULT_OFFER_ELEMENT_GENERATION_DISABLED
A constant specifying the default value for disabling the generation of the Offer
element as part of the CreateSequence message. |
static boolean |
DEFAULT_REJECT_OUT_OF_ORDER_MESSAGES
A constant specifying the default value for enabling "reject out-of-order messages". |
static long |
DEFAULT_SEQUENCE_INACTIVITY_TIMEOUT
A constant specifying the default value of sequence inactivity timeout. |
static long |
DEFAULT_SEQUENCE_MANAGER_MAINTENANCE_PERIOD
Default period (in milliseconds) of a sequence manager maintenance task execution. |
static boolean |
DEFAULT_STATE_UPDATE_ON_RECEIVED_ACKREQUESTED_DISABLED
A constant specifying the default value for turning off state update when received AckRequested is processed at RMD. |
static boolean |
DEFAULT_XA_TX_FOR_SERVER_RMD
A constant specifying the default value for enabling XA TX at server side RMD. |
static int |
DEFAULT_XA_TX_FOR_SERVER_RMD_TIMEOUT_SECONDS
A constant specifying the default value for XA TX timeout that is used at server side RMD (in seconds). |
static String |
ID
|
| Fields inherited from class javax.xml.ws.WebServiceFeature |
|---|
enabled |
| Constructor Summary | |
|---|---|
ReliableMessagingFeature()
This constructor is here to satisfy JAX-WS specification requirements |
|
ReliableMessagingFeature(boolean enabled)
This constructor is here to satisfy JAX-WS specification requirements |
|
ReliableMessagingFeature(boolean enabled,
RmProtocolVersion version,
long inactivityTimeout,
long bufferQuota,
boolean orderedDelivery,
ReliableMessagingFeature.DeliveryAssurance deliveryAssurance,
ReliableMessagingFeature.SecurityBinding securityBinding,
boolean persistenceEnabled,
long sequenceManagerMaintenancePeriod,
long maxConcurrentSessions)
|
|
| Method Summary | |
|---|---|
boolean |
canRetransmitMessage(long nextRetransmissionCount)
Returns true if the next attempt to retransmit a message indicated by
nextRetransmissionCount input parameter is allowed as per current
feature configuration. |
long |
getAcknowledgementTransmissionInterval()
Specifies the duration after which the RM Destination will transmit an acknowledgement. |
long |
getAckRequestTransmissionInterval()
Specifies interval between sending subsequent acknowledgement request messages by an RM Source in case of any unacknowledged messages on the sequence. |
long |
getCloseSequenceOperationTimeout()
Specifies the timeout for a CloseSequenceRequest message. |
ReliableMessagingFeature.DeliveryAssurance |
getDeliveryAssurance()
Specifies the message delivery quality of service between the RM and application layer. |
long |
getDestinationBufferQuota()
This attribute may be used together with ordered delivery requirement. |
String |
getID()
|
long |
getMaxConcurrentSessions()
Specifies how many concurrently active RM sessions (measured based on inbound RM sequences) the sequence manager dedicated to the WS Endpoint accepts before starting to refuse new requests for sequence creation. |
long |
getMaxMessageRetransmissionCount()
A message is considered to be transferred if its delivery at the recipient has been acknowledged by the recipient. |
long |
getMaxRmSessionControlMessageResendAttempts()
The infrastructure tries to send each RM session protocol control message such as CreateSequence, CloseSequence, TerminateSequence at most a getMaxRmSessionControlMessageResendAttempts() number of times. |
long |
getMessageRetransmissionInterval()
Specifies how long the RM Source will wait after transmitting a message before retransmitting the message if no acknowledgement arrives. |
RmProtocolVersion |
getProtocolVersion()
Specifies which WS-RM version SOAP messages and SOAP message headers should be used for communication between RM source and RM destination |
ReliableMessagingFeature.BackoffAlgorithm |
getRetransmissionBackoffAlgorithm()
Specifies that the retransmission interval will be adjusted using a specific backoff algorithm. |
ReliableMessagingFeature.SecurityBinding |
getSecurityBinding()
Specifies whether each created RM sequence must be bound to a specific underlying security token or secured transport. |
long |
getSequenceInactivityTimeout()
Specifies a period of inactivity for a Sequence in ms. |
long |
getSequenceManagerMaintenancePeriod()
Specifies the period (in milliseconds) of a sequence manager maintenance task execution. |
boolean |
isOfferElementGenerationDisabled()
Specifies whether the generation of the Offer element as part of
the CreateSequence message is forced-disabled or not. |
boolean |
isOrderedDeliveryEnabled()
Specifies a requirement that messages from each individual Sequence are to be delivered in the same order they have been sent by the Application Source. |
boolean |
isPersistenceEnabled()
Specifies whether the runtime should use persistent message storage or not. |
boolean |
isRejectOutOfOrderMessagesEnabled()
Specifies whether RMD should reject out-of-order messages that it receives. |
String |
toString()
|
| Methods inherited from class javax.xml.ws.WebServiceFeature |
|---|
isEnabled |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final String ID
public static final long DEFAULT_SEQUENCE_INACTIVITY_TIMEOUT
public static final long DEFAULT_DESTINATION_BUFFER_QUOTA
public static final long DEFAULT_MESSAGE_RETRANSMISSION_INTERVAL
public static final long DEFAULT_MAX_MESSAGE_RETRANSMISSION_COUNT
public static final long DEFAULT_MAX_RM_SESSION_CONTROL_MESSAGE_RESEND_ATTEMPTS
public static final long DEFAULT_ACKNOWLEDGEMENT_TRANSMISSION_INTERVAL
public static final long DEFAULT_ACK_REQUEST_TRANSMISSION_INTERVAL
public static final long DEFAULT_CLOSE_SEQUENCE_OPERATION_TIMEOUT
public static final long DEFAULT_SEQUENCE_MANAGER_MAINTENANCE_PERIOD
public static final long DEFAULT_MAX_CONCURRENT_SESSIONS
public static final boolean DEFAULT_OFFER_ELEMENT_GENERATION_DISABLED
Offer
element as part of the CreateSequence message.
public static final boolean DEFAULT_REJECT_OUT_OF_ORDER_MESSAGES
public static final boolean DEFAULT_STATE_UPDATE_ON_RECEIVED_ACKREQUESTED_DISABLED
public static final boolean DEFAULT_XA_TX_FOR_SERVER_RMD
public static final int DEFAULT_XA_TX_FOR_SERVER_RMD_TIMEOUT_SECONDS
| Constructor Detail |
|---|
public ReliableMessagingFeature()
public ReliableMessagingFeature(boolean enabled)
public ReliableMessagingFeature(boolean enabled,
RmProtocolVersion version,
long inactivityTimeout,
long bufferQuota,
boolean orderedDelivery,
ReliableMessagingFeature.DeliveryAssurance deliveryAssurance,
ReliableMessagingFeature.SecurityBinding securityBinding,
boolean persistenceEnabled,
long sequenceManagerMaintenancePeriod,
long maxConcurrentSessions)
| Method Detail |
|---|
@ManagedAttribute public String getID()
getID in class WebServiceFeature@ManagedAttribute public RmProtocolVersion getProtocolVersion()
RmVersion#getDefault().@ManagedAttribute public long getSequenceInactivityTimeout()
DEFAULT_SEQUENCE_INACTIVITY_TIMEOUT
constant.@ManagedAttribute public ReliableMessagingFeature.SecurityBinding getSecurityBinding()
ReliableMessagingFeature.SecurityBinding.getDefault().ReliableMessagingFeature.SecurityBinding@ManagedAttribute public ReliableMessagingFeature.DeliveryAssurance getDeliveryAssurance()
ReliableMessagingFeature.DeliveryAssurance.getDefault().ReliableMessagingFeature.DeliveryAssurance@ManagedAttribute public boolean isOrderedDeliveryEnabled()
Specifies a requirement that messages from each individual Sequence are to be delivered in the same order they have been sent by the Application Source. The RM Source will ensure that the ordinal position of each message in the Sequence (as indicated by a message Sequence number) is consistent with the order in which the messages have been sent from the Application Source. The RM Destination will deliver received messages for each Sequence in the order indicated by the message numbering.
In-order delivery can be used in combination with any of the ReliableMessagingFeature.DeliveryAssurance values,
and the requirements of those values will also be met. In particular if the
ReliableMessagingFeature.DeliveryAssurance.AT_LEAST_ONCE or ReliableMessagingFeature.DeliveryAssurance.EXACTLY_ONCE
value is applied and the RM Destination detects a gap in the Sequence then
the RM Destination will not deliver any subsequent messages from that Sequence
until the missing messages are received or until the Sequence is closed.
true if the ordered delivery si required, false otherwise.
If not set explicitly, the default value is false.@ManagedAttribute public long getDestinationBufferQuota()
DEFAULT_DESTINATION_BUFFER_QUOTA
constant.@ManagedAttribute public long getMessageRetransmissionInterval()
DEFAULT_MESSAGE_RETRANSMISSION_INTERVAL
constant.@ManagedAttribute public ReliableMessagingFeature.BackoffAlgorithm getRetransmissionBackoffAlgorithm()
ReliableMessagingFeature.BackoffAlgorithm.getDefault().ReliableMessagingFeature.BackoffAlgorithm@ManagedAttribute public long getMaxMessageRetransmissionCount()
#isMessageRetransmissionLimited()
method. In case the #isMessageRetransmissionLimited() returns true,
the infrastructure tries to send the message for at most a getMaxMessageRetransmissionCount()
number of times. Not receiving an acknowledgment before this limit is reached
is considered to be a fatal communication failure, and causes the RM session to fail.
The infrastructure uses a back-off algorithm retrieved via
getRetransmissionBackoffAlgorithm() to determine when to retransmit,
based on the configured base retransmission time retrieved via a call to
getMessageRetransmissionInterval().
public boolean canRetransmitMessage(long nextRetransmissionCount)
true if the next attempt to retransmit a message indicated by
nextRetransmissionCount input parameter is allowed as per current
feature configuration.
nextRetransmissionCount - indicates the ordinal number of the next (potential)
attempt to retransmit a single message
true if it is possible to retransmit a message, false otherwise.getMaxMessageRetransmissionCount()@ManagedAttribute public long getMaxRmSessionControlMessageResendAttempts()
getMaxRmSessionControlMessageResendAttempts() number of times. Not receiving
an acknowledgment before this limit is reached is considered a fatal communication
failure, and causes the RM session to fail.
@ManagedAttribute public long getAcknowledgementTransmissionInterval()
DEFAULT_ACKNOWLEDGEMENT_TRANSMISSION_INTERVAL
constant.@ManagedAttribute public long getAckRequestTransmissionInterval()
DEFAULT_ACK_REQUEST_TRANSMISSION_INTERVAL constant.@ManagedAttribute public long getCloseSequenceOperationTimeout()
CloseSequenceRequest message. If no response
is returned from RM destination before the timout expires, the sequence is
automatically closed by the RM source and all associated resources are released.
DEFAULT_CLOSE_SEQUENCE_OPERATION_TIMEOUT
constant.@ManagedAttribute public boolean isPersistenceEnabled()
true if the runtime should use persistent message storage, false otherwise@ManagedAttribute public long getSequenceManagerMaintenancePeriod()
@ManagedAttribute public long getMaxConcurrentSessions()
public boolean isOfferElementGenerationDisabled()
Offer element as part of
the CreateSequence message is forced-disabled or not.
true if the generation of the Offer element as part of
the CreateSequence message is forced-disabled, false otherwise.public boolean isRejectOutOfOrderMessagesEnabled()
true if RMD should reject out-of-order messages. Default is false.public String toString()
toString in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||