Class AlertsInstanceMetaData
java.lang.Object
com.kingsrook.qqq.backend.core.alerts.AlertsInstanceMetaData
- All Implemented Interfaces:
MetaDataProducerOutput,QMetaDataObject,QSupplementalInstanceMetaData,TopLevelMetaDataInterface,Serializable
Instance-level alerts meta-data: the sink that QAlerts sends signals to
(default: LoggingAlertSink) and every declared QAlertTypeMetaData. It is
supplemental meta-data, so any module or qbit can add to it.
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAlertType(String name) Find a declared type by name, or null.Getter for alertTypesgetName()getSink()Getter for sinkstatic AlertsInstanceMetaDataGet the instance's alerts meta-data, or null when nothing added it.static AlertsInstanceMetaDataofOrWithNew(QInstance qInstance) Get the instance's alerts meta-data, adding an empty one if it has none.voidvalidate(QInstance qInstance, QInstanceValidator validator) Names must be unique and well-formed, subject tables must exist, a visibility permission must not be blank, heartbeat default monitors need an interval, and the sink must implement AlertSinkInterface.withAlertType(QAlertTypeMetaData alertType) Declare an alert type.withSink(QCodeReference sink) Fluent setter for sink - an AlertSinkInterface implementation.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.kingsrook.qqq.backend.core.model.metadata.QSupplementalInstanceMetaData
addSelfToInstance, enrich
-
Field Details
-
NAME
- See Also:
-
ALERT_TYPE_NAME_PATTERN
alert type names: lowercase, dotted, at least two segments.
-
-
Constructor Details
-
AlertsInstanceMetaData
public AlertsInstanceMetaData()
-
-
Method Details
-
of
Get the instance's alerts meta-data, or null when nothing added it. -
ofOrWithNew
Get the instance's alerts meta-data, adding an empty one if it has none. -
getName
- Specified by:
getNamein interfaceTopLevelMetaDataInterface
-
getSink
Getter for sink -
withSink
Fluent setter for sink - an AlertSinkInterface implementation. An alerts implementation sets this; producers never do. -
getAlertTypes
Getter for alertTypes -
getAlertType
Find a declared type by name, or null. -
withAlertType
Declare an alert type. Adding the same object again is a no-op; adding a different type with a name already taken is a validation error. -
validate
Names must be unique and well-formed, subject tables must exist, a visibility permission must not be blank, heartbeat default monitors need an interval, and the sink must implement AlertSinkInterface.- Specified by:
validatein interfaceQSupplementalInstanceMetaData
-