org.apache.axis.encoding.ser

Class OctetStreamDataHandlerDeserializer

Implemented Interfaces:
Deserializer, java.io.Serializable, Callback, Deserializer, Deserializer

public class OctetStreamDataHandlerDeserializer
extends JAFDataHandlerDeserializer

application/octet-stream DataHandler Deserializer Modified by Davanum Srinivas <dims@yahoo.com>

Field Summary

protected static Log
log

Fields inherited from class org.apache.axis.encoding.ser.JAFDataHandlerDeserializer

log

Fields inherited from class org.apache.axis.encoding.DeserializerImpl

componentsReadyFlag, defaultType, id, isEnded, isHref, isNil, log, targets, value

Fields inherited from class org.apache.axis.message.SOAPHandler

myElement

Method Summary

void
startElement(String namespace, String localName, String prefix, Attributes attributes, DeserializationContext context)
This method is invoked when an element start tag is encountered.

Methods inherited from class org.apache.axis.encoding.ser.JAFDataHandlerDeserializer

onStartChild, startElement

Methods inherited from class org.apache.axis.encoding.DeserializerImpl

addChildDeserializer, componentsReady, endElement, getDefaultType, getMechanismType, getValue, getValue, getValueTargets, moveValueTargets, onEndElement, onStartChild, onStartElement, registerValueTarget, removeValueTargets, setChildValue, setDefaultType, setValue, setValue, startElement, valueComplete

Methods inherited from class org.apache.axis.message.SOAPHandler

characters, endElement, makeNewElement, onEndChild, onStartChild, startElement

Field Details

log

protected static Log log

Method Details

startElement

public void startElement(String namespace,
                         String localName,
                         String prefix,
                         Attributes attributes,
                         DeserializationContext context)
            throws SAXException
This method is invoked when an element start tag is encountered. DeserializerImpl provides default behavior, which involves the following: - directly handling the deserialization of a nill value - handling the registration of the id value. - handling the registration of a fixup if this element is an href. - calling onStartElement to do the actual deserialization if not nill or href cases.
Specified by:
startElement in interface Deserializer
Overrides:
startElement in interface JAFDataHandlerDeserializer

Parameters:
namespace - is the namespace of the element
localName - is the name of the element
attributes - are the attributes on the element...used to get the type
context - is the DeserializationContext Normally a specific Deserializer (FooDeserializer) should extend DeserializerImpl. Here is the flow that will occur in such cases: 1) DeserializerImpl.startElement(...) will be called and do the id/href/nill stuff. 2) If real deserialization needs to take place DeserializerImpl.onStartElement will be invoked, which will attempt to install the specific Deserializer (FooDeserializer) 3) The FooDeserializer.startElement(...) will be called to do the Foo specific stuff. This results in a call to FooDeserializer.onStartElement(...) if startElement was not overridden. 4) The onChildElement(...) method is called for each child element. Nothing occurs if not overridden. The FooDeserializer.onStartChild(...) method should return the deserializer for the child element. 5) When the end tag is reached, the endElement(..) method is invoked. The default behavior is to handle hrefs/ids, call onEndElement and then call the Deserializer valueComplete method. So the methods that you potentially want to override are: onStartElement, onStartChild, componentsReady, set(object, hint) You probably should not override startElement or endElement. If you need specific behaviour at the end of the element consider overriding onEndElement. See the pre-existing Deserializers for more information.


Copyright B) 2005 Apache Web Services Project. All Rights Reserved.