public class MessageContext extends Object implements SOAPMessageContext
| Modifier and Type | Field and Description |
|---|---|
static String |
ACCEPTMISSINGPARAMS
A boolean param, to control whether we accept missing parameters
as nulls or refuse to acknowledge them.
|
static String |
ATTACHMENTS_DIR
The directory where in coming attachments are created.
|
static String |
AUTHUSER
Place to store an AuthenticatedUser.
|
static String |
CALL
If on the client - this is the Call object.
|
static String |
ENGINE_HANDLER
Contains an instance of Handler, which is the
ServiceContext and the entrypoint of this service.
|
static String |
HTTP_TRANSPORT_VERSION
The value of the property is used by service WSDL generation (aka ?
|
static String |
IS_MSG
Are we doing Msg vs RPC?
|
protected static org.apache.commons.logging.Log |
log
The
Log used for logging all messages. |
static String |
QUIT_REQUESTED
Has a quit been requested?
|
static String |
SECURITY_PROVIDER
The security provider.
|
protected static String |
systemTempDir
Temporary directory to store attachments.
|
static String |
TRANS_URL
This String is the URL that the message came to.
|
static String |
WSDLGEN_INTFNAMESPACE
The value of the property is used by service WSDL generation (aka ?
|
static String |
WSDLGEN_SERV_LOC_URL
The value of the property is used by service WSDL generation (aka ?
|
| Constructor and Description |
|---|
MessageContext(AxisEngine engine)
Create a message context.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsProperty(String name)
Returns true if the MessageContext contains a property with the specified name.
|
void |
dispose()
if a message (or subclass) has any disposal needs, this method
is where it goes.
|
protected void |
finalize()
during finalization, the dispose() method is called.
|
Iterator |
getAllPropertyNames()
Returns an Iterator view of the names of the properties
in this MessageContext and any parents of the LockableHashtable
|
AxisEngine |
getAxisEngine()
Get the axis engine.
|
ClassLoader |
getClassLoader()
Get the classloader, implicitly binding to the thread context
classloader if an override has not been supplied.
|
static MessageContext |
getCurrentContext()
Get the active message context.
|
Message |
getCurrentMessage()
Return the current (i.e. request before the pivot, response after)
message.
|
String |
getEncodingStyle()
Returns the encoding style as a URI that should be used for the SOAP
message.
|
boolean |
getMaintainSession()
Discover if we are maintaining session state.
|
SOAPMessage |
getMessage()
Gets the SOAPMessage from this message context.
|
OperationDesc |
getOperation()
The current operation.
|
OperationDesc |
getOperationByQName(QName qname)
get the first possible operation that could match a
body containing an element of the given QName.
|
Style |
getOperationStyle()
Get the operation style.
|
Use |
getOperationUse()
Get the operation use.
|
String |
getPassword()
Get the password.
|
boolean |
getPastPivot()
Determine when we've passed the pivot.
|
OperationDesc[] |
getPossibleOperationsByQName(QName qname)
Returns a list of operation descriptors that could may
possibly match a body containing an element of the given QName.
|
Object |
getProperty(String name)
Returns the value associated with the named property - or null if not
defined/set.
|
Iterator |
getPropertyNames()
Returns an
Iterator view of the names of the properties in
this MessageContext. |
Message |
getRequestMessage()
Get the request message.
|
Message |
getResponseMessage()
Get the response message.
|
String[] |
getRoles()
Gets the SOAP actor roles associated with an execution of the
HandlerChain and its contained Handler
instances. |
SchemaVersion |
getSchemaVersion()
Get the XML schema version information.
|
SOAPService |
getService()
Get the
SOAPService used to handle services in this
context. |
Session |
getSession()
Get the current session.
|
String |
getSOAPActionURI()
Get the soapAction URI.
|
SOAPConstants |
getSOAPConstants()
Get the
SOAPConstants used by this message context. |
String |
getStrProp(String propName)
Get a
String property by name. |
String |
getTargetService()
Get the name of the targed service for this message.
|
int |
getTimeout()
Get timeout from our MessageContext.
|
String |
getTransportName()
The name of the transport for this context.
|
TypeMapping |
getTypeMapping()
Return the type mapping currently in scope for our encoding style.
|
TypeMappingRegistry |
getTypeMappingRegistry()
Get the currently in-scope type mapping registry.
|
String |
getUsername()
Get the user name.
|
boolean |
isClient()
Let us know whether this is the client or the server.
|
boolean |
isEncoded()
Indicates if the opration is encoded.
|
boolean |
isHighFidelity()
Read the high fidelity property.
|
boolean |
isPropertyTrue(String propName)
Tests to see if the named property is set in the 'bag', returning
false if it is not present at all. |
boolean |
isPropertyTrue(String propName,
boolean defaultVal)
Test if a property is set to something we consider to be true in the
'bag'.
|
void |
removeProperty(String propName)
Removes a property (name-value pair) from the
MessageContext. |
void |
reset()
Return this context to a clean state.
|
void |
setClassLoader(ClassLoader cl)
Set a new classloader.
|
void |
setCurrentMessage(Message curMsg)
Set the current message.
|
void |
setEncodingStyle(String namespaceURI)
Sets the encoding style to the URI passed in.
|
void |
setHighFidelity(boolean highFidelity)
Set the high fidelity propert.
|
void |
setMaintainSession(boolean yesno)
Set whether we are maintaining session state.
|
void |
setMessage(SOAPMessage message)
Sets the SOAPMessage for this message context.
|
void |
setOperation(OperationDesc operation)
Set the current operation.
|
void |
setPassword(String password)
Set the password.
|
void |
setPastPivot(boolean pastPivot)
Indicate when we've passed the pivot.
|
void |
setProperty(String name,
Object value)
Allows you to set a named property to the passed in value.
|
void |
setPropertyParent(Hashtable parent)
Set the Hashtable that contains the default values for our
properties.
|
void |
setRequestMessage(Message reqMsg)
Set the request message, and make sure that message is associated
with this MessageContext.
|
void |
setResponseMessage(Message respMsg)
Set the response message, and make sure that message is associated
with this MessageContext.
|
void |
setRoles(String[] roles)
Set the SOAP actor roles associated with an executioni of
CodeHandlerChain and its contained Handler
instances. |
void |
setSchemaVersion(SchemaVersion schemaVersion)
Set the XML schema version this message context will use.
|
void |
setService(SOAPService sh)
Set the
SOAPService used to handle services in this
context. |
void |
setSession(Session session)
Set the current session.
|
void |
setSOAPActionURI(String SOAPActionURI)
Set the soapAction URI.
|
void |
setSOAPConstants(SOAPConstants soapConstants)
Set the
SOAPConstants used by this message context. |
void |
setTargetService(String tServ)
Set the target service for this message.
|
void |
setTimeout(int value)
Set timeout in our MessageContext.
|
void |
setTransportName(String transportName)
Set the transport name for this context.
|
void |
setTypeMappingRegistry(TypeMappingRegistry reg)
Replace the engine's type mapping registry with a local one.
|
void |
setUsername(String username)
Set the username.
|
void |
setUseSOAPAction(boolean useSOAPAction)
Enable or dissable the use of soap action information.
|
boolean |
useSOAPAction()
Indicates wether the soap action URI is being used or not.
|
protected static org.apache.commons.logging.Log log
Log used for logging all messages.protected static String systemTempDir
public static final String ENGINE_HANDLER
public static final String TRANS_URL
public static final String QUIT_REQUESTED
public static final String AUTHUSER
public static final String CALL
public static final String IS_MSG
public static final String ATTACHMENTS_DIR
public static final String ACCEPTMISSINGPARAMS
public static final String WSDLGEN_INTFNAMESPACE
public static final String WSDLGEN_SERV_LOC_URL
public static final String HTTP_TRANSPORT_VERSION
public static final String SECURITY_PROVIDER
public MessageContext(AxisEngine engine)
engine - the controlling axis engine. Null is actually accepted here,
though passing a null engine in is strongly discouraged as many of the methods
assume that it is in fact defined.public OperationDesc getOperation()
nullpublic void setOperation(OperationDesc operation)
operation - the Operation this context is executingpublic OperationDesc[] getPossibleOperationsByQName(QName qname) throws AxisFault
qname - of the first element in the bodyAxisFault - if the operation names could not be looked uppublic OperationDesc getOperationByQName(QName qname) throws AxisFault
qname - name of the message bodyAxisFaultpublic static MessageContext getCurrentContext()
protected void finalize()
public void setTypeMappingRegistry(TypeMappingRegistry reg)
reg - the new TypeMappingRegistrypublic TypeMappingRegistry getTypeMappingRegistry()
public TypeMapping getTypeMapping()
public String getTransportName()
public void setTransportName(String transportName)
transportName - the name of the transportpublic SOAPConstants getSOAPConstants()
SOAPConstants used by this message context.public void setSOAPConstants(SOAPConstants soapConstants)
SOAPConstants used by this message context.
This may also affect the encoding style.soapConstants - the new soap constants to usepublic SchemaVersion getSchemaVersion()
SchemaVersion in usepublic void setSchemaVersion(SchemaVersion schemaVersion)
schemaVersion - the new SchemaVersionpublic Session getSession()
Session this message context is withinpublic void setSession(Session session)
session - the new Sessionpublic boolean isEncoded()
true if it is encoded, false otherwisepublic void setMaintainSession(boolean yesno)
yesno - flag to set to true to maintain sessionspublic boolean getMaintainSession()
true if we are maintaining state, false
otherwisepublic Message getRequestMessage()
public void setRequestMessage(Message reqMsg)
reqMsg - the new request Message.public Message getResponseMessage()
public void setResponseMessage(Message respMsg)
respMsg - the new response Message.public Message getCurrentMessage()
Messagepublic SOAPMessage getMessage()
getMessage in interface SOAPMessageContextSOAPMessage, null if no request
SOAPMessage is present in this
SOAPMessageContextpublic void setCurrentMessage(Message curMsg)
curMsg - the Message to assignpublic void setMessage(SOAPMessage message)
message to
Message and then passing it on to
setCurrentMessage().setMessage in interface SOAPMessageContextmessage - the SOAPMessage this context is forpublic boolean getPastPivot()
true if we have, false otherwisepublic void setPastPivot(boolean pastPivot)
pastPivot - true if we are past the pivot point, false otherwisepublic void setTimeout(int value)
value - the maximum amount of time, in millisecondspublic int getTimeout()
public ClassLoader getClassLoader()
public void setClassLoader(ClassLoader cl)
cl - the new ClassLoader or nullpublic String getTargetService()
public AxisEngine getAxisEngine()
null if the message was
created outside an enginepublic void setTargetService(String tServ) throws AxisFault
This looks up the named service in the registry, and has the side effect of setting our TypeMappingRegistry to the service's.
tServ - the name of the target serviceAxisFault - if anything goes wrong in resolving or setting the
servicepublic SOAPService getService()
SOAPService used to handle services in this
context.public void setService(SOAPService sh) throws AxisFault
SOAPService used to handle services in this
context. This method configures a wide range of
MessageContext properties to suit the handler.sh - the new service handlerAxisFault - if the service could not be setpublic boolean isClient()
public String getStrProp(String propName)
String property by name.propName - the name of the property to fetchClassCastException - if the property named does not have a
String valuepublic boolean isPropertyTrue(String propName)
false if it is not present at all.
This is equivalent to isPropertyTrue(propName, false).propName - the name of the property to checkpublic boolean isPropertyTrue(String propName, boolean defaultVal)
defaultVal is returned.Boolean, we'll return booleanValue()Integer, we'll return false
if its 0 else trueString we'll return false if its
"false"" or "0" else truetruepropName - the name of the property to checkdefaultVal - the default valuepublic void setProperty(String name, Object value)
setProperty in interface MessageContextname - Name of the propertyvalue - Value of the propertypublic boolean containsProperty(String name)
containsProperty in interface MessageContextname - Name of the property whose presense is to be testedpublic Iterator getPropertyNames()
Iterator view of the names of the properties in
this MessageContext.getPropertyNames in interface MessageContextIterator over all property namespublic Iterator getAllPropertyNames()
public Object getProperty(String name)
getProperty in interface MessageContextname - the property namepublic void setPropertyParent(Hashtable parent)
parent - public void setUsername(String username)
username - the new user namepublic String getUsername()
Stringpublic void setPassword(String password)
password - a String containing the new passwordpublic String getPassword()
Stringpublic Style getOperationStyle()
Style.RPC.Style of this messagepublic Use getOperationUse()
Usepublic void setUseSOAPAction(boolean useSOAPAction)
useSOAPAction - true if soap action URI information
should be used, false otherwisepublic boolean useSOAPAction()
true if it is, false otherwisepublic void setSOAPActionURI(String SOAPActionURI) throws IllegalArgumentException
SOAPActionURI - a String giving the new soap action
URIIllegalArgumentException - if the URI is not likedpublic String getSOAPActionURI()
public void setEncodingStyle(String namespaceURI)
namespaceURI - URI of the encoding to use.public String getEncodingStyle()
public void removeProperty(String propName)
MessageContextMessageContext.removeProperty in interface MessageContextpropName - the name of the property to be removedpublic void reset()
public boolean isHighFidelity()
Some behavior may be apropreate for high fidelity contexts that is not relevant for low fidelity ones or vica-versa.
true if the context is high fidelity,
false otherwisepublic void setHighFidelity(boolean highFidelity)
Users of the context may be changing what they do based upon this flag.
highFidelity - the new value of the highFidelity propertypublic String[] getRoles()
HandlerChain and its contained Handler
instances.
Not (yet) implemented method in the SOAPMessageContext interface.
Note: SOAP actor roles apply to the SOAP node and are managed
using HandlerChain.setRoles() and
HandlerChain.getRoles(). Handler instances in the
HandlerChain use this information about the SOAP actor roles
to process the SOAP header blocks. Note that the SOAP actor roles are
invariant during the processing of SOAP message through the
HandlerChain.
getRoles in interface SOAPMessageContextHandlerChain.setRoles(java.lang.String[]),
HandlerChain.getRoles()public void setRoles(String[] roles)
CodeHandlerChain and its contained Handler
instances.roles - an array of String instances, each representing
the URI for a SOAP actor rolepublic void dispose()
Copyright © The Apache Software Foundation. All Rights Reserved.