com.americancoders.edi.fixformat
Class FixformatTokenizer
java.lang.Object
|
+--com.americancoders.edi.fixformat.FixformatTokenizer
- public class FixformatTokenizer
- extends java.lang.Object
- implements ITokenizer
Tokenizer to work with flat EDI files like SAP
- Version:
- $Revision:$
- Author:
- S.Heller
Inner Class Summary |
class |
FixformatTokenizer.FixformatDataTokenizer
Tokenizer to separate the data elements of a single
segment by looking up the DE length in the templated
of every DE, as defined in the .xml rules file |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
rb
protected java.util.ResourceBundle rb
- ResourceBundle to localize the error messages
tokenizerFileSegment
protected java.util.StringTokenizer tokenizerFileSegment
- Tokenizer to separate segments
tokenizerSegment
protected FixformatTokenizer.FixformatDataTokenizer tokenizerSegment
actualSegmentString
protected java.lang.String actualSegmentString
actualSegment
protected TemplateSegment actualSegment
hashMapSegment
protected java.util.HashMap hashMapSegment
- HashMap containing segment templates:
key: segment name,
object: segment
segmentIdLength
protected int segmentIdLength
- identifier length used to identify the segment name of a segment
FixformatTokenizer
public FixformatTokenizer(java.lang.String inputString,
java.lang.String segmentDelimiter,
TransactionSet transactionSet,
int segmentIdLength)
- Parameters:
segmentDelimiter
- String with characters that may separate segmentsinpoutString
- classic EDI data to be parsedtransactionSet
- TransactionSet created of parsed rules filesegmentIdLength
- Length of the segmentId, is used to identify the actual segment
and to get its dataelement length.
setSegment
protected void setSegment(java.lang.String segmentId)
- Gets the segment template of the global hashmap and sets it as actual segment
- Parameters:
segmentId
- Trimed segment identifier, e.g. "E2EDK03"
buildHashMapSegment
protected java.util.HashMap buildHashMapSegment(TransactionSet transactionSet)
- Builds up a hashMap containing all templates of used segments
as defined in the rules .xml file
- Parameters:
transactionSet
- Set of templates used to get length of dataelements
countDataElements
public int countDataElements()
- Counts the number of data elements of the actual segment
- Specified by:
- countDataElements in interface ITokenizer
countSegments
public int countSegments()
- Counts the number of segments of the file
- Specified by:
- countSegments in interface ITokenizer
getCurrentDataElement
public java.lang.String getCurrentDataElement()
- Specified by:
- getCurrentDataElement in interface ITokenizer
getDataElementPos
public int getDataElementPos()
- Specified by:
- getDataElementPos in interface ITokenizer
getNextDataElement
public java.lang.String getNextDataElement()
- Specified by:
- getNextDataElement in interface ITokenizer
getNextSegment
public IDataTokenizer getNextSegment()
- Specified by:
- getNextSegment in interface ITokenizer
getSegmentPos
public int getSegmentPos()
- Specified by:
- getSegmentPos in interface ITokenizer
hasMoreDataElements
public boolean hasMoreDataElements()
- Specified by:
- hasMoreDataElements in interface ITokenizer
hasMoreSegments
public boolean hasMoreSegments()
- Specified by:
- hasMoreSegments in interface ITokenizer
isThereADataElement
public boolean isThereADataElement()
- Specified by:
- isThereADataElement in interface ITokenizer
resetSegment
public IDataTokenizer resetSegment()
- Specified by:
- resetSegment in interface ITokenizer
makeSubfieldTokenizer
public IDataTokenizer makeSubfieldTokenizer()
- Specified by:
- makeSubfieldTokenizer in interface ITokenizer