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!
- Alphabetic
- By Inheritance
- HealthElement
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract type State
The type of health states exposed by this component
Abstract Value Members
- 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
- abstract def closingState: State
The state set when the associatedOnShutdownRunner closes
The state set when the associatedOnShutdownRunner closes
- Attributes
- protected
- abstract def initialHealthState: State
The initial state upon creation
The initial state upon creation
- Attributes
- protected
- abstract def logger: TracedLogger
- Attributes
- protected
- abstract def name: String
Name of the health element.
Name of the health element. Used for logging.
- abstract def prettyState: Pretty[State]
- Attributes
- protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def getState: State
Returns the current state
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- 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 thenewState
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
- 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
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def unregisterOnHealthChange(listener: HealthListener): Boolean
Unregisters a listener.
Unregisters a listener.
- returns
Whether the listener was registered before.
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])