com.tibbo.aggregate.common.structure

## Interface PinpointAware

- All Known Subinterfaces:
    RequestController
  All Known Implementing Classes:
    AwaitableRequestController, ContextImportRequestController, DefaultRequestController, EvaluationEnvironment, EvaluationOptions, Expression, FireChangeEventRequestController, FireEventRequestController, SynchronousRequestController

      public interface PinpointAware

  The interface to denote objects capable of holding a `Pinpoint`. The way of storing the pinpoint itself is implementation specific, so the only thing this interface knows about is that the pinpoint can be `null`.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default void` | `assignPinpoint(java.util.Optional<Pinpoint> pinpointOpt)`
    `void` | `assignPinpoint(Pinpoint pinpoint)` Assigns this object with the given pinpoint
    `java.util.Optional<Pinpoint>` | `obtainPinpoint()`
    `default void` | `removePinpoint()`

- - ### Method Detail

    - #### assignPinpoint

          void assignPinpoint(Pinpoint pinpoint)
                       throws java.lang.IllegalStateException

      Assigns this object with the given pinpoint
      Parameters:
        `pinpoint` - a pinpoint this object should be associated with
      Throws:
        `java.lang.IllegalStateException` - in case pinpoint cannot be assigned after object construction

    - #### assignPinpoint

          default void assignPinpoint(java.util.Optional<Pinpoint> pinpointOpt)

    - #### obtainPinpoint

          java.util.Optional<Pinpoint> obtainPinpoint()

    - #### removePinpoint

          default void removePinpoint()