dsto.dfc.databeans.io
Class DataObjectPersister

java.lang.Object
  extended by java.util.TimerTask
      extended by dsto.dfc.databeans.io.DataObjectPersister
All Implemented Interfaces:
PropertyListener, Runnable, EventListener

public class DataObjectPersister
extends TimerTask
implements PropertyListener

A java.util.Timer task that saves a data object at periodic intervals when it has been modified.

See Also:
DataObjectPersister2

Field Summary
protected  File file
           
protected  long lastModified
           
protected  long maxSaveInterval
           
protected  boolean modified
           
protected  long nextSave
           
protected  IDataObject object
           
protected  long saveInterval
           
protected  XmlOutput xmlOutput
           
 
Constructor Summary
DataObjectPersister(IDataObject object, File file)
           
DataObjectPersister(IDataObject object, String filename)
           
 
Method Summary
 void dispose()
           
 int getMaxSaveInterval()
           
 int getSaveInterval()
           
 XmlOutput getXmlOutput()
           
 void propertyValueChanged(PropertyEvent e)
           
 void run()
           
 void setMaxSaveInterval(int maxSaveInterval)
          Set the maximum the persister will allow a modified object to remain unsaved.
 void setModified(boolean value)
           
 void setSaveInterval(int saveInterval)
          Set the interval that must pass without modifications before a modified object is saved.
 
Methods inherited from class java.util.TimerTask
cancel, scheduledExecutionTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

object

protected IDataObject object

file

protected File file

xmlOutput

protected XmlOutput xmlOutput

modified

protected boolean modified

lastModified

protected long lastModified

nextSave

protected long nextSave

saveInterval

protected long saveInterval

maxSaveInterval

protected long maxSaveInterval
Constructor Detail

DataObjectPersister

public DataObjectPersister(IDataObject object,
                           String filename)

DataObjectPersister

public DataObjectPersister(IDataObject object,
                           File file)
Method Detail

dispose

public void dispose()

getXmlOutput

public XmlOutput getXmlOutput()

getMaxSaveInterval

public int getMaxSaveInterval()

setMaxSaveInterval

public void setMaxSaveInterval(int maxSaveInterval)
Set the maximum the persister will allow a modified object to remain unsaved.

Parameters:
maxSaveInterval - interval in seconds.

getSaveInterval

public int getSaveInterval()

setSaveInterval

public void setSaveInterval(int saveInterval)
Set the interval that must pass without modifications before a modified object is saved.

Parameters:
saveInterval - The interval in seconds.

run

public void run()
Specified by:
run in interface Runnable
Specified by:
run in class TimerTask

setModified

public void setModified(boolean value)

propertyValueChanged

public void propertyValueChanged(PropertyEvent e)
Specified by:
propertyValueChanged in interface PropertyListener


Copyright © 2008 Commonwealth of Australia