Package com.sun.xml.ws.rx.util
Class Communicator
- java.lang.Object
-
- com.sun.xml.ws.rx.util.Communicator
-
public final class Communicator extends Object
Transmits standalone protocol messages over the wire. Provides also some additional utility methods for creating and unmarshalling JAXWSMessageandHeaderobjects. WARNING: This class is a private utility class used by WS-RX implementation. Any usage outside the intended scope is strongly discouraged. The API exposed by this class may be changed, replaced or removed without any advance notice.- Author:
- Marek Potociar (marek.potociar at oracle.com)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCommunicator.Builder
-
Field Summary
Fields Modifier and Type Field Description QNamesoapMustUnderstandAttributeName
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static Communicator.Builderbuilder(String name)voidclose()PacketcreateEmptyRequestPacket(boolean expectReply)Creates a new empty request packetPacketcreateEmptyRequestPacket(String requestWsaAction, boolean expectReply)Creates a new empty request packet with an empty message that has WS-A action setPacketcreateEmptyResponsePacket(Packet requestPacket, String responseWsaAction)Creates an empty (no SOAP body payload) new response packet based for the supplied request packet with the provided response WS-Addressing action set.PacketcreateNullResponsePacket(Packet requestPacket)Creates a null (no message) response packet based for the supplied request packet.PacketcreateRequestPacket(Message message, String wsaAction, boolean expectReply)PacketcreateRequestPacket(Packet originalRequestPacket, Object jaxbElement, String wsaAction, boolean expectReply)PacketcreateRequestPacket(Object jaxbElement, String wsaAction, boolean expectReply)PacketcreateResponsePacket(Packet requestPacket, Message message, String responseWsaAction)Creates new response packet based for the supplied request packet with the provided response WS-Addressing action set.PacketcreateResponsePacket(Packet requestPacket, Object jaxbElement, String responseWsaAction, boolean isClientResponse)Creates new response packet based for the supplied request packet with the provided response WS-Addressing action set.AddressingVersiongetAddressingVersion()ComponentgetContainer()EndpointAddressgetDestinationAddress()Provides the destination endpoint reference thisCommunicatoris pointing to.SOAPVersiongetSoapVersion()StringgetWsaAction(Packet packet)Returns the value of WS-AddressingActionheader of a message stored in thePacket.StringgetWsaTo(Packet packet)Returns the value of WS-AddressingToheader of a message stored in thePacket.booleanisClosed()Packetsend(Packet request)voidsendAsync(Packet request, Fiber.CompletionCallback completionCallbackHandler)Asynchronously sends the requestPacketvoidsendAsync(Packet request, Fiber.CompletionCallback completionCallbackHandler, FiberContextSwitchInterceptor interceptor)voidsetDestinationAddress(EndpointAddress newValue)voidsetDestinationAddressFrom(Packet packet)PacketsetEmptyRequestMessage(Packet request, String wsaAction)Creates a new JAX-WSMessageobject that doesn't have any payload and sets it as the current packet content as a request message.PacketsetEmptyResponseMessage(Packet response, Packet request, String wsaAction)SecurityTokenReferenceTypetryStartSecureConversation(Packet request)If security is enabled, tries to initate secured conversation and obtain the security token reference.
-
-
-
Field Detail
-
soapMustUnderstandAttributeName
public final QName soapMustUnderstandAttributeName
-
-
Method Detail
-
builder
public static Communicator.Builder builder(String name)
-
createRequestPacket
public final Packet createRequestPacket(Object jaxbElement, String wsaAction, boolean expectReply)
-
createRequestPacket
public final Packet createRequestPacket(Message message, String wsaAction, boolean expectReply)
-
createRequestPacket
public final Packet createRequestPacket(Packet originalRequestPacket, Object jaxbElement, String wsaAction, boolean expectReply)
-
createEmptyRequestPacket
public Packet createEmptyRequestPacket(boolean expectReply)
Creates a new empty request packet- Returns:
- a new empty request packet
-
createEmptyRequestPacket
public Packet createEmptyRequestPacket(String requestWsaAction, boolean expectReply)
Creates a new empty request packet with an empty message that has WS-A action set- Returns:
- a new empty request packet
-
createResponsePacket
public Packet createResponsePacket(@NotNull Packet requestPacket, Object jaxbElement, String responseWsaAction, boolean isClientResponse)
Creates new response packet based for the supplied request packet with the provided response WS-Addressing action set.- Parameters:
requestPacket- original request the newly created response belongs toresponseWsaAction- WS-Addressing action header value to be setisClientResponse- determines whether the response is technically a client request- Returns:
- newly created response packet
-
createResponsePacket
public Packet createResponsePacket(Packet requestPacket, Message message, String responseWsaAction)
Creates new response packet based for the supplied request packet with the provided response WS-Addressing action set.- Parameters:
requestPacket- original request the newly created response belongs toresponseWsaAction- WS-Addressing action header value to be set- Returns:
- newly created response packet
-
createEmptyResponsePacket
public Packet createEmptyResponsePacket(Packet requestPacket, String responseWsaAction)
Creates an empty (no SOAP body payload) new response packet based for the supplied request packet with the provided response WS-Addressing action set.- Parameters:
requestPacket- original request the newly created response belongs toresponseWsaAction- WS-Addressing action header value to be set- Returns:
- newly created empty (no SOAP body payload) response packet
-
createNullResponsePacket
public Packet createNullResponsePacket(Packet requestPacket)
Creates a null (no message) response packet based for the supplied request packet.- Parameters:
requestPacket- original request the newly created response belongs to- Returns:
- newly created null (no message) response packet
-
setEmptyRequestMessage
public final Packet setEmptyRequestMessage(Packet request, String wsaAction)
Creates a new JAX-WSMessageobject that doesn't have any payload and sets it as the current packet content as a request message.- Parameters:
wsaAction- WS-Addressing action header to set- Returns:
- the updated
PacketAdapterinstance
-
setEmptyResponseMessage
public final Packet setEmptyResponseMessage(Packet response, Packet request, String wsaAction)
Overwrites theMessageof the response packet with a newly created emptyMessageinstance. UnlikePacket.setMessage(Message), this method fills in theMessage's WS-Addressing headers correctly, based on the provided request packet WS-Addressing headers.- Parameters:
requestAdapter-wsaAction-- Returns:
-
getWsaAction
public String getWsaAction(Packet packet)
Returns the value of WS-AddressingActionheader of a message stored in thePacket.- Parameters:
packet- JAX-WS RI packet- Returns:
- Value of WS-Addressing
Actionheader,nullif the header is not present
-
getWsaTo
public String getWsaTo(Packet packet)
Returns the value of WS-AddressingToheader of a message stored in thePacket.- Parameters:
packet- JAX-WS RI packet- Returns:
- Value of WS-Addressing
Toheader,nullif the header is not present
-
tryStartSecureConversation
public SecurityTokenReferenceType tryStartSecureConversation(Packet request) throws WSTrustException
If security is enabled, tries to initate secured conversation and obtain the security token reference.- Returns:
- security token reference of the initiated secured conversation, or
nullif there is no SC configured - Throws:
WSTrustException
-
sendAsync
public void sendAsync(@NotNull Packet request, @Nullable Fiber.CompletionCallback completionCallbackHandler)
Asynchronously sends the requestPacket- Parameters:
request-Packetcontaining the message to be sendcompletionCallbackHandler- completion callback handler to process the response. May benull. In such case a generic completion callback handler will be used.
-
sendAsync
public void sendAsync(@NotNull Packet request, @Nullable Fiber.CompletionCallback completionCallbackHandler, @Nullable FiberContextSwitchInterceptor interceptor)
-
getDestinationAddress
@Nullable public EndpointAddress getDestinationAddress()
Provides the destination endpoint reference thisCommunicatoris pointing to. May returnnull(typically when used on the server side).- Returns:
- destination endpoint reference or
nullin case the destination address has not been specified when constructing thisCommunicatorinstance.
-
setDestinationAddress
public void setDestinationAddress(EndpointAddress newValue)
-
setDestinationAddressFrom
public void setDestinationAddressFrom(Packet packet)
-
getAddressingVersion
public AddressingVersion getAddressingVersion()
-
getSoapVersion
public SOAPVersion getSoapVersion()
-
close
public void close()
-
isClosed
public boolean isClosed()
-
getContainer
public Component getContainer()
-
-