Interface OpFacets<D>

Type Parameters:
D - The data carrier parameter type. Any OpFacets implementation can be used to carry any state which is needed to support a specific type of operation.
All Superinterfaces:
Comparable<CycleResult>, CompletedOp<D>, CycleMutable, CycleReadable, CycleResult, FailedOp<D>, Payload<D>, ResultReadable, SkippedOp<D>, StartedOp<D>, SucceededOp<D>, TrackedOp<D>
All Known Implementing Classes:
EventedOpImpl, OpImpl

public interface OpFacets<D> extends TrackedOp<D>, StartedOp<D>, SucceededOp<D>, FailedOp<D>, SkippedOp<D>
This interface represents the union of interfaces needed for all of the behavioral facets of a useful Op implementation. By implementing these faceted interfaces by way of the OpFacets interface, an implementation can be a state carrier that exposes a contextual interface by declaration. While this not a secure method of enforcing type and interface over shared state, it does provide a high degree of simplification for developers who wish to constrain the operational view of an object according to an implied state machine.
  • Method Details

    • compareTo

      default int compareTo(OpFacets<D> o)