BeanIO 2.0.4

org.beanio.internal.parser
Class BeanWriterImpl

java.lang.Object
  extended by org.beanio.internal.parser.BeanWriterImpl
All Implemented Interfaces:
BeanWriter, StatefulWriter

public class BeanWriterImpl
extends Object
implements BeanWriter, StatefulWriter

A BeanReader implementation.

Since:
2.0
Author:
Kevin Seim

Constructor Summary
BeanWriterImpl(MarshallingContext context, Selector layout)
          Constructs a new BeanWriterImpl.
 
Method Summary
 void close()
          Closes this output stream.
 void flush()
          Flushes this output stream.
 void restoreState(String namespace, Map<String,Object> state)
          Restores a Map of previously stored state information.
 void updateState(String namespace, Map<String,Object> state)
          Updates a Map with the current state of the Writer to allow for restoration at a later time.
 void write(Object bean)
          Writes a bean object to this output stream.
 void write(String recordName, Object bean)
          Writes a bean object to this output stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BeanWriterImpl

public BeanWriterImpl(MarshallingContext context,
                      Selector layout)
Constructs a new BeanWriterImpl.

Parameters:
context - the MarshallingContext
layout - the root Selector node in the parsing tree
Method Detail

write

public void write(Object bean)
           throws BeanWriterException
Description copied from interface: BeanWriter
Writes a bean object to this output stream.

Specified by:
write in interface BeanWriter
Parameters:
bean - the bean object to write
Throws:
BeanWriterException - if a record could not be identified for marshalling, or in a few other rare (but fatal) cases
BeanWriterIOException - if the underlying output stream throws an IOException, or if this writer is closed

write

public void write(String recordName,
                  Object bean)
           throws BeanWriterException
Description copied from interface: BeanWriter
Writes a bean object to this output stream.

Specified by:
write in interface BeanWriter
Parameters:
recordName - the record or group name bound to the bean object from the mapping file
bean - the bean object to write
Throws:
BeanWriterException - if a record could not be identified for marshalling, or in a few other rare (but fatal) cases
BeanWriterIOException - if the underlying output stream throws an IOException, or if this writer is closed

flush

public void flush()
           throws BeanWriterIOException
Description copied from interface: BeanWriter
Flushes this output stream.

Specified by:
flush in interface BeanWriter
Throws:
BeanWriterIOException - if the underlying output stream throws an IOException, or if this writer is closed

close

public void close()
           throws BeanWriterIOException
Description copied from interface: BeanWriter
Closes this output stream.

Specified by:
close in interface BeanWriter
Throws:
BeanWriterIOException - if the underlying output stream throws an IOException, or if this writer is already closed

updateState

public void updateState(String namespace,
                        Map<String,Object> state)
Description copied from interface: StatefulWriter
Updates a Map with the current state of the Writer to allow for restoration at a later time.

Specified by:
updateState in interface StatefulWriter
Parameters:
namespace - a String to prefix all state keys with
state - the Map to update with the latest state

restoreState

public void restoreState(String namespace,
                         Map<String,Object> state)
                  throws IllegalStateException
Description copied from interface: StatefulWriter
Restores a Map of previously stored state information.

Specified by:
restoreState in interface StatefulWriter
Parameters:
namespace - a String to prefix all state keys with
state - the Map containing the state to restore
Throws:
IllegalStateException - if the Map is missing any state information

BeanIO 2.0.4

Copyright © 2010-2013 Kevin Seim