|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.sun.xml.ws.api.pipe.helper.AbstractTubeImpl
com.sun.xml.ws.api.pipe.helper.AbstractFilterTubeImpl
com.sun.xml.wss.jaxws.impl.SecurityTubeBase
com.sun.xml.wss.jaxws.impl.SecurityServerTube
public class SecurityServerTube
| Field Summary |
|---|
| Fields inherited from class com.sun.xml.wss.jaxws.impl.SecurityTubeBase |
|---|
allowMissingTimestamp, bindingLevelAlgSuite, bpMSP, bsp10, cachedOperation, debug, disableIncPrefix, disablePayloadBuffer, EMPTY_LIST, encHeaderContent, encRMLifecycleMsg, isCertValid, isCertValidityVerified, isEPREnabled, isSOAP12, issuedTokenContextMap, iterationsForPDK, jaxbContext, log, marshaller, mcVer, optimized, policyAlternatives, rmVer, secEnv, securityMUValue, securityPolicyNamespaces, serverCert, soapFactory, soapVersion, spVersion, timestampTimeOut, transportOptimization, tubeConfig, unmarshaller, WSDLPORT, WSENDPOINT, wsitConfig, wsPolicyMap, wsscVer, wsTrustVer |
| Fields inherited from class com.sun.xml.ws.api.pipe.helper.AbstractFilterTubeImpl |
|---|
next |
| Constructor Summary | |
|---|---|
protected |
SecurityServerTube(SecurityServerTube that,
TubeCloner cloner)
|
|
SecurityServerTube(ServerTubelineAssemblyContext context,
Tube nextTube)
|
| Method Summary | |
|---|---|
protected void |
addIncomingFaultPolicy(Policy effectivePolicy,
SecurityPolicyHolder sph,
WSDLFault fault)
|
protected SecurityPolicyHolder |
addIncomingMP(WSDLBoundOperation operation,
Policy policy,
PolicyAlternativeHolder ph)
|
protected void |
addIncomingProtocolPolicy(Policy effectivePolicy,
String protocol,
PolicyAlternativeHolder ph)
|
protected void |
addOutgoingFaultPolicy(Policy effectivePolicy,
SecurityPolicyHolder sph,
WSDLFault fault)
|
protected SecurityPolicyHolder |
addOutgoingMP(WSDLBoundOperation operation,
Policy policy,
PolicyAlternativeHolder ph)
private Packet addAddressingHeaders(Packet packet, String relatesTo, String action){ AddressingBuilder builder = AddressingBuilder.newInstance(); AddressingProperties ap = builder.newAddressingProperties(); try{ // Action ap.setAction(builder.newURI(new URI(action))); // RelatesTo Relationship[] rs = new Relationship[]{builder.newRelationship(new URI(relatesTo))}; ap.setRelatesTo(rs); // To ap.setTo(builder.newURI(new URI(builder.newAddressingConstants().getAnonymousURI()))); } catch (URISyntaxException e) { throw new RuntimeException("Exception when adding Addressing Headers"); } WsaRuntimeFactory fac = WsaRuntimeFactory.newInstance(ap.getNamespaceURI(), pipeConfig.getWSDLModel(), pipeConfig.getBinding()); fac.writeHeaders(packet, ap); packet.invocationProperties .put(JAXWSAConstants.SERVER_ADDRESSING_PROPERTIES_OUTBOUND, ap); return packet; } |
protected void |
addOutgoingProtocolPolicy(Policy effectivePolicy,
String protocol,
PolicyAlternativeHolder ph)
|
AbstractTubeImpl |
copy(TubeCloner cloner)
Creates an identical clone of this Tube. |
protected String |
getAction(WSDLOperation operation,
boolean inComming)
|
protected MessagePolicy |
getOutgoingFaultPolicy(Packet packet)
|
protected MessagePolicy |
getOutgoingXWSSecurityPolicy(Packet packet,
boolean isSCMessage)
|
protected ProcessingContext |
initializeOutgoingProcessingContext(Packet packet,
boolean isSCMessage)
|
protected ProcessingContext |
initializeOutgoingProcessingContext(Packet packet,
boolean isSCMessage,
boolean isTrustMessage)
|
static URL |
loadFromClasspath(String configFileName)
|
void |
preDestroy()
Invoked before the last copy of the pipeline is about to be discarded, to give Tubes a chance to clean up any resources. |
NextAction |
processException(Throwable t)
Default no-op implementation. |
InputStreamMessage |
processInputStream(Message msg)
|
InputStreamMessage |
processInputStream(Packet packet)
|
InputStreamMessage |
processInputStream(XMLStreamReaderMessage msg)
|
Packet |
processMessage(XMLStreamReaderMessage msg)
|
NextAction |
processRequest(Packet packet)
Default no-op implementation. |
NextAction |
processResponse(Packet retPacket)
Default no-op implementation. |
protected SOAPMessage |
verifyInboundMessage(SOAPMessage message,
ProcessingContext ctx)
|
| Methods inherited from class com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl |
|---|
copy, doInvoke, doInvokeAndForget, doReturnWith, doSuspend, doSuspend, doSuspend, doSuspend, doThrow, doThrow, process |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SecurityServerTube(ServerTubelineAssemblyContext context,
Tube nextTube)
protected SecurityServerTube(SecurityServerTube that,
TubeCloner cloner)
| Method Detail |
|---|
public AbstractTubeImpl copy(TubeCloner cloner)
TubeTube.
This method creates an identical pipeline that can be used concurrently with this pipeline. When the caller of a pipeline is multi-threaded and need concurrent use of the same pipeline, it can do so by creating copies through this method.
It is the implementation's responsibility to call
TubeCloner.add(Tube,Tube) to register the copied pipe
with the original. This is required before you start copying
the other Tube references you have, or else there's a
risk of infinite recursion.
For most Tube implementations that delegate to another
Tube, this method requires that you also copy the Tube
that you delegate to.
For limited number of Tubes that do not maintain any
thread unsafe resource, it is allowed to simply return this
from this method (notice that even if you are stateless, if you
got a delegating Tube and that one isn't stateless, you
still have to copy yourself.)
Note that this method might be invoked by one thread while another
thread is executing the other process method. See
the Codec.copy() for more discussion about this.
copy in interface Tubecopy in class AbstractTubeImplcloner - Use this object (in particular its TubeCloner.copy(Tube) method
to clone other pipe references you have
in your pipe. See TubeCloner for more discussion
about why.
Tube.public NextAction processRequest(Packet packet)
AbstractFilterTubeImpl
processRequest in interface TubeprocessRequest in class AbstractFilterTubeImplpacket - The packet that represents a request message.
If the packet has a non-null message, it must be a valid
unconsumed Message. This message represents the
SOAP message to be sent as a request.
The packet is also allowed to carry no message, which indicates that this is an output-only request. (that's called "solicit", right? - KK)
NextAction object that represents the next action
to be taken by the JAX-WS runtime.public NextAction processResponse(Packet retPacket)
AbstractFilterTubeImpl
processResponse in interface TubeprocessResponse in class AbstractFilterTubeImplretPacket - If the packet has a non-null message, it must be
a valid unconsumed Message. This message represents
a response to the request message passed to
Tube.processRequest(Packet) earlier.
The packet is also allowed to carry no message, which indicates that there was no response. This is used for things like one-way message and/or one-way transports. TODO: exception handling semantics need more discussion
NextAction object that represents the next action
to be taken by the JAX-WS runtime.public NextAction processException(Throwable t)
AbstractFilterTubeImpl
processException in interface TubeprocessException in class AbstractFilterTubeImplNextAction object that represents the next action
to be taken by the JAX-WS runtime.public void preDestroy()
TubeTubes a chance to clean up any resources.
This can be used to invoke PreDestroy lifecycle methods
on user handler. The invocation of it is optional on the client side,
but mandatory on the server side.
When multiple copies of pipelines are created, this method is called only on one of them.
preDestroy in interface PipepreDestroy in interface TubepreDestroy in class AbstractFilterTubeImplpublic Packet processMessage(XMLStreamReaderMessage msg)
public InputStreamMessage processInputStream(XMLStreamReaderMessage msg)
public InputStreamMessage processInputStream(Message msg)
protected ProcessingContext initializeOutgoingProcessingContext(Packet packet,
boolean isSCMessage,
boolean isTrustMessage)
protected ProcessingContext initializeOutgoingProcessingContext(Packet packet,
boolean isSCMessage)
initializeOutgoingProcessingContext in class SecurityTubeBase
protected MessagePolicy getOutgoingXWSSecurityPolicy(Packet packet,
boolean isSCMessage)
getOutgoingXWSSecurityPolicy in class SecurityTubeBaseprotected MessagePolicy getOutgoingFaultPolicy(Packet packet)
protected SOAPMessage verifyInboundMessage(SOAPMessage message,
ProcessingContext ctx)
throws WssSoapFaultException,
XWSSecurityException
verifyInboundMessage in class SecurityTubeBaseWssSoapFaultException
XWSSecurityExceptionpublic InputStreamMessage processInputStream(Packet packet)
protected SecurityPolicyHolder addOutgoingMP(WSDLBoundOperation operation,
Policy policy,
PolicyAlternativeHolder ph)
throws PolicyException
addOutgoingMP in class SecurityTubeBasePolicyException
protected SecurityPolicyHolder addIncomingMP(WSDLBoundOperation operation,
Policy policy,
PolicyAlternativeHolder ph)
throws PolicyException
addIncomingMP in class SecurityTubeBasePolicyException
protected void addIncomingProtocolPolicy(Policy effectivePolicy,
String protocol,
PolicyAlternativeHolder ph)
throws PolicyException
addIncomingProtocolPolicy in class SecurityTubeBasePolicyException
protected void addOutgoingProtocolPolicy(Policy effectivePolicy,
String protocol,
PolicyAlternativeHolder ph)
throws PolicyException
addOutgoingProtocolPolicy in class SecurityTubeBasePolicyException
protected void addIncomingFaultPolicy(Policy effectivePolicy,
SecurityPolicyHolder sph,
WSDLFault fault)
throws PolicyException
addIncomingFaultPolicy in class SecurityTubeBasePolicyException
protected void addOutgoingFaultPolicy(Policy effectivePolicy,
SecurityPolicyHolder sph,
WSDLFault fault)
throws PolicyException
addOutgoingFaultPolicy in class SecurityTubeBasePolicyException
protected String getAction(WSDLOperation operation,
boolean inComming)
getAction in class SecurityTubeBasepublic static URL loadFromClasspath(String configFileName)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||