public abstract class MetricResult<T>
extends java.lang.Object
TODO(BEAM-6265): Decouple wire formats from internal formats, remove usage of MetricName.
| Constructor and Description | 
|---|
| MetricResult() | 
| Modifier and Type | Method and Description | 
|---|---|
| MetricResult<T> | addAttempted(T update,
            java.util.function.BiFunction<T,T,T> combine) | 
| MetricResult<T> | addCommitted(T update,
            java.util.function.BiFunction<T,T,T> combine) | 
| static <T> MetricResult<T> | attempted(MetricKey key,
         T attempted) | 
| static <T> MetricResult<T> | create(MetricKey key,
      java.lang.Boolean isCommittedSupported,
      T value) | 
| static <T> MetricResult<T> | create(MetricKey key,
      T committed,
      T attempted) | 
| abstract T | getAttempted()Return the value of this metric across all attempts of executing all parts of the pipeline. | 
| T | getCommitted()Return the value of this metric across all successfully completed parts of the pipeline. | 
| abstract T | getCommittedOrNull()Return the value of this metric across all attempts of executing all parts of the pipeline. | 
| abstract MetricKey | getKey() | 
| MetricName | getName()Return the name of the metric. | 
| boolean | hasCommitted() | 
| <V> MetricResult<V> | transform(java.util.function.Function<T,V> fn) | 
public MetricName getName()
public abstract MetricKey getKey()
public T getCommitted()
Not all runners will support committed metrics. If they are not supported, the runner will
 throw an UnsupportedOperationException.
public boolean hasCommitted()
public abstract T getCommittedOrNull()
public abstract T getAttempted()
public <V> MetricResult<V> transform(java.util.function.Function<T,V> fn)
public MetricResult<T> addAttempted(T update, java.util.function.BiFunction<T,T,T> combine)
public MetricResult<T> addCommitted(T update, java.util.function.BiFunction<T,T,T> combine)
public static <T> MetricResult<T> attempted(MetricKey key, T attempted)
public static <T> MetricResult<T> create(MetricKey key, java.lang.Boolean isCommittedSupported, T value)
public static <T> MetricResult<T> create(MetricKey key, T committed, T attempted)