|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcgl.narada.wsinfra.WsProcessor
cgl.narada.wsinfra.wsrm.impl.WsrmSourceNodeHelper
This is a utility class which performs several functions that are helpful for the processing logic related to the WsrmSourceNode class.
| Method Summary | |
void |
checkExchangeType(WsrmExchangeInfo wsrmExchangeInfo,
int direction)
|
void |
checkForMessageRolloverFault(WsrmSequenceInfo wsrmSequenceInfo,
long previousMessageNumber)
Checks to see if a message number rollver is about to occur. |
void |
checkForProblems(AddressingHeaders addressingHeaders,
SequenceAcknowledgementDocument sequenceAckDocument,
long[] acknowledgements)
This method processes a set of acknowledgements received for a sequence. |
void |
checkForProblemsInToDocument(AddressingHeaders addressingHeaders)
This method enforces the rule that the [wsa:To] element should be present within a SOAP header element. |
static WsrmSourceNodeHelper |
getInstance()
|
WsMessageFlow |
getMessageFlow()
Gets the message flow which the processor should use. |
long[] |
getNegativeAcknowledgements(SequenceAcknowledgementDocument sequenceAckDocument)
Retrieve the negative acknowledgements that have been specified within the sequence acknowledgement as an array of longs. |
String |
getRelatesTo(EnvelopeDocument envelopeDocument)
This method parses the SOAP envelope and retrieves the [wsa:RelatesTo] element within the SOAP header element as a String. |
Calendar |
getSequenceExpiresAt(EnvelopeDocument envelopeDocument)
Check to see if an acknowledgement has been requested for this message. |
WsrmSequenceInfo |
getWsrmSequenceInfo(AddressingHeaders addressingHeaders,
String sequenceIdentifier,
String relatesTo,
String destination,
WsrmSequencePolicies wsrmSequencePolicies)
Creates a WsrmSequenceInfo based on the specified parameters. |
WsrmSequencePolicies |
getWsrmSequencePolicies(EnvelopeDocument envelopeDocument,
String sequenceIdentifier)
This method locates/retrieves/creates the WsrmSequencePolicies associated with the sequenceIdentifier. |
void |
initialize(WsrmStorageService wsrmStorageService)
|
boolean |
isAckRequested(EnvelopeDocument envelopeDocument)
Check to see if an acknowledgement has been requested for this message. |
boolean |
isLastMessageOfSequence(EnvelopeDocument envelopeDocument)
Check to see if an element which indicates that it is last message is present. |
void |
manageRetransmissions(String sequenceIdentifier,
long[] nacks)
This method manages retransmissions based on the supplied negative acknowledgements and the sequence identifier. |
boolean |
processExchange(EnvelopeDocument envelopeDocument,
int direction)
This is the method which all implementations of the various WS specifications will override. |
void |
processSequenceTermination(String sequenceIdentifier)
Check to see if the sequence needs to be terminated, and if so, proceed to create and issue the appropriate termination sequence exchange |
void |
setEndpointReference(EndpointReferenceType endpointReference)
|
void |
setMessageFlow(WsMessageFlow wsMessageFlow)
Sets the message flow which the processor should use |
void |
throwInvalidAcknowledgementFaultException(AddressingHeaders addressingHeaders,
SequenceAcknowledgementDocument seqAckDocument,
String additionalReason)
Throws an Invalid SequenceAcknowledgement Fault exception based on the specified parameters |
void |
throwInvalidMessageFaultException(String reason,
AddressingHeaders addressingHeaders)
Throws an Invalid MessageFault exception based on the specified parameters |
void |
throwUnknownSequenceFaultException(AddressingHeaders addressingHeaders,
String identifier)
Throws an UnknownSequence Fault exception based on the specified parameters |
| Methods inherited from class cgl.narada.wsinfra.WsProcessor |
enrouteToApplication, enrouteToNetwork, enrouteToNetwork, isFault, manageFaultException, processExchange, processExchange |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
public void initialize(WsrmStorageService wsrmStorageService)
throws DeploymentException
DeploymentExceptionpublic void setEndpointReference(EndpointReferenceType endpointReference)
public boolean processExchange(EnvelopeDocument envelopeDocument,
int direction)
throws UnknownExchangeException,
IncorrectExchangeException,
ProcessingException,
MessageFlowException
WsProcessor
processExchange in class WsProcessorUnknownExchangeException
IncorrectExchangeException
ProcessingException
MessageFlowException
public void setMessageFlow(WsMessageFlow wsMessageFlow)
throws DeploymentException
setMessageFlow in class WsProcessorDeploymentExceptionpublic WsMessageFlow getMessageFlow()
getMessageFlow in class WsProcessorpublic static WsrmSourceNodeHelper getInstance()
public WsrmSequencePolicies getWsrmSequencePolicies(EnvelopeDocument envelopeDocument,
String sequenceIdentifier)
throws WsrmStorageException
WsrmStorageException
public WsrmSequenceInfo getWsrmSequenceInfo(AddressingHeaders addressingHeaders,
String sequenceIdentifier,
String relatesTo,
String destination,
WsrmSequencePolicies wsrmSequencePolicies)
throws WsrmStorageException
WsrmStorageException
public void checkForProblems(AddressingHeaders addressingHeaders,
SequenceAcknowledgementDocument sequenceAckDocument,
long[] acknowledgements)
throws WsrmStorageException,
WsFaultException
WsrmStorageException
WsFaultExceptionpublic long[] getNegativeAcknowledgements(SequenceAcknowledgementDocument sequenceAckDocument)
public void manageRetransmissions(String sequenceIdentifier,
long[] nacks)
throws WsrmStorageException,
MessageFlowException
WsrmStorageException
MessageFlowException
public void processSequenceTermination(String sequenceIdentifier)
throws WsrmStorageException,
MessageFlowException
WsrmStorageException
MessageFlowExceptionpublic boolean isLastMessageOfSequence(EnvelopeDocument envelopeDocument)
public boolean isAckRequested(EnvelopeDocument envelopeDocument)
public Calendar getSequenceExpiresAt(EnvelopeDocument envelopeDocument)
public void checkForProblemsInToDocument(AddressingHeaders addressingHeaders)
throws WsFaultException
WsFaultExceptionpublic String getRelatesTo(EnvelopeDocument envelopeDocument)
public void checkForMessageRolloverFault(WsrmSequenceInfo wsrmSequenceInfo,
long previousMessageNumber)
throws WsFaultException,
WsrmStorageException
WsFaultException
WsrmStorageException
public void throwInvalidMessageFaultException(String reason,
AddressingHeaders addressingHeaders)
throws WsFaultException
WsFaultException
public void throwInvalidAcknowledgementFaultException(AddressingHeaders addressingHeaders,
SequenceAcknowledgementDocument seqAckDocument,
String additionalReason)
throws WsFaultException
WsFaultException
public void throwUnknownSequenceFaultException(AddressingHeaders addressingHeaders,
String identifier)
throws WsFaultException
WsFaultException
public void checkExchangeType(WsrmExchangeInfo wsrmExchangeInfo,
int direction)
throws UnknownExchangeException,
IncorrectExchangeException
UnknownExchangeException
IncorrectExchangeException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||