|
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.StreamFactory
public abstract class StreamFactory
A StreamFactory is used to load BeanIO mapping files and create
BeanReader
, BeanWriter
, Unmarshaller
and Marshaller
instances.
The default StreamFactory implementation can be safely shared across multiple threads.
BeanReader
,
BeanWriter
,
Unmarshaller
,
Marshaller
Constructor Summary | |
---|---|
StreamFactory()
Constructs a new StreamFactory. |
Method Summary | |
---|---|
abstract Marshaller |
createMarshaller(String name)
Creates a new Marshaller for marshalling bean objects. |
BeanReader |
createReader(String name,
File file)
Creates a new BeanReader for reading from a file. |
BeanReader |
createReader(String name,
Reader in)
Creates a new BeanReader for reading from the given input stream. |
abstract BeanReader |
createReader(String name,
Reader in,
Locale locale)
Creates a new BeanReader for reading from a stream. |
BeanReader |
createReader(String name,
String filename)
Creates a new BeanReader for reading from a file. |
Unmarshaller |
createUnmarshaller(String name)
Creates a new Unmarshaller for unmarshalling records. |
abstract Unmarshaller |
createUnmarshaller(String name,
Locale locale)
Creates a new Unmarshaller for unmarshalling records. |
BeanWriter |
createWriter(String name,
File file)
Creates a new BeanWriter for writing to the given file. |
abstract BeanWriter |
createWriter(String name,
Writer out)
Creates a new BeanWriter for writing to a stream. |
protected ClassLoader |
getClassLoader()
Returns the class loader to use for resolving classpath resources and bean objects declared in a mapping file. |
protected void |
init()
This method is invoked after a StreamFactory is loaded and all attributes have been set. |
abstract boolean |
isMapped(String streamName)
Test whether a mapping configuration exists for a named stream. |
void |
load(File file)
Loads a BeanIO mapping file from the file system, and adds the configured streams to this factory. |
void |
load(File file,
Properties properties)
Loads a BeanIO mapping file from the file system, and adds the configured streams to this factory. |
void |
load(InputStream in)
Loads a BeanIO mapping file, and adds the configured streams to this factory. |
abstract void |
load(InputStream in,
Properties properties)
Loads a BeanIO mapping file, and adds the configured streams to this factory. |
void |
load(String filename)
Loads a BeanIO mapping file from the file system, and adds the configured streams to this factory. |
void |
load(String filename,
Properties properties)
Loads a BeanIO mapping file from the file system, and adds the configured streams to this factory. |
void |
loadResource(String resource)
Loads a BeanIO mapping file from the application's classpath. |
void |
loadResource(String resource,
Properties properties)
Loads a BeanIO mapping file from the application's classpath. |
static StreamFactory |
newInstance()
Returns a new StreamFactory instance. |
static StreamFactory |
newInstance(ClassLoader classLoader)
Returns a new StreamFactory instance. |
protected void |
setClassLoader(ClassLoader cl)
Sets the class loader to use for resolving classpath resources and bean objects declared in a mapping files. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public StreamFactory()
Method Detail |
---|
public BeanReader createReader(String name, String filename) throws IllegalArgumentException, BeanReaderIOException
name
- the name of the stream in the mapping filefilename
- the name of the file to read
BeanReader
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support reading an input stream
BeanReaderIOException
- if the file could not be opened for readingpublic BeanReader createReader(String name, File file) throws IllegalArgumentException, BeanReaderIOException
name
- the name of the stream in the mapping filefile
- the File
to read
BeanReader
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support reading an input stream
BeanReaderIOException
- if the file could not be opened for readingpublic BeanReader createReader(String name, Reader in) throws IllegalArgumentException
name
- the name of the stream in the mapping filein
- the input stream to read from
BeanReader
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support reading an input streampublic abstract BeanReader createReader(String name, Reader in, Locale locale) throws IllegalArgumentException
name
- the name of the stream in the mapping filein
- the input stream to read fromlocale
- the Locale
used to format error messages, or null to use Locale.getDefault()
BeanReader
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support reading an input streampublic Unmarshaller createUnmarshaller(String name) throws IllegalArgumentException
Unmarshaller
for unmarshalling records.
name
- the name of the stream in the mapping file
Unmarshaller
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support unmarshallingpublic abstract Unmarshaller createUnmarshaller(String name, Locale locale)
Unmarshaller
for unmarshalling records.
name
- the name of the stream in the mapping filelocale
- the Locale
used to format error messages, or null to use Locale.getDefault()
Unmarshaller
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support unmarshallingpublic BeanWriter createWriter(String name, File file) throws IllegalArgumentException, BeanWriterIOException
name
- the name of the stream in the mapping filefile
- the file to write to
BeanWriter
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support writing to an output stream
BeanWriterIOException
- if the file could not be opened for writingpublic abstract BeanWriter createWriter(String name, Writer out) throws IllegalArgumentException
name
- the name of the stream in the mapping fileout
- the output stream to write to
BeanWriter
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support writing to an output streampublic abstract Marshaller createMarshaller(String name) throws IllegalArgumentException
Marshaller
for marshalling bean objects.
name
- the name of the stream in the mapping file
Marshaller
IllegalArgumentException
- if there is no stream configured for the given name, or
if the stream mapping mode does not support marshallingpublic void loadResource(String resource) throws BeanIOException, BeanIOConfigurationException
resource
- the configuration resource name
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is not found or invalidpublic void loadResource(String resource, Properties properties) throws BeanIOException, BeanIOConfigurationException
resource
- the configuration resource nameproperties
- user Properties
for property substitution
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is not found or invalidpublic void load(String filename) throws BeanIOException, BeanIOConfigurationException
filename
- the name of the BeanIO configuration file to load
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is invalidpublic void load(String filename, Properties properties) throws BeanIOException, BeanIOConfigurationException
filename
- the name of the BeanIO configuration file to loadproperties
- user Properties
for property substitution
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is invalidpublic void load(File file) throws BeanIOException, BeanIOConfigurationException
file
- the BeanIO configuration file to load
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is invalidpublic void load(File file, Properties properties) throws BeanIOException, BeanIOConfigurationException
file
- the BeanIO configuration file to loadproperties
- user Properties
for property substitution
BeanIOException
- if an IOException
or other fatal error is caught while loading the file
BeanIOConfigurationException
- if the mapping file is invalidpublic void load(InputStream in) throws IOException, BeanIOConfigurationException
in
- the input stream to read the mapping file from
BeanIOException
- if an IOException
or other fatal error is caught while reading the input stream
BeanIOConfigurationException
- if the mapping file is invalid
IOException
public abstract void load(InputStream in, Properties properties) throws IOException, BeanIOConfigurationException
in
- the input stream to read the mapping file fromproperties
- user Properties
for property substitution
BeanIOException
- if an IOException
or other fatal error is caught while reading the input stream
BeanIOConfigurationException
- if the mapping file is invalid
IOException
public static StreamFactory newInstance() throws BeanIOException
BeanIOException
- if a StreamFactory could not be createdSettings
public static StreamFactory newInstance(ClassLoader classLoader) throws BeanIOException
classLoader
- the ClassLoader
to use to load the stream factory and
all subcomponents. If null, the current thread's context class loader is used.
If there is no context class loader for the thread, the class loader that loaded
this class is used.
BeanIOException
- if a StreamFactory could not be createdSettings
public abstract boolean isMapped(String streamName)
streamName
- the stream name to test for existence
protected void init()
protected ClassLoader getClassLoader()
ClassLoader
to useprotected void setClassLoader(ClassLoader cl)
cl
- the ClassLoader
to use
|
BeanIO 2.0.4 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |