org.apache.tuscany.sca.contribution.processor
Class ExtensibleStAXAttributeProcessor

java.lang.Object
  extended by org.apache.tuscany.sca.contribution.processor.ExtensibleStAXAttributeProcessor
All Implemented Interfaces:
ArtifactProcessor<java.lang.Object>, StAXAttributeProcessor<java.lang.Object>

public class ExtensibleStAXAttributeProcessor
extends java.lang.Object
implements StAXAttributeProcessor<java.lang.Object>

Implementation of an extensible StAX attribute processor. Takes a StAXAttributeProcessorExtensionPoint and delegates to the proper StAXAttributeProcessor by attribute QName


Constructor Summary
ExtensibleStAXAttributeProcessor(StAXAttributeProcessorExtensionPoint processors, javax.xml.stream.XMLInputFactory inputFactory, javax.xml.stream.XMLOutputFactory outputFactory, Monitor monitor)
          Constructs a new ExtensibleStAXArtifactProcessor.
 
Method Summary
 javax.xml.namespace.QName getArtifactType()
          Returns the type of artifact handled by this artifact processor.
 java.lang.Class<java.lang.Object> getModelType()
          Returns the type of model handled by this artifact processor.
<M> M
read(java.io.InputStream is, java.lang.Class<M> type)
          Read a model from an InputStream.
 java.lang.Object read(javax.xml.namespace.QName attributeName, javax.xml.stream.XMLStreamReader source)
          Reads a model from an XMLStreamReader.
 void resolve(java.lang.Object model, ModelResolver resolver)
          Resolve references from this model to other models.
 void write(java.lang.Object model, java.io.OutputStream os)
          Write a model to an OutputStream.
 void write(java.lang.Object model, javax.xml.stream.XMLStreamWriter outputSource)
          Writes a model to an XMLStreamWriter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExtensibleStAXAttributeProcessor

public ExtensibleStAXAttributeProcessor(StAXAttributeProcessorExtensionPoint processors,
                                        javax.xml.stream.XMLInputFactory inputFactory,
                                        javax.xml.stream.XMLOutputFactory outputFactory,
                                        Monitor monitor)
Constructs a new ExtensibleStAXArtifactProcessor.

Parameters:
processors -
inputFactory -
outputFactory -
Method Detail

read

public java.lang.Object read(javax.xml.namespace.QName attributeName,
                             javax.xml.stream.XMLStreamReader source)
                      throws ContributionReadException,
                             javax.xml.stream.XMLStreamException
Description copied from interface: StAXAttributeProcessor
Reads a model from an XMLStreamReader.

Specified by:
read in interface StAXAttributeProcessor<java.lang.Object>
source - The XMLStreamReader
Returns:
A model representation of the input.
Throws:
ContributionReadException
javax.xml.stream.XMLStreamException

write

public void write(java.lang.Object model,
                  javax.xml.stream.XMLStreamWriter outputSource)
           throws ContributionWriteException,
                  javax.xml.stream.XMLStreamException
Description copied from interface: StAXAttributeProcessor
Writes a model to an XMLStreamWriter.

Specified by:
write in interface StAXAttributeProcessor<java.lang.Object>
Parameters:
model - A model representing the source
outputSource - The XML stream writer
Throws:
ContributionWriteException
javax.xml.stream.XMLStreamException

resolve

public void resolve(java.lang.Object model,
                    ModelResolver resolver)
             throws ContributionResolveException
Description copied from interface: ArtifactProcessor
Resolve references from this model to other models. For example references from a composite to another one, or references from a composite to a WSDL model.

Specified by:
resolve in interface ArtifactProcessor<java.lang.Object>
Parameters:
model - The model to resolve
resolver - The resolver to use to resolve referenced models
Throws:
ContributionResolveException

read

public <M> M read(java.io.InputStream is,
                  java.lang.Class<M> type)
       throws ContributionReadException
Read a model from an InputStream.

Parameters:
is - The artifact InputStream
type - Model type
Returns:
The model
Throws:
ContributionReadException

write

public void write(java.lang.Object model,
                  java.io.OutputStream os)
           throws ContributionWriteException
Write a model to an OutputStream.

Parameters:
model -
os -
Throws:
ContributionWriteException

getArtifactType

public javax.xml.namespace.QName getArtifactType()
Description copied from interface: StAXAttributeProcessor
Returns the type of artifact handled by this artifact processor.

Specified by:
getArtifactType in interface StAXAttributeProcessor<java.lang.Object>
Returns:
The type of artifact handled by this artifact processor

getModelType

public java.lang.Class<java.lang.Object> getModelType()
Description copied from interface: ArtifactProcessor
Returns the type of model handled by this artifact processor.

Specified by:
getModelType in interface ArtifactProcessor<java.lang.Object>
Returns:
The type of model handled by this artifact processor