Class PqStoragePhtImpl
java.lang.Object
com.illumon.iris.controller.pqstorage.PqStoragePhtImpl
- All Implemented Interfaces:
PqStorage
Implementation of
PqStorage
which uses PersistentHashtable
for its underlying storage.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
Add the specified persistent query configuration.void
Commit a checkpoint.boolean
Delete the specified persistent query configuration.void
disconnect
(boolean forceCheckpoint) Disconnect from the storage mechanism.getPersistentQueryConfiguration
(long serial) Return thePersistentQueryConfiguration
for the specified serial.keySet()
Return the Set of persisted serials.boolean
Update the specified persistent query configuration.values()
Return a Collection containing all of the persistedPersistentQueryConfiguration
instances.
-
Constructor Details
-
PqStoragePhtImpl
public PqStoragePhtImpl()
-
-
Method Details
-
getPersistentQueryConfiguration
Description copied from interface:PqStorage
Return thePersistentQueryConfiguration
for the specified serial.- Specified by:
getPersistentQueryConfiguration
in interfacePqStorage
- Parameters:
serial
- the serial for the query- Returns:
- the query, or null if it does not exist
-
addPersistentQueryConfiguration
public boolean addPersistentQueryConfiguration(@NotNull PersistentQueryConfiguration config) throws IOException Description copied from interface:PqStorage
Add the specified persistent query configuration. If the configuration already exists, it will not be updated.- Specified by:
addPersistentQueryConfiguration
in interfacePqStorage
- Parameters:
config
- the configuration to add- Returns:
- true if the configuration was added, false if it already existed
- Throws:
IOException
- if an error occurs during the persistence operation
-
updatePersistentQueryConfiguration
public boolean updatePersistentQueryConfiguration(@NotNull PersistentQueryConfiguration config) throws IOException Description copied from interface:PqStorage
Update the specified persistent query configuration. If the configuration does not exist, it will not be created.- Specified by:
updatePersistentQueryConfiguration
in interfacePqStorage
- Parameters:
config
- the configuration to update- Returns:
- true if the (existing) configuration was updated, false if it did not exist
- Throws:
IOException
- if an error occurs during the persistence operation
-
deletePersistentQueryConfiguration
public boolean deletePersistentQueryConfiguration(@NotNull PersistentQueryConfiguration config) throws IOException Description copied from interface:PqStorage
Delete the specified persistent query configuration.- Specified by:
deletePersistentQueryConfiguration
in interfacePqStorage
- Parameters:
config
- the configuration to update- Returns:
- true if the configuration was deleted, false if it did not exist
- Throws:
IOException
- if an error occurs during the persistence operation
-
commitCheckPoint
Description copied from interface:PqStorage
Commit a checkpoint. This may be a no-op.- Specified by:
commitCheckPoint
in interfacePqStorage
- Throws:
IOException
- if an error occurs committing the checkpoint
-
disconnect
public void disconnect(boolean forceCheckpoint) Description copied from interface:PqStorage
Disconnect from the storage mechanism.- Specified by:
disconnect
in interfacePqStorage
- Parameters:
forceCheckpoint
- if true, perform a checkpoint
-
keySet
Description copied from interface:PqStorage
Return the Set of persisted serials. There are no guarantees on the type, mutability, serializability, or thread-safety of the Set returned. -
values
Description copied from interface:PqStorage
Return a Collection containing all of the persistedPersistentQueryConfiguration
instances. Updates to these PersistentQueryConfiguration instances should be persisted viaPqStorage.updatePersistentQueryConfiguration(com.illumon.iris.controller.PersistentQueryConfiguration)
. There are no guarantees on the type, mutability, serializability, or thread-safety of the Collection returned, or of the objects contained within the Collection.
-