Class AttrHistoricalMultiple


  • public class AttrHistoricalMultiple
    extends AttrHistorical
    This class is used to store historical information for multiple valued attributes. One object of this type is created for each attribute that was changed in the entry. It allows to record the last time a given value was added,the last time a given value was deleted and the last time the whole attribute was deleted.
    • Method Detail

      • getDeleteTime

        public CSN getDeleteTime()
        Description copied from class: AttrHistorical
        Returns the last time when this attribute was deleted.
        Specified by:
        getDeleteTime in class AttrHistorical
        Returns:
        the last time when this attribute was deleted
      • containsAddedValue

        public boolean containsAddedValue​(ByteString normalizedValue,
                                          ByteString value)
        Description copied from class: AttrHistorical
        Returns true if this historical information contains add or replace meta-data for the provided attribute value.
        Specified by:
        containsAddedValue in class AttrHistorical
        Parameters:
        normalizedValue - The normalized attribute value.
        value - The attribute value.
        Returns:
        true if this historical information contains add or replace meta-data for the provided attribute value.
      • replayOperation

        public Modification replayOperation​(CSN csn,
                                            Entry modifiedEntry,
                                            Modification m)
        Description copied from class: AttrHistorical
        This method will be called when replaying an operation. It should use whatever historical information is stored in this class to solve the conflict and return the modification that will actually have to be replayed.
        Specified by:
        replayOperation in class AttrHistorical
        Parameters:
        csn - The CSN associated to the operation.
        modifiedEntry - The entry modified by this operation.
        m - The modification.
        Returns:
        The modification which should be replayed, or null if the modification should not be replayed.
      • processLocalOrNonConflictModification

        public void processLocalOrNonConflictModification​(CSN csn,
                                                          Modification mod)
        Description copied from class: AttrHistorical
        This method calculates the historical information and update the hist attribute to store the historical information for modify operation that does not conflict with previous operation. This is the usual path and should therefore be optimized.

        It does not check if the operation to process is conflicting or not with previous operations. The caller is responsible for this.

        Specified by:
        processLocalOrNonConflictModification in class AttrHistorical
        Parameters:
        csn - The CSN of the operation to process
        mod - The modify operation to process.