com.ctc.wstx.io
Class CharArraySource

java.lang.Object
  extended by com.ctc.wstx.io.WstxInputSource
      extended by com.ctc.wstx.io.BaseInputSource
          extended by com.ctc.wstx.io.CharArraySource

public final class CharArraySource
extends BaseInputSource

Input source that reads input from a static char array, usually used when expanding internal entities. It can also be used if the input given is a raw character array.


Field Summary
 
Fields inherited from class com.ctc.wstx.io.BaseInputSource
mBuffer, mInputLen
 
Fields inherited from class com.ctc.wstx.io.WstxInputSource
mParent
 
Method Summary
 void close()
          Method reader calls for this input source when it has encountered EOF.
 void closeCompletely()
          Method reader MAY call to force full closing of the underlying input stream(s)/reader(s).
protected  void doInitInputLocation(WstxInputData reader)
          Unlike with reader source, we won't start from beginning of a file, but usually from somewhere in the middle...
 boolean fromInternalEntity()
          This is a hard-coded assumption, but yes, for now this source is only created from internal entities.
 int readInto(WstxInputData reader)
          Method called to read at least one more char from input source, and update input data appropriately.
 boolean readMore(WstxInputData reader, int minAmount)
          Method called by reader when it has to have at least specified number of consequtive input characters in its buffer, and it currently does not have.
 
Methods inherited from class com.ctc.wstx.io.BaseInputSource
getLocation, getLocation, getPublicId, getSource, getSystemId, restoreContext, saveContext
 
Methods inherited from class com.ctc.wstx.io.WstxInputSource
getEntityId, getParent, getScopeId, initInputLocation, isOrIsExpandedFrom, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

fromInternalEntity

public boolean fromInternalEntity()
This is a hard-coded assumption, but yes, for now this source is only created from internal entities.

Specified by:
fromInternalEntity in class BaseInputSource
Returns:
True, if this input source was directly expanded from an internal entity (general, parsed); false if not (from external entity, DTD ext. subset, main document)

doInitInputLocation

protected void doInitInputLocation(WstxInputData reader)
Unlike with reader source, we won't start from beginning of a file, but usually from somewhere in the middle...

Specified by:
doInitInputLocation in class BaseInputSource

readInto

public int readInto(WstxInputData reader)
Description copied from class: WstxInputSource
Method called to read at least one more char from input source, and update input data appropriately.

Specified by:
readInto in class BaseInputSource
Returns:
Number of characters read from the input source (at least 1), if it had any input; -1 if input source has no more input.

readMore

public boolean readMore(WstxInputData reader,
                        int minAmount)
Description copied from class: WstxInputSource
Method called by reader when it has to have at least specified number of consequtive input characters in its buffer, and it currently does not have. If so, it asks input source to do whatever it has to do to try to get more data, if possible (including moving stuff in input buffer if necessary and possible).

Specified by:
readMore in class BaseInputSource
Returns:
True if input source was able to provide specific number of characters or more; false if not. In latter case, source is free to return zero or more characters any way.

close

public void close()
Description copied from class: WstxInputSource
Method reader calls for this input source when it has encountered EOF. This may or may not close the underlying stream/reader; what happens depends on configuration

Specified by:
close in class BaseInputSource

closeCompletely

public void closeCompletely()
Description copied from class: WstxInputSource
Method reader MAY call to force full closing of the underlying input stream(s)/reader(s). No checks are done regarding configuration, but input source object is to deal gracefully with multiple calls (ie. it's not an error for reader to call this more than once).

Specified by:
closeCompletely in class WstxInputSource