public interface ArmMetricFactory extends ArmInterface
setErrorCallback(ArmErrorCallback)
). For additional
details about error handling philosophy see the description
in ArmTransactionFactory
.
Semantics of the factory methods are provided in the description
of the individual methods below.
ArmMetricFactory
is instantiated using a class loader.
The actual name of the factory implementation class is obtained from the
system property whose name is provided in the
propertyKey
constant.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
propertyKey
name of system property holding the implementation class name.
|
Modifier and Type | Method and Description |
---|---|
ArmMetricCounter32 |
newArmMetricCounter32(ArmMetricCounter32Definition definition)
Creates a new metric instance.
|
ArmMetricCounter32Definition |
newArmMetricCounter32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricCounter64 |
newArmMetricCounter64(ArmMetricCounter64Definition definition)
Creates a new metric instance.
|
ArmMetricCounter64Definition |
newArmMetricCounter64Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricCounterFloat32 |
newArmMetricCounterFloat32(ArmMetricCounterFloat32Definition definition)
Creates a new metric instance.
|
ArmMetricCounterFloat32Definition |
newArmMetricCounterFloat32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricGauge32 |
newArmMetricGauge32(ArmMetricGauge32Definition definition)
Creates a new metric instance.
|
ArmMetricGauge32Definition |
newArmMetricGauge32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricGauge64 |
newArmMetricGauge64(ArmMetricGauge64Definition definition)
Creates a new metric instance.
|
ArmMetricGauge64Definition |
newArmMetricGauge64Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricGaugeFloat32 |
newArmMetricGaugeFloat32(ArmMetricGaugeFloat32Definition definition)
Creates a new metric instance.
|
ArmMetricGaugeFloat32Definition |
newArmMetricGaugeFloat32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricGroup |
newArmMetricGroup(ArmMetricGroupDefinition groupDefinition,
ArmMetric[] metrics)
Creates an ordered set of
ArmMetric subclasses
ready for binding to transaction objects. |
ArmMetricGroupDefinition |
newArmMetricGroupDefinition(ArmMetricDefinition[] definitions)
Creates an ordered set of
ArmMetricDefinition subclasses
ready for binding to transaction definition objects. |
ArmMetricNumericId32 |
newArmMetricNumericId32(ArmMetricNumericId32Definition definition)
Creates a new metric instance.
|
ArmMetricNumericId32Definition |
newArmMetricNumericId32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricNumericId64 |
newArmMetricNumericId64(ArmMetricNumericId64Definition definition)
Creates a new metric instance.
|
ArmMetricNumericId64Definition |
newArmMetricNumericId64Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmMetricString32 |
newArmMetricString32(ArmMetricString32Definition definition)
Creates a new metric instance.
|
ArmMetricString32Definition |
newArmMetricString32Definition(ArmApplicationDefinition app,
java.lang.String name,
java.lang.String units,
short usage,
ArmID id)
Creates a new metadata instance.
|
ArmTranReportWithMetrics |
newArmTranReportWithMetrics(ArmApplication app,
ArmTransactionWithMetricsDefinition definition,
ArmMetricGroup group)
Creates an object that represents an instance of a transaction
with an
ArmTranReport interface. |
ArmTransactionWithMetrics |
newArmTransactionWithMetrics(ArmApplication app,
ArmTransactionWithMetricsDefinition definition,
ArmMetricGroup group)
Creates an object that represents an instance of a transaction.
|
ArmTransactionWithMetricsDefinition |
newArmTransactionWithMetricsDefinition(ArmApplicationDefinition app,
java.lang.String name,
ArmIdentityPropertiesTransaction identityProperties,
ArmMetricGroupDefinition definition,
ArmID id)
Creates an object that contains the metadata about a transaction.
|
boolean |
setErrorCallback(ArmErrorCallback errorCallback)
Registers an error callback for objects created through this factory.
|
getErrorCode, getErrorMessage, setErrorCode
static final java.lang.String propertyKey
ArmMetricCounter32Definition newArmMetricCounter32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricDefinition
ArmMetricCounter64Definition newArmMetricCounter64Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricCounterFloat32Definition newArmMetricCounterFloat32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricGauge32Definition newArmMetricGauge32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricGauge64Definition newArmMetricGauge64Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricGaugeFloat32Definition newArmMetricGaugeFloat32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricNumericId32Definition newArmMetricNumericId32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricNumericId64Definition newArmMetricNumericId64Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricString32Definition newArmMetricString32Definition(ArmApplicationDefinition app, java.lang.String name, java.lang.String units, short usage, ArmID id)
app
- metadata about the containing application.name
- name for this definition.units
- units descrioption, or null
.usage
- One of
ArmMetricDefinition.METRIC_USE_GENERAL
,
ArmMetricDefinition.METRIC_USE_TRAN_SIZE
,
ArmMetricDefinition.METRIC_USE_TRAN_STATUS
,
or an application-specific negative value.id
- ID provided by the application for this metric definition,
or null
.ArmMetricGroupDefinition newArmMetricGroupDefinition(ArmMetricDefinition[] definitions)
ArmMetricDefinition
subclasses
ready for binding to transaction definition objects.definitions
- An array of ArmMetricDefinition objects.
The ordering in the array is important. The array can have up to
seven elements and is position-sensitive. To remain consistent with
ARM 2.0, any ArmMetricDefinition
subclass except
ArmMetricString32Definition
can be assigned to
elements 0:5
and only
ArmMetricString32Definition
can be assigned to element
6
.
Any element can be null. If the input array has fewer
than seven elements, the rest of the elements are assigned a value of
null
. The array can be sparsely populated.
For example, there can be a non-null
ArmMetricDefinition
reference in element 0
and 6
, and null
references in elements
1:5
.ArmTransactionWithMetricsDefinition newArmTransactionWithMetricsDefinition(ArmApplicationDefinition app, java.lang.String name, ArmIdentityPropertiesTransaction identityProperties, ArmMetricGroupDefinition definition, ArmID id)
ArmTransactionDefinition
section. In addition, a binding to a set of metadata about
metrics is added via an ArmMetricGroupDefinition
object.app
- metadata about the containing application.name
- name for this definition.identityProperties
- an initialized set of identity properties.definition
- the metric definitions to be used with this
transaction.id
- ID provided by the application for this transaction
definition, or null
.ArmMetricCounter32 newArmMetricCounter32(ArmMetricCounter32Definition definition)
definition
- the metadata describing this metric.ArmMetricCounter64 newArmMetricCounter64(ArmMetricCounter64Definition definition)
definition
- the metadata describing this metric.ArmMetricCounterFloat32 newArmMetricCounterFloat32(ArmMetricCounterFloat32Definition definition)
definition
- the metadata describing this metric.ArmMetricGauge32 newArmMetricGauge32(ArmMetricGauge32Definition definition)
definition
- the metadata describing this metric.ArmMetricGauge64 newArmMetricGauge64(ArmMetricGauge64Definition definition)
definition
- the metadata describing this metric.ArmMetricGaugeFloat32 newArmMetricGaugeFloat32(ArmMetricGaugeFloat32Definition definition)
definition
- the metadata describing this metric.ArmMetricNumericId32 newArmMetricNumericId32(ArmMetricNumericId32Definition definition)
definition
- the metadata describing this metric.ArmMetricNumericId64 newArmMetricNumericId64(ArmMetricNumericId64Definition definition)
definition
- the metadata describing this metric.ArmMetricString32 newArmMetricString32(ArmMetricString32Definition definition)
definition
- the metadata describing this metric.ArmMetricGroup newArmMetricGroup(ArmMetricGroupDefinition groupDefinition, ArmMetric[] metrics)
ArmMetric
subclasses
ready for binding to transaction objects.groupDefinition
- metadata object describing the metrics
provided through the metrics
parameter.metrics
- an array of ArmMetric
objects.
The ordering in the array is important. The array can have up to
seven elements and is position-sensitive. To remain consistent
with ARM 2.0, any ArmMetric
subclass except
ArmMetricString32
can be assigned to elements
0:5
and only ArmMetricString32
can be
assigned to element 6
. The
ArmMetricDefinition
objects associated with each
ArmMetric
object must have the exact same values as
the ArmMetricDefinition
objects associated with
the ArmMetricGroupDefinition
object
(they will often be the same objects, though this is not mandatory).
Any element can be null
. If the input array has fewer
than seven elements, the rest of the elements are assigned a value
of null
. The array can be sparsely populated.
For example, there can be a non-null
ArmMetric
reference in element 0
and
6
, and null
references in elements
1:5
.ArmTranReportWithMetrics newArmTranReportWithMetrics(ArmApplication app, ArmTransactionWithMetricsDefinition definition, ArmMetricGroup group)
ArmTranReport
interface.app
- instance of the containing application (scope).definition
- metadata about the transaction.group
- metrics binding object.
If the metric group reference is null, the resulting
ArmTranReportWithMetrics
has no metrics, so it
would have no more functions than an ArmTranReport
object, except to return null to the
ArmTranReportWithMetrics.getMetricGroup()
method.ArmTransactionWithMetrics newArmTransactionWithMetrics(ArmApplication app, ArmTransactionWithMetricsDefinition definition, ArmMetricGroup group)
app
- instance of the containing application (scope).definition
- metadata about the transaction.group
- metrics binding object.
If the metric group reference is null, the resulting
ArmTranReportWithMetrics
has no metrics, so it
would have no more functions than an ArmTranReport
object, except to return null to the
ArmTranReportWithMetrics.getMetricGroup()
method.boolean setErrorCallback(ArmErrorCallback errorCallback)
ArmTransactionFactory
.errorCallback
- an application object implementing the
ArmErrorCallback> interface.
true
if registration is accepted.ArmTransactionFactory.setErrorCallback(org.opengroup.arm40.transaction.ArmErrorCallback)