Class BindyFixedLengthFactory
java.lang.Object
org.apache.camel.dataformat.bindy.BindyAbstractFactory
org.apache.camel.dataformat.bindy.BindyFixedLengthFactory
- All Implemented Interfaces:
BindyFactory
The BindyFixedLengthFactory is the class who allows to : Generate a model associated to a fixed length record, bind
data from a record to the POJOs, export data of POJOs to a fixed length record and format data into String, Date,
Double, ... according to the format/pattern defined
-
Field Summary
Fields inherited from class org.apache.camel.dataformat.bindy.BindyAbstractFactory
annotatedLinkFields, crlf, eol, formatFactory, modelClassNames, models
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
bind
(org.apache.camel.CamelContext camelContext, String recordStr, Map<String, Object> model, int line) void
bind
(org.apache.camel.CamelContext camelContext, List<String> data, Map<String, Object> model, int line) The bind allow to read the content of a record (expressed as a List) and map it to the model classes. Class<?>
footer()
Gets the type of the footer record.boolean
Flag indicating if we have a footerboolean
Flag indicating if we have a headerClass<?>
header()
Gets the type of the header record.void
Find fields annotated in each class of the modelvoid
method uses to initialize the model representing the classes who will bind the data.boolean
Flag indicating whether graphemes or codepoints are counted.boolean
isFooter()
Flag indicating whether this factory is for a footerboolean
isHeader()
Flag indicating whether this factory is for a headerboolean
Flag indicating whether too short lines are ignoredboolean
Flag indicating whether trailing characters beyond the last declared field may be ignoredchar
Padding char used to fill the fieldint
Expected fixed length of the recordboolean
Flag indicating whether to skip the footer processingboolean
Flag indicating whether to skip the header parsingThe unbind is used to transform the content of the classes model objects into a string.Methods inherited from class org.apache.camel.dataformat.bindy.BindyAbstractFactory
factory, formatString, generateKey, getCarriageReturn, getDefaultValueForPrimitive, getEndOfLine, getLocale, initModel, link, setFormatFactory, setLocale, supportsModel
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.camel.dataformat.bindy.BindyFactory
initModel
-
Constructor Details
-
BindyFixedLengthFactory
- Throws:
Exception
-
-
Method Details
-
initFixedLengthModel
public void initFixedLengthModel()method uses to initialize the model representing the classes who will bind the data. This process will scan for classes according to the package name provided, check the annotated classes and fields -
initAnnotatedFields
public void initAnnotatedFields()Description copied from class:BindyAbstractFactory
Find fields annotated in each class of the model- Specified by:
initAnnotatedFields
in classBindyAbstractFactory
-
bind
public void bind(org.apache.camel.CamelContext camelContext, List<String> data, Map<String, Object> model, int line) throws ExceptionDescription copied from interface:BindyFactory
The bind allow to read the content of a record (expressed as a List) and map it to the model classes. - Specified by:
bind
in interfaceBindyFactory
- Specified by:
bind
in classBindyAbstractFactory
data
- Listrepresents the csv, ... data to transform model
- Map<String, object> is a collection of objects used to bind data. String is the key name of the class link to POJO objectsline
- is the position of the record into the file- Throws:
Exception
- can be thrown
-
bind
public void bind(org.apache.camel.CamelContext camelContext, String recordStr, Map<String, Object> model, int line) throws Exception- Throws:
Exception
-
unbind
public String unbind(org.apache.camel.CamelContext camelContext, Map<String, Object> model) throws ExceptionDescription copied from interface:BindyFactory
The unbind is used to transform the content of the classes model objects into a string. The string represents a record of a CSV file- Specified by:
unbind
in interfaceBindyFactory
- Specified by:
unbind
in classBindyAbstractFactory
model
- Map<String, Object> is a collection of objects used to create csv, ... records. String is the key name of the class link to POJO objects- Returns:
- String represents a csv record created
- Throws:
Exception
- can be thrown
-
header
Gets the type of the header record.- Returns:
- The type of the header record if any, otherwise
void.class
.
-
hasHeader
public boolean hasHeader()Flag indicating if we have a header -
skipHeader
public boolean skipHeader()Flag indicating whether to skip the header parsing -
isHeader
public boolean isHeader()Flag indicating whether this factory is for a header -
paddingchar
public char paddingchar()Padding char used to fill the field -
recordLength
public int recordLength()Expected fixed length of the record -
isIgnoreTrailingChars
public boolean isIgnoreTrailingChars()Flag indicating whether trailing characters beyond the last declared field may be ignored -
isIgnoreMissingChars
public boolean isIgnoreMissingChars()Flag indicating whether too short lines are ignored -
isCountGrapheme
public boolean isCountGrapheme()Flag indicating whether graphemes or codepoints are counted.
-