Interface Annotation
- All Superinterfaces:
NBLabeledElement
- All Known Implementing Classes:
MutableAnnotation
This is a general purpose representation of an event that describes
a significant workflow detail to users running tests. It can be
an event that describes an instant, or it can describe an interval
in time (being associated with the interval of time between two
canonical events.)
This view of an annotation event captures the semantics of what
any reportable annotation should look like from the perspective of
NoSQLBench. It is up to the downstream consumers to map these
to concrete fields or identifiers as appropriate.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
NBLabeledElement.BasicLabeledElement -
Field Summary
Fields inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
EMPTY -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyLabelFunction(Function<NBLabels, NBLabels> labelfunc) asJson()The details are an ordered map of all the content that you would want the user to see.default longlongIf this is the same asgetStartMillis(), then the annotation is for an instant in time.The labels which identify what this annotation pertains to.getLayer()Annotations must be associated with a processing layer in NoSQLBench.longIf this is the same asgetEndMillis(), then the annotation is for an instant in time.This should returnTemporal.intervalif the span of time is not an instant, andTemporal.instant, otherwise.Methods inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
description
-
Method Details
-
getStartMillis
long getStartMillis()If this is the same asgetEndMillis(), then the annotation is for an instant in time.- Returns:
- The beginning of the interval of time that the annotation describes
-
getEndMillis
long getEndMillis()If this is the same asgetStartMillis(), then the annotation is for an instant in time.- Returns:
- The end of the interval of time that the annotation describes
-
getLayer
-
getLabels
NBLabels getLabels()The labels which identify what this annotation pertains to. The following labels should be provided for every annotation, when available:- appname: "nosqlbench"
- alias: The name of the activity alias, if available
- workload: The name of the workload file, if named scenarios are used
- scenario: The name of the named scenario, if named scenarios are used
- step: The name of the named scenario step, if named scenario are used
- usermode: "named_scenario" or "adhoc_activity"
- Specified by:
getLabelsin interfaceNBLabeledElement- Returns:
- The labels map
-
applyLabelFunction
-
getDetails
-
newBuilder
-
getTemporal
Temporal getTemporal()This should returnTemporal.intervalif the span of time is not an instant, andTemporal.instant, otherwise. -
asJson
String asJson() -
getDurationMillis
default long getDurationMillis()
-