org.apache.servicemix.components.util
Class SimpleFlatFileMarshaler
java.lang.Object
org.apache.servicemix.components.util.MarshalerSupport
org.apache.servicemix.components.util.DefaultFileMarshaler
org.apache.servicemix.components.util.SimpleFlatFileMarshaler
- All Implemented Interfaces:
- FileMarshaler
public class SimpleFlatFileMarshaler
- extends DefaultFileMarshaler
A simple flat file marshaler that can read fixed-length and csv text files
and converts them to XML
- Since:
- 3.2
- Author:
- Juergen Mayrbaeurl, Andrew Skiba
Method Summary |
protected static void |
closeQuietly(java.io.Reader input)
Unconditionally close an Reader . |
protected java.lang.String |
convertColumnContents(int index,
java.lang.String contents)
|
protected void |
convertHeaderline(java.lang.StringBuffer buffer,
java.lang.String headerLine)
|
protected java.io.InputStream |
convertLines(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
|
protected java.io.InputStream |
convertLinesToStream(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
|
protected java.lang.String |
convertLinesToString(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
Deprecated. |
protected java.lang.String[] |
extractColumnContents(java.lang.String lineText,
java.util.Iterator lines)
|
protected void |
extractColumns(java.lang.StringBuffer buffer,
java.lang.String lineText,
java.util.Iterator lines)
|
protected java.lang.String |
findColumnname(int index)
|
java.lang.String |
getColumnElementname()
|
int |
getColumnNamesInLineNumber()
|
java.lang.String |
getColumnSeparator()
|
java.lang.String |
getDocElementname()
|
java.lang.String |
getDocElementNamespace()
|
java.lang.String |
getEncoding()
|
int |
getHeaderlinesCount()
|
java.lang.String |
getLineElementname()
|
int |
getLineFormat()
|
java.lang.String |
getLineSeparator()
|
boolean |
isAlwaysEscapeColContents()
|
boolean |
isAlwaysStripColContents()
|
boolean |
isInsertColContentInAttribut()
|
boolean |
isInsertColNumbers()
|
boolean |
isSkipAnyEmptyCols()
|
boolean |
isSkipKnownEmptyCols()
|
boolean |
isXmlDeclaration()
|
protected void |
processHeaderLines(java.lang.StringBuffer buffer,
java.util.Iterator lines)
Deprecated. |
void |
readMessage(javax.jbi.messaging.MessageExchange exchange,
javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
Converts the file stream to a normalized message. |
void |
setAlwaysEscapeColContents(boolean alwaysEscapeColContents)
|
void |
setAlwaysStripColContents(boolean alwaysStripColContents)
|
void |
setColumnConverters(java.util.List columnConverters)
|
void |
setColumnElementname(java.lang.String columnElementname)
|
void |
setColumnExtractor(ColumnExtractor columnExtractor)
|
void |
setColumnLengths(java.lang.String[] columnLengths)
|
void |
setColumnNames(java.lang.String[] columnNames)
|
void |
setColumnNamesInLineNumber(int columnNamesInLineNumber)
|
void |
setColumnSeparator(java.lang.String columnSeparator)
|
void |
setColumnSeparatorCode(int columnSeparatorCode)
|
void |
setDocElementname(java.lang.String docElementname)
|
void |
setDocElementNamespace(java.lang.String docElementNamespace)
|
void |
setEncoding(java.lang.String encoding)
|
void |
setHeaderlinesCount(int headerlinesCount)
|
void |
setInsertColContentInAttribut(boolean insertColContentInAttribut)
|
void |
setInsertColNumbers(boolean insertColNumbers)
|
void |
setInsertLineNumbers(boolean insertLineNumbers)
|
void |
setInsertRawData(boolean insertRawData)
|
void |
setLineElementname(java.lang.String lineElementname)
|
void |
setLineFormat(int lineFormat)
|
void |
setLineSeparator(java.lang.String lineSeparator)
|
void |
setLineSeparatorCode(int lineSeparatorCode)
|
void |
setSkipAnyEmptyCols(boolean skipAnyEmptyCols)
|
void |
setSkipKnownEmptyCols(boolean skipKnownEmptyCols)
|
void |
setXmlDeclaration(boolean xmlDeclaration)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
XMLDECLARATION_LINE
public static final java.lang.String XMLDECLARATION_LINE
- See Also:
- Constant Field Values
NO_CONVERSION
public static final ContentConverter NO_CONVERSION
TEXT_STRIPPER
public static final ContentConverter TEXT_STRIPPER
XML_CONVERTER
public static final ContentConverter XML_CONVERTER
LINEFORMAT_FIXLENGTH
public static final int LINEFORMAT_FIXLENGTH
- See Also:
- Constant Field Values
LINEFORMAT_CSV
public static final int LINEFORMAT_CSV
- See Also:
- Constant Field Values
LINEFORMAT_VARIABLE
public static final int LINEFORMAT_VARIABLE
- See Also:
- Constant Field Values
LINEFORMAT_DEFAULT
public static final int LINEFORMAT_DEFAULT
- See Also:
- Constant Field Values
log
protected final org.apache.commons.logging.Log log
SimpleFlatFileMarshaler
public SimpleFlatFileMarshaler()
isSkipAnyEmptyCols
public boolean isSkipAnyEmptyCols()
setSkipAnyEmptyCols
public void setSkipAnyEmptyCols(boolean skipAnyEmptyCols)
readMessage
public void readMessage(javax.jbi.messaging.MessageExchange exchange,
javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
throws java.io.IOException,
javax.jbi.JBIException
- Description copied from interface:
FileMarshaler
- Converts the file stream to a normalized message.
- Specified by:
readMessage
in interface FileMarshaler
- Overrides:
readMessage
in class DefaultFileMarshaler
- Parameters:
exchange
- the message exchangemessage
- the message to populatein
- the input streampath
- the name of the file, URI or URL
- Throws:
java.io.IOException
javax.jbi.JBIException
convertLinesToStream
protected java.io.InputStream convertLinesToStream(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
throws java.io.IOException
- Throws:
java.io.IOException
convertLines
protected java.io.InputStream convertLines(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
throws java.io.IOException
- Throws:
java.io.IOException
convertLinesToString
@Deprecated
protected java.lang.String convertLinesToString(javax.jbi.messaging.NormalizedMessage message,
java.io.InputStream in,
java.lang.String path)
throws java.io.IOException
- Deprecated.
- Throws:
java.io.IOException
processHeaderLines
@Deprecated
protected void processHeaderLines(java.lang.StringBuffer buffer,
java.util.Iterator lines)
- Deprecated.
convertHeaderline
protected void convertHeaderline(java.lang.StringBuffer buffer,
java.lang.String headerLine)
extractColumns
protected void extractColumns(java.lang.StringBuffer buffer,
java.lang.String lineText,
java.util.Iterator lines)
extractColumnContents
protected java.lang.String[] extractColumnContents(java.lang.String lineText,
java.util.Iterator lines)
findColumnname
protected java.lang.String findColumnname(int index)
convertColumnContents
protected java.lang.String convertColumnContents(int index,
java.lang.String contents)
getEncoding
public final java.lang.String getEncoding()
- Overrides:
getEncoding
in class DefaultFileMarshaler
setEncoding
public final void setEncoding(java.lang.String encoding)
- Overrides:
setEncoding
in class DefaultFileMarshaler
getColumnElementname
public final java.lang.String getColumnElementname()
setColumnElementname
public final void setColumnElementname(java.lang.String columnElementname)
getDocElementname
public final java.lang.String getDocElementname()
setDocElementname
public final void setDocElementname(java.lang.String docElementname)
getLineElementname
public final java.lang.String getLineElementname()
setLineElementname
public final void setLineElementname(java.lang.String lineElementname)
setColumnLengths
public final void setColumnLengths(java.lang.String[] columnLengths)
isXmlDeclaration
public final boolean isXmlDeclaration()
setXmlDeclaration
public final void setXmlDeclaration(boolean xmlDeclaration)
setInsertLineNumbers
public final void setInsertLineNumbers(boolean insertLineNumbers)
setColumnConverters
public final void setColumnConverters(java.util.List columnConverters)
setColumnNames
public final void setColumnNames(java.lang.String[] columnNames)
isSkipKnownEmptyCols
public final boolean isSkipKnownEmptyCols()
setSkipKnownEmptyCols
public final void setSkipKnownEmptyCols(boolean skipKnownEmptyCols)
setInsertRawData
public final void setInsertRawData(boolean insertRawData)
isAlwaysStripColContents
public final boolean isAlwaysStripColContents()
setAlwaysStripColContents
public final void setAlwaysStripColContents(boolean alwaysStripColContents)
isAlwaysEscapeColContents
public final boolean isAlwaysEscapeColContents()
setAlwaysEscapeColContents
public final void setAlwaysEscapeColContents(boolean alwaysEscapeColContents)
getLineFormat
public final int getLineFormat()
setLineFormat
public final void setLineFormat(int lineFormat)
getColumnSeparator
public final java.lang.String getColumnSeparator()
setColumnSeparator
public final void setColumnSeparator(java.lang.String columnSeparator)
setColumnSeparatorCode
public final void setColumnSeparatorCode(int columnSeparatorCode)
getLineSeparator
public final java.lang.String getLineSeparator()
setLineSeparator
public final void setLineSeparator(java.lang.String lineSeparator)
setLineSeparatorCode
public final void setLineSeparatorCode(int lineSeparatorCode)
getDocElementNamespace
public final java.lang.String getDocElementNamespace()
setDocElementNamespace
public final void setDocElementNamespace(java.lang.String docElementNamespace)
getHeaderlinesCount
public final int getHeaderlinesCount()
setHeaderlinesCount
public final void setHeaderlinesCount(int headerlinesCount)
getColumnNamesInLineNumber
public final int getColumnNamesInLineNumber()
setColumnNamesInLineNumber
public void setColumnNamesInLineNumber(int columnNamesInLineNumber)
- Parameters:
columnNamesInLineNumber
- line number containing
isInsertColContentInAttribut
public final boolean isInsertColContentInAttribut()
setInsertColContentInAttribut
public final void setInsertColContentInAttribut(boolean insertColContentInAttribut)
isInsertColNumbers
public final boolean isInsertColNumbers()
setInsertColNumbers
public final void setInsertColNumbers(boolean insertColNumbers)
setColumnExtractor
public final void setColumnExtractor(ColumnExtractor columnExtractor)
closeQuietly
protected static void closeQuietly(java.io.Reader input)
- Unconditionally close an
Reader
.
Equivalent to Reader.close()
, except any exceptions will be ignored.
This is typically used in finally blocks.
- Parameters:
input
- the Reader to close, may be null or already closed
Copyright © 2005-2011 Apache Software Foundation. All Rights Reserved.