Class TimedTransitionProperty.TimedTransition<V extends>

  • All Implemented Interfaces:
    UnsafeSerializable,, java.lang.Cloneable
    Direct Known Subclasses:
    AllocationToken.TokenStatusTransition, DatabaseMigrationStateSchedule.MigrationStateTransition, Registry.BillingCostTransition, Registry.TldStateTransition
    Enclosing class:
    TimedTransitionProperty<V extends,​T extends TimedTransitionProperty.TimedTransition<V>>

    public abstract static class TimedTransitionProperty.TimedTransition<V extends>
    extends ImmutableObject
    implements UnsafeSerializable
    A transition to a value of type V at a certain time. This superclass only has a field for the DateTime, which means that subclasses should supply the field of type V and implementations of the abstract getter and setter methods to access that field. This design is so that subclasses tagged with @Embed can define a custom field name for their value, for the purpose of backwards compatibility and better readability of the Datastore representation.

    The public visibility of this class exists only so that it can be subclassed; clients should never call any methods on this class or attempt to access its members, but should instead treat it as a customizable implementation detail of TimedTransitionProperty. However, note that subclasses must also have public visibility so that they can be instantiated via reflection in a call to fromValueMap.

    See Also:
    Serialized Form
    • Constructor Detail

      • TimedTransition

        public TimedTransition()
    • Method Detail

      • getValue

        protected abstract V getValue()
        Returns the value that this transition will activate.
      • setValue

        protected abstract void setValue​(V value)
        Sets the value that will be activated at this transition's time.