Package org.apache.axis.handlers
Class BasicHandler
java.lang.Object
org.apache.axis.handlers.BasicHandler
- All Implemented Interfaces:
Serializable,Handler
- Direct Known Subclasses:
AxisEngine,BasicProvider,CommonsHTTPSender,DebugHandler,EchoHandler,ErrorHandler,FaultableHandler,HTTPActionHandler,HTTPAuthHandler,HTTPSender,JavaSender,JAXRPCHandler,JMSSender,JWSHandler,LocalResponder,LocalSender,LogHandler,LogMessage,MailSender,MD5AttachHandler,MustUnderstandChecker,SimpleAuthenticationHandler,SimpleAuthorizationHandler,SimpleChain,SimpleSessionHandler,SOAPMonitorHandler,URLMapper
BasicHandler is a utility class which implements simple
property setting/getting behavior, and stubs out a lot of the Handler
methods. Extend this class to make writing your Handlers easier, and
then override what you need to.- Author:
- Glen Daniels (gdaniels@allaire.com), Doug Davis (dug@us.ibm.com
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancanHandleBlock(QName qname) Indicate if this handler can processqname.voidcleanup()Cleanup is called when the chain containing this Handler object is done processing the chain.voidgenerateWSDL(MessageContext msgContext) Obtain WSDL information.This will return the root element of an XML doc that describes the deployment information about this handler.getName()Return the name (i.e.Returns the option corresponding to the 'name' givenReturn the entire list of optionsReturn a list of QNames which this Handler understands.voidinit()Stubbed-out methods.protected voidvoidonFault(MessageContext msgContext) Called when a subsequent handler throws a fault.voidSet the name (i.e.voidSet the given option (name/value) in this handler's bag of optionsbooleansetOptionDefault(String name, Object value) Set a default value for the given option: if the option is not already set, then set it.voidsetOptions(Hashtable opts) Sets a whole list of options.protected voidsetOptionsLockable(boolean makeLockable) Should this Handler use a LockableHashtable for options? Default is 'false'.
-
Field Details
-
makeLockable
protected boolean makeLockable -
options
-
name
-
-
Constructor Details
-
BasicHandler
public BasicHandler()
-
-
Method Details
-
setOptionsLockable
protected void setOptionsLockable(boolean makeLockable) Should this Handler use a LockableHashtable for options? Default is 'false'. -
initHashtable
protected void initHashtable() -
init
public void init()Stubbed-out methods. Override in your child class to implement any real behavior. Note that there is NOT a stub for invoke(), since we require any Handler derivative to implement that. -
cleanup
public void cleanup()Description copied from interface:HandlerCleanup is called when the chain containing this Handler object is done processing the chain. -
canHandleBlock
Description copied from interface:HandlerIndicate if this handler can processqname.- Specified by:
canHandleBlockin interfaceHandler- Parameters:
qname- theQNameto check- Returns:
- true if this
Handlercan handleqname, false otherwise
-
onFault
Description copied from interface:HandlerCalled when a subsequent handler throws a fault. -
setOption
Set the given option (name/value) in this handler's bag of options -
setOptionDefault
Set a default value for the given option: if the option is not already set, then set it. if the option is already set, then do not set it.If this is called multiple times, the first with a non-null value if 'value' will set the default, remaining calls will be ignored.
Returns true if value set (by this call), otherwise false;
-
getOption
Returns the option corresponding to the 'name' given -
getOptions
Return the entire list of options- Specified by:
getOptionsin interfaceHandler- Returns:
- a
Hashsetcontaining all name/value pairs
-
setOptions
Description copied from interface:HandlerSets a whole list of options.- Specified by:
setOptionsin interfaceHandler- Parameters:
opts- aHashtableof name-value pairs to use
-
setName
Set the name (i.e. registry key) of this Handler -
getName
Return the name (i.e. registry key) for this Handler -
getDeploymentData
Description copied from interface:HandlerThis will return the root element of an XML doc that describes the deployment information about this handler. This is NOT the WSDL, this is all of the static internal data use by Axis - WSDL takes into account run-time information (like which service we're talking about) this is just the data that's stored in the registry. Used by the 'list' Admin function.- Specified by:
getDeploymentDatain interfaceHandler- Parameters:
doc- aDocumentwithin which to build the deployment data- Returns:
- an Element representing the deployment data
-
generateWSDL
Description copied from interface:HandlerObtain WSDL information. Some Handlers will implement this by merely setting properties in the MessageContext, others (providers) will take responsibility for doing the "real work" of generating WSDL for a given service.- Specified by:
generateWSDLin interfaceHandler- Parameters:
msgContext- theMessageContextto generate the WSDL to- Throws:
AxisFault- if there was a problem generating the WSDL
-
getUnderstoodHeaders
Return a list of QNames which this Handler understands. By returning a particular QName here, we are committing to fulfilling any contracts defined in the specification of the SOAP header with that QName.- Specified by:
getUnderstoodHeadersin interfaceHandler- Returns:
- a List of
QNameinstances
-