public abstract class BlobberPlugin
extends java.lang.Object
ARCHIVE/TMCDB/).| Modifier and Type | Field and Description |
|---|---|
protected ContainerServices |
containerServices |
protected java.util.logging.Logger |
logger |
| Constructor and Description |
|---|
BlobberPlugin(ContainerServices containerServices) |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
cleanUp()
Will be called by the blobber component as part of component cleanUp.
|
abstract BlobberWatchDog |
getBlobberWatchDog() |
abstract int |
getCollectorIntervalSec()
Gets the collector interval, possibly from class
TMCDBConfig. |
abstract java.util.List<MonitorDAO> |
getMonitorDAOs()
The entire DAO implementation is in
ARCHIVE/TMCDB/DAO/
which is why we defer creation of alma.archive.tmcdb.DAO.MonitorDAOImpl
or some mock implementation of the MonitorPointExpert interface to this plugin. |
abstract MonitorPointExpert |
getMonitorPointExpert() |
abstract void |
init()
Will be called by the blobber component layer before calling
getMonitorDAOs()
or getBlobberWatchDog(), so that the plugin can create and install the DAOs and watchdog
or do other initialization tasks. |
abstract boolean |
isProfilingEnabled()
Reads profiling setting, possibly from class
TMCDBConfig. |
protected final ContainerServices containerServices
protected final java.util.logging.Logger logger
public BlobberPlugin(ContainerServices containerServices)
public abstract boolean isProfilingEnabled()
TMCDBConfig.public abstract int getCollectorIntervalSec()
TMCDBConfig.
public abstract void init()
throws AcsJCouldntCreateObjectEx
getMonitorDAOs()
or getBlobberWatchDog(), so that the plugin can create and install the DAOs and watchdog
or do other initialization tasks.AcsJCouldntCreateObjectExcleanUp()public abstract void cleanUp()
init()public abstract MonitorPointExpert getMonitorPointExpert()
public abstract java.util.List<MonitorDAO> getMonitorDAOs()
ARCHIVE/TMCDB/DAO/
which is why we defer creation of alma.archive.tmcdb.DAO.MonitorDAOImpl
or some mock implementation of the MonitorPointExpert interface to this plugin.
Normally only one DAO object should be returned, but for exceptional cases we support running several DAOs in parallel. This allows the Alma OSF to independently write the monitor data to the TMCDB and also stream it via activeMQ to files on a web server (a workaround which will be removed in the future).
The DAO object(s) must handle buffering and throwing away of data internally, so that the blobber component does not get stuck when calling the DAO layer.
public abstract BlobberWatchDog getBlobberWatchDog()