|
Open Business Objects for EDI v3.5.2 |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectcom.americancoders.edi.Tokenizer
class to assist in tokenizing input transaction sets
x12 field seperator uses 3rd byte of input string
x12 segment separator uses 16th field + 1 byte field, if it sees a cr character then checks for a lf character and then assumes a \\n character
EDIFact uses different control positions. see header segment.
OBOE - Open Business Objects for EDI
Part of the OBOE Basic Extended Package
An EDI and XML Translator Written In Java
Copyright 1998-2007 - American Coders, LTD - Raleigh NC USA
All rights reserved
American Coders, Ltd
P. O. Box 97462
Raleigh, NC 27624 USA
1-919-846-2014
http://www.americancoders.com
| Field Summary | |
protected java.lang.String |
currentDataElement
String current data element value |
protected java.lang.String |
currentSegID
|
protected IDataTokenizer |
currentTokenizer
String current tokenizer |
protected java.lang.String |
currentTokenStringToken
String current token |
protected int |
dataelementPos
String position within |
protected boolean |
dataElementReady
boolean has it been processed yet? |
protected DocumentErrors |
dErr
|
protected java.lang.String |
escapeCharacters
allow token characters in text |
protected char |
repeatChar
token the breaks up repeating elements |
protected SegmentContainer |
requestingContainer
|
protected int |
segmentPos
String position within |
protected java.lang.StringBuffer |
separators
all the tokens separator |
protected char[] |
tokenGroups
String simple array for helper routine |
protected java.lang.String |
tokenSeperatorCharacter
Characeter that breaks up fields |
protected IDataTokenizer |
transactionSetTokenizer
StringTokenizer data contents |
| Constructor Summary | |
Tokenizer(DocumentErrors inDErr)
builds the parsing object for a transaction set |
|
| Method Summary | |
int |
countDataElements()
returns a count of dataelements in segment |
java.lang.String |
getCurrentDataElement()
returns the currently parsed data element. |
java.lang.String |
getCurrentTokenStringToken()
returns the segment string // used by edifact envelope parser |
java.lang.String |
getDataElementAt(int pos)
returns the data element parsed at a particular postion |
int |
getDataElementPos()
returns the position of the current dataelement being tokenized. |
java.lang.String |
getElementSeparator()
returns the element delimiter |
java.lang.String |
getEscapeCharacters()
returns the escape character string |
int |
getInputByteCount()
returns the byte positin in the input stream of the current token |
SegmentContainer |
getLastSegmentContainer()
returns the last segment container that made a getNextSegment request |
java.lang.String |
getNextDataElement()
returns the next data element to be parsed |
IDataTokenizer |
getNextSegment(SegmentContainer inSegContainer)
returns the next segment to be parsed |
java.lang.String |
getRepeaterCharacter()
returns the repeater delimiter |
DocumentErrors |
getReportError()
gets the DocumentErrors object |
java.lang.String |
getRestOfSegment()
helper routine for edifact UNA segment |
java.lang.String |
getSegmentID()
returns what is suppose to be the id of the segment being parsed. |
int |
getSegmentPos()
returns the position (line number?) |
java.lang.String |
getSeparators()
return the separator characters that were used to parse the document |
java.lang.String |
getVersion()
returns the version id in the header segments presently only works for X12 field I11. |
boolean |
hasMoreDataElements()
indicates if there are more data elements to parse |
boolean |
hasMoreSegments()
indicates if there are more segments to parse |
boolean |
isThereADataElement()
indicates if there is data element to parse |
IDataTokenizer |
makeSubfieldTokenizer()
returns a subfield tokeinzer |
void |
reportError(java.lang.String inDescription)
adds an error description to the OBOEParserErrors object |
void |
reportError(java.lang.String inDescription,
SegmentContainer inRequestingContainer,
java.lang.String inCode,
java.lang.Object inObject,
int inLevel)
adds an error description to the OBOEParserErrors object |
void |
reportError(java.lang.String inDescription,
java.lang.String inCode)
adds an error description to the OBOEParserErrors object |
IDataTokenizer |
resetSegment()
resets the current segment to the beginning - an inverse look-ahead method |
void |
setLastSegmentContainer(SegmentContainer inSC)
sets the last segment container that made a getNextSegment request |
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
protected IDataTokenizer transactionSetTokenizer
protected java.lang.String currentTokenStringToken
protected IDataTokenizer currentTokenizer
protected java.lang.String currentDataElement
protected boolean dataElementReady
protected int segmentPos
protected int dataelementPos
protected java.lang.String tokenSeperatorCharacter
protected char[] tokenGroups
protected java.lang.String escapeCharacters
protected java.lang.StringBuffer separators
protected SegmentContainer requestingContainer
protected DocumentErrors dErr
protected java.lang.String currentSegID
protected char repeatChar
| Constructor Detail |
public Tokenizer(DocumentErrors inDErr)
throws OBOEException
inDErr - DocumentError
OBOEException - invalid token most likely| Method Detail |
public java.lang.String getSeparators()
public java.lang.String getVersion()
public IDataTokenizer getNextSegment(SegmentContainer inSegContainer)
getNextSegment in interface ITokenizerinSegContainer - SegmentContainer requesting the next segment.
Used for error handling and recovery.
public java.lang.String getRestOfSegment()
public boolean hasMoreSegments()
hasMoreSegments in interface ITokenizerpublic IDataTokenizer resetSegment()
resetSegment in interface ITokenizerpublic int getSegmentPos()
getSegmentPos in interface ITokenizerpublic int countDataElements()
countDataElements in interface ITokenizerpublic java.lang.String getCurrentDataElement()
getCurrentDataElement in interface ITokenizerpublic java.lang.String getNextDataElement()
getNextDataElement in interface ITokenizerpublic java.lang.String getDataElementAt(int pos)
getDataElementAt in interface ITokenizerpos - int
public boolean hasMoreDataElements()
hasMoreDataElements in interface ITokenizerpublic boolean isThereADataElement()
isThereADataElement in interface ITokenizerpublic int getDataElementPos()
getDataElementPos in interface ITokenizerpublic IDataTokenizer makeSubfieldTokenizer()
makeSubfieldTokenizer in interface ITokenizerpublic java.lang.String getCurrentTokenStringToken()
public void reportError(java.lang.String inDescription)
reportError in interface ITokenizerinDescription - description of the error,
public void reportError(java.lang.String inDescription,
SegmentContainer inRequestingContainer,
java.lang.String inCode,
java.lang.Object inObject,
int inLevel)
reportError in interface ITokenizerinDescription - description of the error,inRequestingContainer - segment, table...inCode - err codeinObject - object reporting the errorinLevel - int error level
public void reportError(java.lang.String inDescription,
java.lang.String inCode)
inDescription - description of the error,inCode - err codepublic DocumentErrors getReportError()
public void setLastSegmentContainer(SegmentContainer inSC)
inSC - a SegmentContainerpublic SegmentContainer getLastSegmentContainer()
public java.lang.String getEscapeCharacters()
getEscapeCharacters in interface ITokenizerpublic java.lang.String getSegmentID()
public java.lang.String getRepeaterCharacter()
ITokenizer
getRepeaterCharacter in interface ITokenizerITokenizer.getRepeaterCharacter()public java.lang.String getElementSeparator()
ITokenizer
getElementSeparator in interface ITokenizerITokenizer.getElementSeparator()public int getInputByteCount()
getInputByteCount in interface ITokenizerpublic java.lang.String toString()
toString in interface ITokenizer
|
Open Business Objects for EDI v3.5.2 |
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||