org.glassfish.grizzly.smart.transformers
Class ArrayEncoder

java.lang.Object
  extended by org.glassfish.grizzly.AbstractTransformer<E,Buffer>
      extended by org.glassfish.grizzly.smart.transformers.AbstractSmartMemberEncoder<E>
          extended by org.glassfish.grizzly.smart.transformers.SequenceEncoder<Object>
              extended by org.glassfish.grizzly.smart.transformers.ArrayEncoder
All Implemented Interfaces:
SmartMemberTransformer<Object,Buffer>, Transformer<Object,Buffer>

public class ArrayEncoder
extends SequenceEncoder<Object>

Author:
oleksiys

Field Summary
protected  Attribute<Integer> currentElementIdxAttribute
           
 
Fields inherited from class org.glassfish.grizzly.smart.transformers.SequenceEncoder
componentEncoder, componentType, config
 
Fields inherited from class org.glassfish.grizzly.smart.transformers.AbstractSmartMemberEncoder
messageProcessingTreeAttribute
 
Fields inherited from class org.glassfish.grizzly.AbstractTransformer
attributeBuilder, incompletedResult, inputBufferAttribute, lastResultAttribute, outputBufferAttribute
 
Constructor Summary
ArrayEncoder()
           
 
Method Summary
protected  Object get(AttributeStorage storage, Object sequence)
          Gets a current sequence element.
protected  boolean next(AttributeStorage storage, Object sequence)
          Moves to next sequence element and makes it current.
protected  boolean previous(AttributeStorage storage, Object sequence)
          Moves to previous sequence element and makes it current.
 void release(AttributeStorage storage)
          The Transformer has done its work and can release all associated resource.
protected  void saveState(AttributeStorage storage, int currentElementIdx, TransformationResult<Buffer> lastResult)
           
protected  int size(AttributeStorage storage, Object sequence)
          Returns the size of the sequence.
 TransformationResult<Buffer> transform(AttributeStorage storage, Object input, Buffer output)
          Transforms an input data to some custom representation.
 
Methods inherited from class org.glassfish.grizzly.smart.transformers.SequenceEncoder
getComponentEncoder, getComponentType, getConfig, initialize, saveState, setComponentEncoder, setComponentType, setConfig
 
Methods inherited from class org.glassfish.grizzly.smart.transformers.AbstractSmartMemberEncoder
getCurrentMessageProcessingObject, getMessageProcessingTree
 
Methods inherited from class org.glassfish.grizzly.AbstractTransformer
getInput, getLastResult, getMemoryManager, getOutput, getProperties, getValue, getValue, hibernate, obtainMemoryManager, removeValue, setInput, setMemoryManager, setOutput, setValue, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.glassfish.grizzly.Transformer
getInput, getLastResult, getOutput, getProperties, hibernate, setInput, setOutput, transform
 

Field Detail

currentElementIdxAttribute

protected Attribute<Integer> currentElementIdxAttribute
Constructor Detail

ArrayEncoder

public ArrayEncoder()
Method Detail

transform

public TransformationResult<Buffer> transform(AttributeStorage storage,
                                              Object input,
                                              Buffer output)
                                       throws TransformationException
Description copied from interface: Transformer
Transforms an input data to some custom representation.

Specified by:
transform in interface Transformer<Object,Buffer>
Overrides:
transform in class SequenceEncoder<Object>
Parameters:
storage - the external state storage, where Transformer could retrieve or store its state.
Returns:
the result TransformationResult
Throws:
TransformationException

release

public void release(AttributeStorage storage)
Description copied from interface: Transformer
The Transformer has done its work and can release all associated resource.

Specified by:
release in interface Transformer<Object,Buffer>
Overrides:
release in class AbstractTransformer<Object,Buffer>
Parameters:
storage - the external state storage, where Transformer could retrieve or store its state.

get

protected Object get(AttributeStorage storage,
                     Object sequence)
Description copied from class: SequenceEncoder
Gets a current sequence element.

Specified by:
get in class SequenceEncoder<Object>
Parameters:
storage - attribute storage.
sequence - sequence object.
Returns:
component sequence element.

previous

protected boolean previous(AttributeStorage storage,
                           Object sequence)
Description copied from class: SequenceEncoder
Moves to previous sequence element and makes it current. Returns true, if there is previous elements in sequence, or false otherwise.

Specified by:
previous in class SequenceEncoder<Object>
Parameters:
storage - attribute storage.
sequence - sequence object.
Returns:
true, if there is previous elements in sequence, or false otherwise.

next

protected boolean next(AttributeStorage storage,
                       Object sequence)
Description copied from class: SequenceEncoder
Moves to next sequence element and makes it current. Returns true, if there is next elements in sequence, or false otherwise.

Specified by:
next in class SequenceEncoder<Object>
Parameters:
storage - attribute storage.
sequence - sequence object.
Returns:
true, if there is next elements in sequence, or false otherwise.

size

protected int size(AttributeStorage storage,
                   Object sequence)
Description copied from class: SequenceEncoder
Returns the size of the sequence.

Specified by:
size in class SequenceEncoder<Object>
Parameters:
storage - attribute storage.
sequence - sequence object.
Returns:
the size of the sequence.

saveState

protected void saveState(AttributeStorage storage,
                         int currentElementIdx,
                         TransformationResult<Buffer> lastResult)


Copyright © 2009 SUN Microsystems. All Rights Reserved.