Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Basically we do have 3 states for a feature, such as: pending, complete, expiredAs a Container, a Feature also has an attribute called state, which defines the current state of that Feature.

This attribute value has three possible values, they are: pending, complete, expired

A Feature state will always respect the following lifecycle:

pending => [complete or expired]

States

  1. pending
    When you create a feature, such as pushpull or p2 the first state he assumes is pending.

  2. complete
    When you finishes with a feature, the state change from pendingto complete.

  3. expired
    When you have a feature whose the field: expiration is lower than a current date-time, the state change from pending to expired, Current this time by default is 3 days for featurea Feature is added to a Container, it initial state is set as pending. This means that Feature is accessible by the user if the Container is already open to your end user.

  4. complete
    Indicates when a given Feature of a Container has been completed. One of the Feature of that Container being complete does not mean the others of that Container it will. Each Feature inside a Container is a separated objetc with your own state, expiration and set of attributes. A Feature may be marked as complete in 2 cases. The first is when the end user finished everything he had to do with that Feature and, complete it. The second is when a Container is marked as complete, then all Feature(s) of that respective Container are marked as complete. The Feature is no longer accessbible by the user in this state.

  5. expired
    This indicates when a Feature have already expired. A Feature in a expired state won’t be accessbible by any user.