Class MonitoredFileStore<V extends edu.uiuc.ncsa.security.core.Identifiable>

  • All Implemented Interfaces:
    edu.uiuc.ncsa.security.core.Store<V>, edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V>, Map<edu.uiuc.ncsa.security.core.Identifier,​V>
    Direct Known Subclasses:
    FSClientStore

    public abstract class MonitoredFileStore<V extends edu.uiuc.ncsa.security.core.Identifiable>
    extends edu.uiuc.ncsa.security.storage.FileStore<V>
    implements edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V>

    Created by Jeff Gaynor
    on 3/29/23 at 10:00 AM

    • Field Summary

      • Fields inherited from class edu.uiuc.ncsa.security.storage.FileStore

        indexDirectory, storageDirectory
      • Fields inherited from class edu.uiuc.ncsa.security.storage.IndexedStreamStore

        converter, identifiableProvider, initializer
      • Fields inherited from interface edu.uiuc.ncsa.security.core.Store

        VERSION_TAG
    • Constructor Summary

      Constructors 
      Constructor Description
      MonitoredFileStore​(File directory, edu.uiuc.ncsa.security.core.IdentifiableProvider<V> idp, edu.uiuc.ncsa.security.storage.data.MapConverter<V> cp, boolean removeEmptyFiles)  
      MonitoredFileStore​(File storeDirectory, File indexDirectory, edu.uiuc.ncsa.security.core.IdentifiableProvider<V> identifiableProvider, edu.uiuc.ncsa.security.storage.data.MapConverter<V> converter, boolean removeEmptyFiles)  
    • Constructor Detail

      • MonitoredFileStore

        public MonitoredFileStore​(File storeDirectory,
                                  File indexDirectory,
                                  edu.uiuc.ncsa.security.core.IdentifiableProvider<V> identifiableProvider,
                                  edu.uiuc.ncsa.security.storage.data.MapConverter<V> converter,
                                  boolean removeEmptyFiles)
      • MonitoredFileStore

        public MonitoredFileStore​(File directory,
                                  edu.uiuc.ncsa.security.core.IdentifiableProvider<V> idp,
                                  edu.uiuc.ncsa.security.storage.data.MapConverter<V> cp,
                                  boolean removeEmptyFiles)
    • Method Detail

      • getMostRecent

        public List<V> getMostRecent​(int n,
                                     List<String> attributes)
        Specified by:
        getMostRecent in interface edu.uiuc.ncsa.security.core.Store<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • getLastAccessedEventListeners

        public List<edu.uiuc.ncsa.security.storage.events.LastAccessedEventListener> getLastAccessedEventListeners()
        Specified by:
        getLastAccessedEventListeners in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • getUuid

        public UUID getUuid()
        Specified by:
        getUuid in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • addLastAccessedEventListener

        public void addLastAccessedEventListener​(edu.uiuc.ncsa.security.storage.events.LastAccessedEventListener lastAccessedEventListener)
        Specified by:
        addLastAccessedEventListener in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • fireLastAccessedEvent

        public void fireLastAccessedEvent​(edu.uiuc.ncsa.security.storage.ListeningStoreInterface store,
                                          edu.uiuc.ncsa.security.core.Identifier identifier)
        Specified by:
        fireLastAccessedEvent in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • isMonitorEnabled

        public boolean isMonitorEnabled()
        Specified by:
        isMonitorEnabled in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • setMonitorEnabled

        public void setMonitorEnabled​(boolean x)
        Specified by:
        setMonitorEnabled in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • lastAccessUpdate

        public void lastAccessUpdate​(edu.uiuc.ncsa.security.storage.events.IDMap idMap)
        Specified by:
        lastAccessUpdate in interface edu.uiuc.ncsa.security.storage.ListeningStoreInterface<V extends edu.uiuc.ncsa.security.core.Identifiable>
      • get

        public V get​(Object key)
        Specified by:
        get in interface Map<edu.uiuc.ncsa.security.core.Identifier,​V extends edu.uiuc.ncsa.security.core.Identifiable>
        Overrides:
        get in class edu.uiuc.ncsa.security.storage.FileStore<V extends edu.uiuc.ncsa.security.core.Identifiable>