Modifier and Type | Class and Description |
---|---|
static class |
Scannable.Attr.RunStyle
An
Enum enumerating the different styles an operator can run : their Enum.ordinal() reflects the level of confidence
in their running mode |
Modifier and Type | Field and Description |
---|---|
static Scannable.Attr<Scannable> |
ACTUAL
The direct dependent component downstream reference if any.
|
static Scannable.Attr<Boolean> |
ACTUAL_METADATA
|
static Scannable.Attr<Integer> |
BUFFERED
A
Integer attribute implemented by components with a backlog
capacity. |
static Scannable.Attr<Boolean> |
CANCELLED
A
Boolean attribute indicating whether or not a downstream component
has interrupted consuming this scanned component, e.g., a cancelled
subscription. |
static Scannable.Attr<Integer> |
CAPACITY
|
static Scannable.Attr<Boolean> |
DELAY_ERROR
Delay_Error exposes a
Boolean whether the scanned component
actively supports error delaying if it manages a backlog instead of fast
error-passing which might drop pending backlog. |
static Scannable.Attr<Throwable> |
ERROR
a
Throwable attribute which indicate an error state if the scanned
component keeps track of it. |
static Scannable.Attr<Long> |
LARGE_BUFFERED
Similar to
BUFFERED , but reserved for operators that can hold
a backlog of items that can grow beyond Integer.MAX_VALUE. |
static Scannable.Attr<String> |
LIFTER
LIFTER attribute exposes name of the lifter function.
|
static Scannable.Attr<String> |
NAME
An arbitrary name given to the operator component.
|
static Scannable.Attr<Scannable> |
PARENT
Parent key exposes the direct upstream relationship of the scanned component.
|
static Scannable.Attr<Integer> |
PREFETCH
Prefetch is an
Integer attribute defining the rate of processing in a
component which has capacity to request and hold a backlog of data. |
static Scannable.Attr<Long> |
REQUESTED_FROM_DOWNSTREAM
A
Long attribute exposing the current pending demand of a downstream
component. |
static Scannable.Attr<Scannable> |
RUN_ON
|
static Scannable.Attr<Scannable.Attr.RunStyle> |
RUN_STYLE
An
Scannable.Attr.RunStyle enum attribute indicating whether or not an operator continues to operate on the same thread. |
static Scannable.Attr<Stream<Tuple2<String,String>>> |
TAGS
|
static Scannable.Attr<Boolean> |
TERMINATED
A
Boolean attribute indicating whether or not an upstream component
terminated this scanned component. |
Modifier | Constructor and Description |
---|---|
protected |
Attr(T defaultValue) |
protected |
Attr(T defaultValue,
Function<Object,? extends T> safeConverter) |
Modifier and Type | Method and Description |
---|---|
T |
defaultValue()
Meaningful and always applicable default value for the attribute, returned
instead of null when a specific value hasn't been defined for a
component.
|
public static final Scannable.Attr<Scannable> ACTUAL
Scannable
, but this attribute will convert these raw results to an
unavailable scan
object in this case.
A reference chain downstream can be navigated via Scannable.actuals()
.
public static final Scannable.Attr<Boolean> ACTUAL_METADATA
Scannable
should be used as additional
source of information about a contiguous Scannable
in the chain.
For example Scannable.steps()
uses this to collate the
stepName
of an assembly trace to its
wrapped operator (the one before it in the assembly chain).
public static final Scannable.Attr<Integer> BUFFERED
Integer
attribute implemented by components with a backlog
capacity. It will expose current queue size or similar related to
user-provided held data. Note that some operators and processors CAN keep
a backlog larger than Integer.MAX_VALUE
, in which case
the Attr
LARGE_BUFFERED
should be used instead. Such operators will attempt to serve a BUFFERED
query but will return Integer.MIN_VALUE
when actual buffer size is
oversized for int.public static final Scannable.Attr<Integer> CAPACITY
Integer
capacity when no PREFETCH
is defined or
when an arbitrary maximum limit is applied to the backlog capacity of the
scanned component. Integer.MAX_VALUE
signal unlimited capacity.
Note: This attribute usually resolves to a constant value.
public static final Scannable.Attr<Boolean> CANCELLED
Boolean
attribute indicating whether or not a downstream component
has interrupted consuming this scanned component, e.g., a cancelled
subscription. Note that it differs from TERMINATED
which is
intended for "normal" shutdown cycles.public static final Scannable.Attr<Boolean> DELAY_ERROR
Boolean
whether the scanned component
actively supports error delaying if it manages a backlog instead of fast
error-passing which might drop pending backlog.
Note: This attribute usually resolves to a constant value.
public static final Scannable.Attr<Throwable> ERROR
Throwable
attribute which indicate an error state if the scanned
component keeps track of it.public static final Scannable.Attr<Long> LARGE_BUFFERED
BUFFERED
, but reserved for operators that can hold
a backlog of items that can grow beyond Integer.MAX_VALUE. These
operators will also answer to a BUFFERED
query up to the point
where their buffer is actually too large, at which point they'll return
Integer.MIN_VALUE, which serves as a signal that this attribute
should be used instead. Defaults to null.
Flux.flatMap
, Flux.filterWhen
and Flux.window
(with overlap) are known to use this attribute.
public static final Scannable.Attr<String> NAME
public static final Scannable.Attr<Scannable> PARENT
Scannable
, but this attribute
will convert such raw results to an unavailable scan
object in this case.
Scannable.parents()
can be used to navigate the parent chain.
public static final Scannable.Attr<Scannable> RUN_ON
Scannable
to another Scannable
it runs on.
Usually exposes a link between an operator/subscriber and its Scheduler.Worker
or
Scheduler
, provided these are Scannable
. Will return
UNAVAILABLE_SCAN
if the supporting execution is not Scannable or
NULL_SCAN
if the operator doesn't define a specific runtime.public static final Scannable.Attr<Integer> PREFETCH
Integer
attribute defining the rate of processing in a
component which has capacity to request and hold a backlog of data. It
usually maps to a component capacity when no arbitrary CAPACITY
is
set. Integer.MAX_VALUE
signal unlimited capacity and therefore
unbounded demand.
Note: This attribute usually resolves to a constant value.
public static final Scannable.Attr<Long> REQUESTED_FROM_DOWNSTREAM
Long
attribute exposing the current pending demand of a downstream
component. Note that Long.MAX_VALUE
indicates an unbounded (push-style)
demand as specified in Subscription.request(long)
.public static final Scannable.Attr<Boolean> TERMINATED
public static final Scannable.Attr<Stream<Tuple2<String,String>>> TAGS
public static final Scannable.Attr<Scannable.Attr.RunStyle> RUN_STYLE
Scannable.Attr.RunStyle
enum attribute indicating whether or not an operator continues to operate on the same thread.
Each value provides a different degree of guarantee from weakest Scannable.Attr.RunStyle.UNKNOWN
to strongest Scannable.Attr.RunStyle.SYNC
.
Defaults to Scannable.Attr.RunStyle.UNKNOWN
.public static final Scannable.Attr<String> LIFTER
Object.toString()
of a function passed to the
Operators.lift(java.util.function.BiFunction<reactor.core.Scannable, ? super reactor.core.CoreSubscriber<? super O>, ? extends reactor.core.CoreSubscriber<? super I>>)
or Operators.liftPublisher(java.util.function.BiFunction<org.reactivestreams.Publisher, ? super reactor.core.CoreSubscriber<? super O>, ? extends reactor.core.CoreSubscriber<? super I>>)
.
Defaults to null.@Nullable public T defaultValue()