java.lang.Object
io.xlate.edi.stream.PropertySupport
io.xlate.edi.stream.EDIOutputFactory
public abstract class EDIOutputFactory extends PropertySupport
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPRETTY_PRINTWhen set to true, the EDI output will have a platform specific line separator written after each segment terminator.static java.lang.StringTRUNCATE_EMPTY_ELEMENTSWhen set to true, empty trailing elements in a segment and empty trailing components in a composite element will be truncated. -
Constructor Summary
Constructors Constructor Description EDIOutputFactory() -
Method Summary
Modifier and Type Method Description abstract EDIStreamWritercreateEDIStreamWriter(java.io.OutputStream stream)Create a new EDIStreamWriter that writes to a streamabstract EDIStreamWritercreateEDIStreamWriter(java.io.OutputStream stream, java.lang.String encoding)Create a new EDIStreamWriter that writes to a streamabstract javax.xml.stream.XMLStreamWritercreateXMLStreamWriter(EDIStreamWriter writer)Creates a newXMLStreamWriterthat uses the given writer as its output.abstract EDIOutputErrorReportergetErrorReporter()Retrieves the reporter that will be set on any EDIStreamWriter created by this factory instance.static EDIOutputFactorynewFactory()Create a new instance of the factory.abstract voidsetErrorReporter(EDIOutputErrorReporter reporter)The reporter that will be set on any EDIStreamWriter created by this factory instance.Methods inherited from class io.xlate.edi.stream.PropertySupport
getProperty, isPropertySupported, setProperty
-
Field Details
-
PRETTY_PRINT
public static final java.lang.String PRETTY_PRINTWhen set to true, the EDI output will have a platform specific line separator written after each segment terminator.
Default value is false.
- See Also:
- Constant Field Values
-
TRUNCATE_EMPTY_ELEMENTS
public static final java.lang.String TRUNCATE_EMPTY_ELEMENTSWhen set to true, empty trailing elements in a segment and empty trailing components in a composite element will be truncated. I.e, they will not be written to the output.
Default value is false.
- See Also:
- Constant Field Values
-
-
Constructor Details
-
EDIOutputFactory
public EDIOutputFactory()
-
-
Method Details
-
newFactory
Create a new instance of the factory. This static method creates a new factory instance. Once an application has obtained a reference to an EDIOutputFactory it can use the factory to configure and obtain stream instances.- Returns:
- the factory implementation
-
createEDIStreamWriter
Create a new EDIStreamWriter that writes to a stream- Parameters:
stream-OutputStreamto which the EDI data will be written- Returns:
- the writer instance
-
createEDIStreamWriter
public abstract EDIStreamWriter createEDIStreamWriter(java.io.OutputStream stream, java.lang.String encoding) throws EDIStreamExceptionCreate a new EDIStreamWriter that writes to a stream- Parameters:
stream-OutputStreamto which the EDI data will be writtenencoding- character encoding of the stream, must be a validCharset.- Returns:
- the writer instance
- Throws:
EDIStreamException- when encoding is not supported
-
createXMLStreamWriter
Creates a newXMLStreamWriterthat uses the given writer as its output. XML Elements written to the writer must use the namespaces declared by the constants inEDINamespaces. The sequence of elements is critical and must align with the structure of the intended EDI output to be written via the given EDI writer.- Parameters:
writer- the writer used to generate EDI output using the XML writer- Returns:
- a new
XMLStreamWriter
-
getErrorReporter
Retrieves the reporter that will be set on any EDIStreamWriter created by this factory instance.- Returns:
- the reporter that will be set on any EDIStreamWriter created by this factory instance
- Since:
- 1.9
-
setErrorReporter
The reporter that will be set on any EDIStreamWriter created by this factory instance. NOTE: When using an EDIOutputErrorReporter, errors found in the data stream that are reported to the reporter will not be throw as instances ofEDIValidationException.- Parameters:
reporter- the resolver to use to report non fatal errors- Since:
- 1.9
-