public class J7FileStatsStorage extends java.lang.Object implements StatsStorage
StatsStorage implementation, based on SQLite.
 Note: Where possible, use FileStatsStorage which should be faster (is based
 on MapDB).
 Obviously, the storage formats for J7FileStatsStorage and FileStatsStorage are
 incompatible.| Constructor and Description | 
|---|
| J7FileStatsStorage(java.io.File file) | 
| Modifier and Type | Method and Description | 
|---|---|
| protected java.util.List<StatsStorageEvent> | checkStorageEvents(Persistable p) | 
| void | close()Close any open resources (files, etc) | 
| void | deregisterStatsStorageListener(StatsStorageListener listener)Remove the specified listener, if it is present. | 
| java.util.List<Persistable> | getAllStaticInfos(java.lang.String sessionID,
                 java.lang.String typeID)Get all static informations for the given session and type ID | 
| java.util.List<Persistable> | getAllUpdatesAfter(java.lang.String sessionID,
                  java.lang.String typeID,
                  long timestamp)Get all updates for the given session ID (all worker IDs), that occur after (not including) the given timestamp. | 
| java.util.List<Persistable> | getAllUpdatesAfter(java.lang.String sessionID,
                  java.lang.String typeID,
                  java.lang.String workerID,
                  long timestamp)Get all updates for the given session and worker ID, that occur after (not including) the given timestamp. | 
| Persistable | getLatestUpdate(java.lang.String sessionID,
               java.lang.String typeID,
               java.lang.String workerID)Get the latest update record (i.e., update record with the largest timestamp value) for the specified
 session and worker IDs | 
| java.util.List<Persistable> | getLatestUpdateAllWorkers(java.lang.String sessionID,
                         java.lang.String typeID)Get the latest update for all workers, for the given session ID | 
| java.util.List<StatsStorageListener> | getListeners()Get a list (shallow copy) of all listeners currently present | 
| int | getNumUpdateRecordsFor(java.lang.String sessionID)Return the number of update records for the given session ID (all workers) | 
| int | getNumUpdateRecordsFor(java.lang.String sessionID,
                      java.lang.String typeID,
                      java.lang.String workerID)Return the number of update records for the given session ID and worker ID | 
| Persistable | getStaticInfo(java.lang.String sessionID,
             java.lang.String typeID,
             java.lang.String workerID)Get the static info for the given session and worker IDs, or null if no such static info has been reported | 
| StorageMetaData | getStorageMetaData(java.lang.String sessionID,
                  java.lang.String typeID)Get the session metadata, if any has been registered via  StatsStorageRouter.putStorageMetaData(StorageMetaData) | 
| Persistable | getUpdate(java.lang.String sessionID,
         java.lang.String typeId,
         java.lang.String workerID,
         long timestamp)Get the specified update (or null, if none exists for the given session/worker ids and timestamp) | 
| boolean | isClosed() | 
| java.util.List<java.lang.String> | listSessionIDs()Get a list of all sessions stored by this storage backend | 
| java.util.List<java.lang.String> | listTypeIDsForSession(java.lang.String sessionID)Get the list of type IDs for the given session ID | 
| java.util.List<java.lang.String> | listWorkerIDsForSession(java.lang.String sessionID)For a given session ID, list all of the known worker IDs | 
| java.util.List<java.lang.String> | listWorkerIDsForSessionAndType(java.lang.String sessionID,
                              java.lang.String typeID)For a given session ID and type ID, list all of the known worker IDs | 
| protected void | notifyListeners(java.util.List<StatsStorageEvent> sses) | 
| void | putStaticInfo(java.util.Collection<? extends Persistable> collection)Static info: reported once per session, upon initialization | 
| void | putStaticInfo(Persistable staticInfo)Static info: reported once per session, upon initialization | 
| void | putStorageMetaData(java.util.Collection<? extends StorageMetaData> collection) | 
| void | putStorageMetaData(StorageMetaData storageMetaData)Method to store some additional metadata for each session. | 
| void | putUpdate(java.util.Collection<? extends Persistable> collection)Updates: stored multiple times per session (periodically, for example) | 
| void | putUpdate(Persistable update)Updates: stored multiple times per session (periodically, for example) | 
| void | registerStatsStorageListener(StatsStorageListener listener)Add a new StatsStorageListener. | 
| void | removeAllListeners()Remove all listeners from the StatsStorage instance | 
| boolean | sessionExists(java.lang.String sessionID)Check if the specified session ID exists or not | 
| java.lang.String | toString() | 
public J7FileStatsStorage(@NonNull
                          java.io.File file)
file - Storage location for the statsprotected java.util.List<StatsStorageEvent> checkStorageEvents(Persistable p)
public void putStorageMetaData(StorageMetaData storageMetaData)
StatsStorageRouterputStorageMetaData in interface StatsStorageRouterstorageMetaData - Storage metadata to storepublic void putStorageMetaData(java.util.Collection<? extends StorageMetaData> collection)
putStorageMetaData in interface StatsStorageRouterpublic void putStaticInfo(Persistable staticInfo)
StatsStorageRouterputStaticInfo in interface StatsStorageRouterstaticInfo - Static info to storepublic void putStaticInfo(java.util.Collection<? extends Persistable> collection)
StatsStorageRouterputStaticInfo in interface StatsStorageRoutercollection - Static info to storepublic void putUpdate(Persistable update)
StatsStorageRouterputUpdate in interface StatsStorageRouterupdate - Update info to storepublic void putUpdate(java.util.Collection<? extends Persistable> collection)
StatsStorageRouterputUpdate in interface StatsStorageRoutercollection - Update info to storepublic void close()
           throws java.io.IOException
StatsStorageclose in interface StatsStoragejava.io.IOExceptionpublic boolean isClosed()
isClosed in interface StatsStoragepublic java.util.List<java.lang.String> listSessionIDs()
StatsStoragelistSessionIDs in interface StatsStoragepublic boolean sessionExists(java.lang.String sessionID)
StatsStoragesessionExists in interface StatsStoragesessionID - Session ID to checkpublic Persistable getStaticInfo(java.lang.String sessionID, java.lang.String typeID, java.lang.String workerID)
StatsStoragegetStaticInfo in interface StatsStoragesessionID - Session IDworkerID - worker IDpublic java.util.List<Persistable> getAllStaticInfos(java.lang.String sessionID, java.lang.String typeID)
StatsStoragegetAllStaticInfos in interface StatsStoragesessionID - Session ID to get static info fortypeID - Type ID to get static info forpublic java.util.List<java.lang.String> listTypeIDsForSession(java.lang.String sessionID)
StatsStoragelistTypeIDsForSession in interface StatsStoragesessionID - Session ID to querypublic java.util.List<java.lang.String> listWorkerIDsForSession(java.lang.String sessionID)
StatsStoragelistWorkerIDsForSession in interface StatsStoragesessionID - Session IDpublic java.util.List<java.lang.String> listWorkerIDsForSessionAndType(java.lang.String sessionID,
                                                                       java.lang.String typeID)
StatsStoragelistWorkerIDsForSessionAndType in interface StatsStoragesessionID - Session IDtypeID - Type IDpublic int getNumUpdateRecordsFor(java.lang.String sessionID)
StatsStoragegetNumUpdateRecordsFor in interface StatsStoragesessionID - Session IDpublic int getNumUpdateRecordsFor(java.lang.String sessionID,
                                  java.lang.String typeID,
                                  java.lang.String workerID)
StatsStoragegetNumUpdateRecordsFor in interface StatsStoragesessionID - Session IDworkerID - Worker IDpublic Persistable getLatestUpdate(java.lang.String sessionID, java.lang.String typeID, java.lang.String workerID)
StatsStoragegetLatestUpdate in interface StatsStoragesessionID - session IDworkerID - worker IDpublic Persistable getUpdate(java.lang.String sessionID, java.lang.String typeId, java.lang.String workerID, long timestamp)
StatsStoragegetUpdate in interface StatsStoragesessionID - Session IDworkerID - Worker IDtimestamp - Timestamppublic java.util.List<Persistable> getLatestUpdateAllWorkers(java.lang.String sessionID, java.lang.String typeID)
StatsStoragegetLatestUpdateAllWorkers in interface StatsStoragesessionID - Session IDpublic java.util.List<Persistable> getAllUpdatesAfter(java.lang.String sessionID, java.lang.String typeID, java.lang.String workerID, long timestamp)
StatsStoragegetAllUpdatesAfter in interface StatsStoragesessionID - Session IDworkerID - Worker Idtimestamp - Timestamppublic java.util.List<Persistable> getAllUpdatesAfter(java.lang.String sessionID, java.lang.String typeID, long timestamp)
StatsStoragegetAllUpdatesAfter in interface StatsStoragesessionID - Session IDtimestamp - Timestamppublic StorageMetaData getStorageMetaData(java.lang.String sessionID, java.lang.String typeID)
StatsStorageStatsStorageRouter.putStorageMetaData(StorageMetaData)getStorageMetaData in interface StatsStoragesessionID - Session ID to get metadatpublic void registerStatsStorageListener(StatsStorageListener listener)
StatsStorageregisterStatsStorageListener in interface StatsStoragelistener - Listener to addpublic void deregisterStatsStorageListener(StatsStorageListener listener)
StatsStoragederegisterStatsStorageListener in interface StatsStoragelistener - Listener to removepublic void removeAllListeners()
StatsStorageremoveAllListeners in interface StatsStoragepublic java.util.List<StatsStorageListener> getListeners()
StatsStoragegetListeners in interface StatsStoragepublic java.lang.String toString()
toString in class java.lang.Objectprotected void notifyListeners(java.util.List<StatsStorageEvent> sses)