|
BeanIO 2.0.4 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.beanio.internal.util.TreeNode<Component> org.beanio.internal.parser.Component org.beanio.internal.parser.ParserComponent org.beanio.internal.parser.Segment
public class Segment
A segment is used aggregate other Parser
components, such as fields
and other segments.
A segment may be bound to a Property
by calling
setProperty(Property)
.
Repeating segments will always marshal a value when marshal(MarshallingContext)
is called. If not repeating, lazy segments are only marshalled if hasContent(ParsingContext)
returns true.
Constructor Summary | |
---|---|
Segment()
Constructs a new Segment. |
Method Summary | |
---|---|
void |
clearValue(ParsingContext context)
Clears the current property value. |
Property |
getProperty()
|
int |
getSize()
Returns the size of a single occurrence of this element, which is used to offset field positions for repeating segments and fields. |
Object |
getValue(ParsingContext context)
Returns the unmarshalled property value. |
boolean |
hasContent(ParsingContext context)
Returns whether this parser or any of its descendant have content for marshalling. |
boolean |
isExistencePredetermined()
|
boolean |
isIdentifier()
Returns whether this parser or any descendant of this parser is used to identify a record during unmarshalling. |
boolean |
isLazy()
Returns whether this node must exist during unmarshalling. |
boolean |
isRepeating()
|
boolean |
marshal(MarshallingContext context)
Marshals a record. |
boolean |
matches(UnmarshallingContext context)
Returns whether this parser and its children match a record being unmarshalled. |
void |
registerLocals(Set<ParserLocal<?>> locals)
Called by a stream to register variables stored in the parsing context. |
void |
setExistencePredetermined(boolean existencePredetermined)
|
void |
setIdentifier(boolean identifier)
|
void |
setLazy(boolean lazy)
|
void |
setProperty(Property property)
|
void |
setRepeating(boolean repeating)
|
void |
setSize(int size)
|
void |
setValue(ParsingContext context,
Object value)
Sets the property value for marshaling. |
protected void |
toParamString(StringBuilder s)
Called by TreeNode.toString() to append node parameters to the output. |
boolean |
unmarshal(UnmarshallingContext context)
Unmarshals a record. |
Methods inherited from class org.beanio.internal.parser.ParserComponent |
---|
isSupportedChild |
Methods inherited from class org.beanio.internal.util.TreeNode |
---|
add, clone, find, getChildren, getFirst, getName, iterator, print, setName, size, sort, toString, updateReferences |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.beanio.internal.parser.Parser |
---|
getName |
Constructor Detail |
---|
public Segment()
Method Detail |
---|
public void clearValue(ParsingContext context)
Parser
context
- the ParsingContext
public boolean matches(UnmarshallingContext context)
Parser
context
- the UnmarshallingContext
public boolean unmarshal(UnmarshallingContext context)
Parser
context
- the UnmarshallingContext
public boolean marshal(MarshallingContext context) throws IOException
Parser
context
- the MarshallingContext
IOException
- if an I/O error occurspublic boolean hasContent(ParsingContext context)
Parser
context
- the ParsingContext
public Object getValue(ParsingContext context)
Parser
context
- the ParsingContext
public void setValue(ParsingContext context, Object value)
Parser
context
- the ParsingContext
value
- the property valuepublic Property getProperty()
public void setProperty(Property property)
public boolean isLazy()
Parser
public void setLazy(boolean lazy)
public void setSize(int size)
public int getSize()
Parser
The concept of size is dependent on the stream format. The size of an element in a fixed length stream format is determined by the length of the element in characters, while other stream formats calculate size based on the number of fields. Some stream formats, such as XML, may ignore size settings.
public boolean isIdentifier()
Parser
public void setIdentifier(boolean identifier)
public void registerLocals(Set<ParserLocal<?>> locals)
Component
registerLocals
in class Component
locals
- set of local variablespublic boolean isExistencePredetermined()
public void setExistencePredetermined(boolean existencePredetermined)
public boolean isRepeating()
public void setRepeating(boolean repeating)
protected void toParamString(StringBuilder s)
TreeNode
TreeNode.toString()
to append node parameters to the output.
toParamString
in class TreeNode<Component>
s
- the output to append
|
BeanIO 2.0.4 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |