Class DomainHistory

  • All Implemented Interfaces:
    Buildable, DatastoreEntity, SqlEntity, java.lang.Cloneable

    @Entity
    public class DomainHistory
    extends HistoryEntry
    implements SqlEntity
    A persisted history entry representing an EPP modification to a domain.

    In addition to the general history fields (e.g. action time, registrar ID) we also persist a copy of the domain entity at this point in time. We persist a raw DomainContent so that the foreign-keyed fields in that class can refer to this object.

    This class is only marked as a Datastore entity subclass and registered with Objectify so that when building it its ID can be auto-populated by Objectify. It is converted to its superclass HistoryEntry when persisted to Datastore using TransactionManager.

    • Constructor Detail

      • DomainHistory

        public DomainHistory()
    • Method Detail

      • getDomainRepoId

        public java.lang.String getDomainRepoId()
      • getOtherRegistrarId

        @Nullable
        public java.lang.String getOtherRegistrarId()
        For transfers, the id of the other registrar.

        For requests and cancels, the other registrar is the losing party (because the registrar sending the EPP transfer command is the gaining party). For approves and rejects, the other registrar is the gaining party.

        Overrides:
        getOtherRegistrarId in class HistoryEntry
      • getNsHosts

        public java.util.Set<VKey<HostResource>> getNsHosts()
        Returns keys to the HostResource that are the nameservers for the domain.
      • getDomainContent

        public java.util.Optional<DomainContent> getDomainContent()
        The values of all the fields on the DomainContent object after the action represented by this history object was executed.

        Will be absent for objects created prior to the Registry 3.0 SQL migration.

      • getGracePeriodHistories

        public java.util.Set<google.registry.model.domain.GracePeriod.GracePeriodHistory> getGracePeriodHistories()
      • getResourceAtPointInTime

        public java.util.Optional<? extends EppResource> getResourceAtPointInTime()
        Description copied from class: HistoryEntry
        Throws an error when attempting to retrieve the EppResource at this point in time.

        Subclasses must override this to return the resource; it is non-abstract for legacy reasons and objects created prior to the Registry 3.0 migration.

        Overrides:
        getResourceAtPointInTime in class HistoryEntry
      • beforeSqlSaveOnReplay

        public void beforeSqlSaveOnReplay()
        Description copied from interface: SqlEntity
        A method that will be called before the object is saved to SQL in asynchronous replay.
        Specified by:
        beforeSqlSaveOnReplay in interface SqlEntity