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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbind(org.apache.camel.CamelContext camelContext, String recordStr, Map<String, Object> model, int line) voidbind(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.booleanFlag indicating if we have a footerbooleanFlag indicating if we have a headerClass<?>header()Gets the type of the header record.voidFind fields annotated in each class of the modelvoidmethod uses to initialize the model representing the classes who will bind the data.booleanFlag indicating whether graphemes or codepoints are counted.booleanisFooter()Flag indicating whether this factory is for a footerbooleanisHeader()Flag indicating whether this factory is for a headerbooleanFlag indicating whether too short lines are ignoredbooleanFlag indicating whether trailing characters beyond the last declared field may be ignoredcharPadding char used to fill the fieldintExpected fixed length of the recordbooleanFlag indicating whether to skip the footer processingbooleanFlag 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, supportsModelMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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:BindyAbstractFactoryFind fields annotated in each class of the model- Specified by:
initAnnotatedFieldsin classBindyAbstractFactory
-
bind
public void bind(org.apache.camel.CamelContext camelContext, List<String> data, Map<String, Object> model, int line) throws ExceptionDescription copied from interface:BindyFactoryThe bind allow to read the content of a record (expressed as a List) and map it to the model classes. - Specified by:
bindin interfaceBindyFactory- Specified by:
bindin classBindyAbstractFactorydata- 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:BindyFactoryThe 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:
unbindin interfaceBindyFactory- Specified by:
unbindin classBindyAbstractFactorymodel- 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.
-