Class DefaultUpdatingVOMSTrustStore

java.lang.Object
org.italiangrid.voms.store.impl.DefaultVOMSTrustStore
org.italiangrid.voms.store.impl.DefaultUpdatingVOMSTrustStore
All Implemented Interfaces:
Updateable, UpdatingVOMSTrustStore, VOMSTrustStore

public class DefaultUpdatingVOMSTrustStore extends DefaultVOMSTrustStore implements UpdatingVOMSTrustStore
A VOMS trust store that periodically updates itself. The update frequency is set once at VOMS trust store creation time.
  • Field Details

    • DEFAULT_UPDATE_FREQUENCY

      public static final long DEFAULT_UPDATE_FREQUENCY
      Default trust store update frequency (10 minutes).
    • updateFrequency

      private long updateFrequency
      This trust store update frequency in milliseconds.
    • scheduler

      private final ScheduledExecutorService scheduler
      The scheduler used to schedule the update tasks.
  • Constructor Details

    • DefaultUpdatingVOMSTrustStore

      public DefaultUpdatingVOMSTrustStore(List<String> localTrustDirs, long updateFrequency, VOMSTrustStoreStatusListener listener)
      Builds a trust store configured as defined in the parameters.
      Parameters:
      localTrustDirs - where VOMS trust information will be looked for
      updateFrequency - the update frequency in milliseconds
      listener - a listener that is notified of interesting events related to this store
    • DefaultUpdatingVOMSTrustStore

      public DefaultUpdatingVOMSTrustStore(long updateFrequency)
      Builds a trust store configured as defined in the parameters.
      Parameters:
      updateFrequency - the update frequency in milliseconds
    • DefaultUpdatingVOMSTrustStore

      public DefaultUpdatingVOMSTrustStore(List<String> localTrustDirs, long updateFrequency)
      Builds a trust store configured as defined in the parameters.
      Parameters:
      localTrustDirs - where VOMS trust information will be looked for
      updateFrequency - the update frequency in milliseconds
    • DefaultUpdatingVOMSTrustStore

      public DefaultUpdatingVOMSTrustStore(List<String> localTrustDirs)
      Builds a trust store configured as defined in the parameters.
      Parameters:
      localTrustDirs - where VOMS trust information will be looked for
    • DefaultUpdatingVOMSTrustStore

      public DefaultUpdatingVOMSTrustStore()
      Builds a trust store. VOMS information will be searched in the default VOMS dir location (DefaultVOMSTrustStore.DEFAULT_VOMS_DIR). This store will be refreshed according to the value of DEFAULT_UPDATE_FREQUENCY.
  • Method Details

    • updateFrequencySanityChecks

      protected void updateFrequencySanityChecks(long updateFrequency)
    • scheduleUpdate

      protected void scheduleUpdate()
    • getUpdateFrequency

      public long getUpdateFrequency()
      Returns the update frequency, in milliseconds, for this store.
      Specified by:
      getUpdateFrequency in interface Updateable
      Returns:
      the frequency (in milliseconds) currently set for this Updateable object.
    • update

      public void update()
      Updates the information in this store
      Specified by:
      update in interface Updateable
    • cancel

      public void cancel()
      Cancel the background tasks which updates this store.
      Specified by:
      cancel in interface Updateable