trait HealthElement extends AnyRef

A HealthElement maintains a health state and notifies HealthListeners whenever the state has changed.

HealthElements are refined in three dimensions - They can be atomic maintaining their own state (AtomicHealthElement) or composite (CompositeHealthElement) aggregating the states of their dependencies - The state can be refined to ToComponentHealthState with HealthQuasiComponent and further to ComponentHealthState with HealthComponent. - Whether they need to be closed on their own (CloseableHealthElement).

The traits from each dimension can be mixed together to create the appropriate combination. Do not mix several traits from the same dimension!

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. HealthElement
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. abstract type State

    The type of health states exposed by this component

Abstract Value Members

  1. abstract def associatedOnShutdownRunner: OnShutdownRunner

    The com.digitalasset.canton.lifecycle.OnShutdownRunner associated with this object.

    The com.digitalasset.canton.lifecycle.OnShutdownRunner associated with this object.

    When this com.digitalasset.canton.lifecycle.OnShutdownRunner closes, the health state permanently becomes closingState and all listeners are notified about this.

    Attributes
    protected
  2. abstract def closingState: State

    The state set when the associatedOnShutdownRunner closes

    The state set when the associatedOnShutdownRunner closes

    Attributes
    protected
  3. abstract def initialHealthState: State

    The initial state upon creation

    The initial state upon creation

    Attributes
    protected
  4. abstract def logger: TracedLogger
    Attributes
    protected
  5. abstract def name: String

    Name of the health element.

    Name of the health element. Used for logging.

  6. abstract def prettyState: Pretty[State]
    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  9. final def getState: State

    Returns the current state

  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  15. def refreshState(newState: Eval[State])(implicit traceContext: TraceContext): Unit

    Triggers a refresh of the component's state, using newState to determine the new state.

    Triggers a refresh of the component's state, using newState to determine the new state. May return before the newState has been evaluated and the listeners have been poked.

    Note that listeners need not be poked about every state change; it suffices that they are poked eventually after each state change. So if there are frequent updates to the state, possibly from concurrent calls, then the listeners may never see some intermediate states.

    Attributes
    protected
  16. def registerOnHealthChange(listener: HealthListener): Boolean

    Registers a listener that gets poked upon each change of this element's health state.

    Registers a listener that gets poked upon each change of this element's health state.

    returns

    Whether the listener was not registered before

  17. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. def unregisterOnHealthChange(listener: HealthListener): Boolean

    Unregisters a listener.

    Unregisters a listener.

    returns

    Whether the listener was registered before.

  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped