Class FasterFilesystemForeignSourceRepository
- java.lang.Object
-
- org.opennms.netmgt.provision.persist.AbstractForeignSourceRepository
-
- org.opennms.netmgt.provision.persist.FilesystemForeignSourceRepository
-
- org.opennms.netmgt.provision.persist.FasterFilesystemForeignSourceRepository
-
- All Implemented Interfaces:
ForeignSourceRepository,org.springframework.beans.factory.InitializingBean
public class FasterFilesystemForeignSourceRepository extends FilesystemForeignSourceRepository implements org.springframework.beans.factory.InitializingBean
FasterFilesystemForeignSourceRepository class.
The directory watcher should keep a cache of all requisitions on disk.
The directory watcher will always return the object from the cache, and the cache should be updated when changes are detected on the directories.
The method AbstractForeignSourceRepository.importResourceRequisition will read the requisition and update the copy on disk. This should trigger the update of the cache.
-
-
Field Summary
-
Fields inherited from class org.opennms.netmgt.provision.persist.FilesystemForeignSourceRepository
m_foreignSourcePath, m_globalLock, m_readLock, m_requisitionPath, m_writeLock
-
-
Constructor Summary
Constructors Constructor Description FasterFilesystemForeignSourceRepository()Instantiates a new faster filesystem foreign source repository.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<String>getActiveForeignSourceNames()getActiveForeignSourceNamesForeignSourcegetForeignSource(String foreignSourceName)getForeignSourceintgetForeignSourceCount()getForeignSourceCountSet<ForeignSource>getForeignSources()getForeignSourcesDirectoryWatcher<ForeignSource>getForeignSourcesDirectoryWatcher()Gets the foreign sources directory watcher.RequisitiongetRequisition(String foreignSourceName)getRequisitionSet<Requisition>getRequisitions()getRequisitionsDirectoryWatcher<Requisition>getRequisitionsDirectoryWatcher()Gets the requisitions directory watcher.URLgetRequisitionURL(String foreignSource)getRequisitionURLRequisitionimportResourceRequisition(org.springframework.core.io.Resource resource)importResourceRequisition-
Methods inherited from class org.opennms.netmgt.provision.persist.FilesystemForeignSourceRepository
afterPropertiesSet, delete, delete, flush, getRequisition, getRequisitionDate, save, save, setForeignSourcePath, setRequisitionPath
-
Methods inherited from class org.opennms.netmgt.provision.persist.AbstractForeignSourceRepository
clear, getDefaultForeignSource, getNodeRequisition, putDefaultForeignSource, resetDefaultForeignSource, validate, validate
-
-
-
-
Constructor Detail
-
FasterFilesystemForeignSourceRepository
public FasterFilesystemForeignSourceRepository() throws ForeignSourceRepositoryExceptionInstantiates a new faster filesystem foreign source repository.- Throws:
ForeignSourceRepositoryException- the foreign source repository exception
-
-
Method Detail
-
importResourceRequisition
public Requisition importResourceRequisition(org.springframework.core.io.Resource resource) throws ForeignSourceRepositoryException
Description copied from class:AbstractForeignSourceRepositoryimportResourceRequisition
- Specified by:
importResourceRequisitionin interfaceForeignSourceRepository- Overrides:
importResourceRequisitionin classAbstractForeignSourceRepository- Parameters:
resource- aResourceobject.- Returns:
- a
Requisitionobject. - Throws:
ForeignSourceRepositoryException- if any.
-
getActiveForeignSourceNames
public Set<String> getActiveForeignSourceNames()
Description copied from class:FilesystemForeignSourceRepositorygetActiveForeignSourceNames
- Specified by:
getActiveForeignSourceNamesin interfaceForeignSourceRepository- Overrides:
getActiveForeignSourceNamesin classFilesystemForeignSourceRepository- Returns:
- a
Setobject.
-
getForeignSourceCount
public int getForeignSourceCount() throws ForeignSourceRepositoryExceptionDescription copied from class:FilesystemForeignSourceRepositorygetForeignSourceCount
- Specified by:
getForeignSourceCountin interfaceForeignSourceRepository- Overrides:
getForeignSourceCountin classFilesystemForeignSourceRepository- Returns:
- a int.
- Throws:
ForeignSourceRepositoryException- if any.
-
getForeignSources
public Set<ForeignSource> getForeignSources() throws ForeignSourceRepositoryException
Description copied from class:FilesystemForeignSourceRepositorygetForeignSources
- Specified by:
getForeignSourcesin interfaceForeignSourceRepository- Overrides:
getForeignSourcesin classFilesystemForeignSourceRepository- Returns:
- a
Setobject. - Throws:
ForeignSourceRepositoryException- if any.
-
getForeignSource
public ForeignSource getForeignSource(String foreignSourceName) throws ForeignSourceRepositoryException
Description copied from class:FilesystemForeignSourceRepositorygetForeignSource
- Specified by:
getForeignSourcein interfaceForeignSourceRepository- Overrides:
getForeignSourcein classFilesystemForeignSourceRepository- Parameters:
foreignSourceName- aStringobject.- Returns:
- a
ForeignSourceobject. - Throws:
ForeignSourceRepositoryException- if any.
-
getRequisitions
public Set<Requisition> getRequisitions() throws ForeignSourceRepositoryException
Description copied from class:FilesystemForeignSourceRepositorygetRequisitions
- Specified by:
getRequisitionsin interfaceForeignSourceRepository- Overrides:
getRequisitionsin classFilesystemForeignSourceRepository- Returns:
- a
Setobject. - Throws:
ForeignSourceRepositoryException- if any.
-
getRequisition
public Requisition getRequisition(String foreignSourceName) throws ForeignSourceRepositoryException
Description copied from class:FilesystemForeignSourceRepositorygetRequisition
- Specified by:
getRequisitionin interfaceForeignSourceRepository- Overrides:
getRequisitionin classFilesystemForeignSourceRepository- Parameters:
foreignSourceName- aStringobject.- Returns:
- a
Requisitionobject. - Throws:
ForeignSourceRepositoryException- if any.
-
getRequisitionURL
public URL getRequisitionURL(String foreignSource) throws ForeignSourceRepositoryException
Description copied from class:FilesystemForeignSourceRepositorygetRequisitionURL
- Specified by:
getRequisitionURLin interfaceForeignSourceRepository- Overrides:
getRequisitionURLin classFilesystemForeignSourceRepository- Parameters:
foreignSource- aStringobject.- Returns:
- a
URLobject. - Throws:
ForeignSourceRepositoryException
-
getForeignSourcesDirectoryWatcher
public DirectoryWatcher<ForeignSource> getForeignSourcesDirectoryWatcher() throws ForeignSourceRepositoryException
Gets the foreign sources directory watcher.- Returns:
- the foreign sources directory watcher
- Throws:
ForeignSourceRepositoryException- the foreign source repository exception
-
getRequisitionsDirectoryWatcher
public DirectoryWatcher<Requisition> getRequisitionsDirectoryWatcher() throws ForeignSourceRepositoryException
Gets the requisitions directory watcher.- Returns:
- the requisitions directory watcher
- Throws:
ForeignSourceRepositoryException- the foreign source repository exception
-
-