Class StampManager

  • Direct Known Subclasses:
    LogicalStampManager, TemporalStampManager

    public abstract class StampManager
    extends java.lang.Object
    This interface must be implemented by classes providing stamps.
    Author:
    Olivier Dedieu
    • Constructor Summary

      Constructors 
      Constructor Description
      StampManager​(java.lang.String urid, long logicalTime)
      Creates a new StampManager
    • Constructor Detail

      • StampManager

        public StampManager​(java.lang.String urid,
                            long logicalTime)
        Creates a new StampManager
        Parameters:
        urid - Unique Replica IDentifier
        logicalTime - the starting logical time
    • Method Detail

      • getProgressTable

        public StampTable getProgressTable()
        Returns the map of greatest stamp
        Returns:
        a Stamp
        Since:
        jcms-4.1
      • getProgressStamp

        public Stamp getProgressStamp​(java.lang.String urid)
        Returns the greatest stamp for a given urid.
        Parameters:
        urid - the urid
        Returns:
        a Stamp
      • getStamp

        public abstract Stamp getStamp()
        Return a new stamp. Ensures their strict monotonicity.
        Returns:
        a new stamp
      • update

        public void update​(Stamp stamp,
                           boolean updatePT)
        Updates the clock and the progressTable
        Parameters:
        stamp - the stamp containing the new time (MUST BE greater
        updatePT - if true use this stamp to update the progress table than the current time, otherwise it is ignored)
        Since:
        jcms-5.0.6
      • getUrid

        public java.lang.String getUrid()
        Get the value of urid.
        Returns:
        Value of urid.
      • setUrid

        public void setUrid​(java.lang.String v)
        Set the value of urid.
        Parameters:
        v - Value to assign to urid.