Class ReplicaStore

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class ReplicaStore
    extends Data
    implements java.lang.Cloneable
    A Replica Store that allows us to store the entries from a replica catalog. The store map is indexed by LFN's and values stored are ReplicaLocation objects.
    Version:
    $Revision$
    Author:
    Karan Vahi, Gaurang Mehta
    See Also:
    org.griphyn.common.catalog.ReplicaCatalogEntry
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Map mStore
      The replica store.
    • Constructor Summary

      Constructors 
      Constructor Description
      ReplicaStore()
      Default constructor.
      ReplicaStore​(java.util.Map rces)
      Overloaded constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(ReplicaLocation rl)
      Adds replica catalog entries into the store.
      void add​(java.lang.String lfn, java.util.Collection tuples)
      Adds replica catalog entries into the store.
      void add​(java.util.Map rces)
      Adds ReplicaCatalogEntries into the store.
      java.lang.Object clone()
      Returns the clone of the object.
      boolean containsLFN​(java.lang.String lfn)
      Returns a boolean indicating whether the store has a mapping for a particular LFN or not.
      protected ReplicaLocation get​(java.lang.String key)
      Returns an entry corresponding to the LFN
      int getLFNCount()
      Returns the number of LFN's for which the mappings are stored in the store.
      java.util.Set getLFNs()
      Returns the set of LFN's for which the mappings are stored in the store.
      java.util.Set getLFNs​(java.util.Set lfns)
      Returns a Set of lfns for which the mappings are stored in the store, amongst the Set passed as input.
      ReplicaLocation getReplicaLocation​(java.lang.String lfn)
      Returns a ReplicaLocation corresponding to the LFN.
      boolean isEmpty()
      Returns a boolean indicating whether a store is empty or not.
      protected java.lang.Object put​(java.lang.String key, ReplicaLocation value)
      Inserts entry in the store overwriting any existing entry.
      java.util.Iterator replicaLocationIterator()
      Returns an iterator to the list of ReplicaLocation objects stored in the store.
      void store​(java.util.Map rces)
      Stores replica catalog entries into the store.
      java.lang.String toString()
      Returns the textual description of the data class.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • mStore

        private java.util.Map mStore
        The replica store.
    • Constructor Detail

      • ReplicaStore

        public ReplicaStore()
        Default constructor.
      • ReplicaStore

        public ReplicaStore​(java.util.Map rces)
        Overloaded constructor. Intializes the member variables to the values passed.
        Parameters:
        rces - map indexed by LFN's and each value is a collection of replica catalog entries for the LFN.
    • Method Detail

      • store

        public void store​(java.util.Map rces)
        Stores replica catalog entries into the store. It overwrites any existing entries with the same LFN's. The ReplicaCatlogEntry ends up being stored as a ReplicaLocation object.
        Parameters:
        rces - map indexed by LFN's and each value is a collection of replica catalog entries for the LFN.
      • add

        public void add​(java.util.Map rces)
        Adds ReplicaCatalogEntries into the store. Any existing mapping of the same LFN and PFN will be replaced, including all its attributes. The ReplicaCatlogEntry ends up being stored as a ReplicaLocation object.
        Parameters:
        rces - map indexed by LFN's and each value is a collection of replica catalog entries for the LFN.
      • add

        public void add​(java.lang.String lfn,
                        java.util.Collection tuples)
        Adds replica catalog entries into the store. Any existing mapping of the same LFN and PFN will be replaced, including all its attributes.
        Parameters:
        lfn - the lfn.
        tuples - list of ReplicaCatalogEntry containing the PFN and the attributes.
      • add

        public void add​(ReplicaLocation rl)
        Adds replica catalog entries into the store. Any existing mapping of the same LFN and PFN will be replaced, including all its attributes.
        Parameters:
        rl - the ReplicaLocation containing a pfn and all the attributes.
      • getReplicaLocation

        public ReplicaLocation getReplicaLocation​(java.lang.String lfn)
        Returns a ReplicaLocation corresponding to the LFN.
        Parameters:
        lfn - the lfn for which the ReplicaLocation is required.
        Returns:
        ReplicaLocation if entry exists else null.
      • replicaLocationIterator

        public java.util.Iterator replicaLocationIterator()
        Returns an iterator to the list of ReplicaLocation objects stored in the store.
        Returns:
        Iterator.
      • getLFNs

        public java.util.Set getLFNs()
        Returns the set of LFN's for which the mappings are stored in the store.
        Returns:
        Set
      • getLFNs

        public java.util.Set getLFNs​(java.util.Set lfns)
        Returns a Set of lfns for which the mappings are stored in the store, amongst the Set passed as input.
        Parameters:
        lfns - the collections of lfns
        Returns:
        Set
      • isEmpty

        public boolean isEmpty()
        Returns a boolean indicating whether a store is empty or not.
        Returns:
        boolean
      • getLFNCount

        public int getLFNCount()
        Returns the number of LFN's for which the mappings are stored in the store.
        Returns:
        int
      • clone

        public java.lang.Object clone()
        Returns the clone of the object.
        Overrides:
        clone in class java.lang.Object
        Returns:
        the clone
      • toString

        public java.lang.String toString()
        Returns the textual description of the data class.
        Specified by:
        toString in class Data
        Returns:
        the textual description.
      • containsLFN

        public boolean containsLFN​(java.lang.String lfn)
        Returns a boolean indicating whether the store has a mapping for a particular LFN or not.
        Parameters:
        lfn - the logical file name of the file.
        Returns:
        boolean
      • put

        protected java.lang.Object put​(java.lang.String key,
                                       ReplicaLocation value)
        Inserts entry in the store overwriting any existing entry.
        Parameters:
        key - the key
        value - ReplicaLocation object.
        Returns:
        Object
      • get

        protected ReplicaLocation get​(java.lang.String key)
        Returns an entry corresponding to the LFN
        Parameters:
        key - the LFN
        Returns:
        ReplicaLocation object if exists, else null.