stella.adapter
Class StatusSerializer

java.lang.Object
  extended by util.PropertyContainer
      extended by util.PropertyResources
          extended by util.PropertyBundles
              extended by util.rmi.RmiPropertyContainer
                  extended by util.rmi.AbstractRmiListener
                      extended by stella.adapter.StatusSerializer
All Implemented Interfaces:
Cloneable, Remote, EventListener, RmiErrorListener, ExitCleaning, Initializable, LocalizedSupplying, PropertySupplying, ResourceSupplying, RmiEventListener, RmiListener, RmiPropertyBearing

public class StatusSerializer
extends AbstractRmiListener
implements RmiErrorListener

A class that listens to the adapter master and serializes incoming status messages for off-line retrieval using GuiderInfos.


Nested Class Summary
static class StatusSerializer.FromLog
          Reads a log file of the adapter and tries to construct serialized guider info out of it.
static class StatusSerializer.Run
          Runs the status serializer.
static class StatusSerializer.Test
          Test the class by serializing a single guider info, acquire20060408-0014-0000-reduced.fits
 
Nested classes/interfaces inherited from class util.PropertyResources
PropertyResources.URLResource
 
Field Summary
private static String DEFADAPTERMASTER
          Default binding name for the adapter master.
private static File DEFSAVEPATH
          Default save path directory.
private  String fitshead
          The truncated serialize-file name.
static String KEY_ADAPTERMASTER
          The key denoting a comma-separated list of error casters.
static String KEY_SAVEPATH
          The directory where we serialize guider infos into.
private  GuiderInfo serial
          The re-used container for incoming status messages.
 
Fields inherited from class util.rmi.AbstractRmiListener
KEY_ALIVE, KEY_EXPORTPORT, KEY_INIT, KEY_LISTENERNAME, KEY_RETRY, KEY_RETRYSLEEP, KEY_SHUTDOWNDELAY
 
Fields inherited from class util.PropertyBundles
KEY_LOCALECOUNTRY, KEY_LOCALELANGUAGE, KEY_RESOURCEBUNDLES
 
Fields inherited from class util.PropertyResources
KEY_NOINITONCREATE, localurl, locate, POSTFIX_DIR, POSTFIX_EXT, POSTFIX_FILE, POSTFIX_LIST, POSTFIX_URL, urlset
 
Fields inherited from class util.PropertyContainer
KEY_LISTSEPARATOR, KEY_MAPKEYVALUECHAR, KEY_MAPSEPARATOR
 
Fields inherited from interface util.ResourceSupplying
KEY_URLRESOURCES, KEY_URLUSECONFIG, KEY_URLUSECURRENT, KEY_URLUSEHOME
 
Fields inherited from interface util.PropertySupplying
CONFIG, KEY_CLASS
 
Constructor Summary
StatusSerializer(Map info)
          Constructs a new message logger.
 
Method Summary
protected  boolean deregisterAtCaster(RmiCaster rmi, Class single)
          Deregisters at caster.
 void init()
          Register at the appropriate casters found in the various lists.
protected  boolean registerAtCaster(RmiCaster rmi, Class single)
          Registers at the specified caster if the caster is one of the four possible caster instances this class listens to.
 void rmiErrorOccured(ErrorEvent ee)
          The receiving edge of the error listener.
private static void serialize(GuiderInfo gi, File path)
          Serializes the current GuiderInfo object using the fitsheader truncated file name, append #GUIDERINFOEXTENSION and serializes it into KEY_SAVEPATH.
 
Methods inherited from class util.rmi.AbstractRmiListener
allBound, blockBinding, blockBinding, disconnect, exit, getIP, getListenerName, isConnected, listenerName, releaseBinding, releaseBinding, rescanned, startBinding, startBinding
 
Methods inherited from class util.rmi.RmiPropertyContainer
containsRemoteProperty, getRemoteProperties, getRemoteProperty, setRemoteProperty
 
Methods inherited from class util.PropertyBundles
clone, getLocalized, getLocalized, getLocalizedString, getLocalizedString, loadResource
 
Methods inherited from class util.PropertyResources
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, keyCreate, keyCreate, reload, setApplet
 
Methods inherited from class util.PropertyContainer
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, reload, removeProperty, setObject, setProperties, setProperty, stringProperties, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface util.rmi.RmiEventListener
getListenerName
 
Methods inherited from interface util.rmi.RmiListener
disconnect, isConnected
 
Methods inherited from interface util.ResourceSupplying
getResource, getResourceAsStream, getResources
 
Methods inherited from interface util.PropertySupplying
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties
 

Field Detail

KEY_ADAPTERMASTER

public static final String KEY_ADAPTERMASTER
The key denoting a comma-separated list of error casters.

See Also:
Constant Field Values

KEY_SAVEPATH

public static final String KEY_SAVEPATH
The directory where we serialize guider infos into.

See Also:
Constant Field Values

DEFADAPTERMASTER

private static final String DEFADAPTERMASTER
Default binding name for the adapter master.

See Also:
Constant Field Values

DEFSAVEPATH

private static final File DEFSAVEPATH
Default save path directory.


serial

private GuiderInfo serial
The re-used container for incoming status messages.


fitshead

private String fitshead
The truncated serialize-file name.

Constructor Detail

StatusSerializer

public StatusSerializer(Map info)
                 throws RemoteException
Constructs a new message logger. The properties handed over are also used for constructing the status panel.

Throws:
RemoteException
Method Detail

init

public void init()
Register at the appropriate casters found in the various lists.

Specified by:
init in interface Initializable
Overrides:
init in class PropertyResources

rmiErrorOccured

public void rmiErrorOccured(ErrorEvent ee)
                     throws RemoteException
The receiving edge of the error listener. Looks for interesting status messages and fills the GuiderInfo with it.

Specified by:
rmiErrorOccured in interface RmiErrorListener
Throws:
RemoteException

registerAtCaster

protected boolean registerAtCaster(RmiCaster rmi,
                                   Class single)
Registers at the specified caster if the caster is one of the four possible caster instances this class listens to.

Specified by:
registerAtCaster in class AbstractRmiListener
Returns:
True, if this listener can register at the specified caster

deregisterAtCaster

protected boolean deregisterAtCaster(RmiCaster rmi,
                                     Class single)
Deregisters at caster. Simply checks if the caster handed over is of one of the four supported types and removes itself from its listener list. Note that this can also mean de-registering from casters we never registered to because this info is lost.

Specified by:
deregisterAtCaster in class AbstractRmiListener
Returns:
True, if this listener can deregister at the specified caster

serialize

private static void serialize(GuiderInfo gi,
                              File path)
                       throws IOException
Serializes the current GuiderInfo object using the fitsheader truncated file name, append #GUIDERINFOEXTENSION and serializes it into KEY_SAVEPATH.

Throws:
IOException