Class OnmsThresholdingDao
- java.lang.Object
-
- org.opennms.netmgt.config.dao.thresholding.impl.AbstractThresholdingDao
-
- org.opennms.netmgt.config.dao.thresholding.impl.OnmsThresholdingDao
-
- All Implemented Interfaces:
ReadableDao<ThresholdingConfig>
,WriteableDao<ThresholdingConfig>
,ReadableThresholdingDao
,WriteableThresholdingDao
public class OnmsThresholdingDao extends AbstractThresholdingDao implements WriteableThresholdingDao
-
-
Field Summary
-
Fields inherited from class org.opennms.netmgt.config.dao.thresholding.impl.AbstractThresholdingDao
JSON_STORE_KEY
-
-
Constructor Summary
Constructors Constructor Description OnmsThresholdingDao(JsonStore jsonStore)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ThresholdingConfig
getReadOnlyConfig()
Get the current configuration.ThresholdingConfig
getWriteableConfig()
This method returns the mutable configuration object for which any changes made to it will be persisted and reflected after a call toWriteableDao.saveConfig()
.void
onConfigChanged()
Notify the DAO that the configuration it tracks has changed.void
reload()
Instructs the DAO to reload the configuration from the backing data source immediately.void
saveConfig()
Save the current configuration held by the DAO.
-
-
-
Constructor Detail
-
OnmsThresholdingDao
public OnmsThresholdingDao(JsonStore jsonStore) throws IOException
- Throws:
IOException
-
-
Method Detail
-
saveConfig
public void saveConfig()
Description copied from interface:WriteableDao
Save the current configuration held by the DAO.The configuration held by the DAO may not necessarily be the same configuration reference as returned by
WriteableDao.getWriteableConfig()
if the config has been reloaded in between calls. This implies any changes to the reference returned byWriteableDao.getWriteableConfig()
will not be reflected when saved in this case.- Specified by:
saveConfig
in interfaceWriteableDao<ThresholdingConfig>
-
getReadOnlyConfig
public ThresholdingConfig getReadOnlyConfig()
Description copied from interface:ReadableDao
Get the current configuration. Whether or not this configuration is in sync with the backing data source is up to the implementation, seeReadableDao.reload()
. The value returned by this method may be the result of merging multiple objects together. As a result, mutations to this object may not be visible to other readers and are not permitted. For cases where mutation and/or persistence of changes is required seeWriteableDao.getWriteableConfig()
.- Specified by:
getReadOnlyConfig
in interfaceReadableDao<ThresholdingConfig>
- Returns:
- the merged configuration consisting of the filesystem configuration and any configuration provided by extensions
-
getWriteableConfig
public ThresholdingConfig getWriteableConfig()
Description copied from interface:WriteableDao
This method returns the mutable configuration object for which any changes made to it will be persisted and reflected after a call toWriteableDao.saveConfig()
.- Specified by:
getWriteableConfig
in interfaceWriteableDao<ThresholdingConfig>
- Returns:
- just the configuration from the filesystem since configuration provided by extensions is read only
-
reload
public void reload()
Description copied from interface:ReadableDao
Instructs the DAO to reload the configuration from the backing data source immediately. Whether or not the config actually gets reloaded is up to the implementation as it may already be up to date. However invoking this method should guarantee that a subsequent call toReadableDao.getReadOnlyConfig()
yields the up to date configuration.- Specified by:
reload
in interfaceReadableDao<ThresholdingConfig>
-
onConfigChanged
public void onConfigChanged()
Description copied from interface:WriteableDao
Notify the DAO that the configuration it tracks has changed.Call this method after updating the filesystem configuration directly or after providing a config extension.
- Specified by:
onConfigChanged
in interfaceWriteableDao<ThresholdingConfig>
-
-