Package oracle.rsi
Interface ReactiveStreamsIngestion
-
- All Superinterfaces:
java.lang.AutoCloseable
public interface ReactiveStreamsIngestion extends java.lang.AutoCloseable
The Reactive Streams Ingestion Library.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
ReactiveStreamsIngestion.Builder
TheReactiveStreamsIngestion
library instance builder.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description static ReactiveStreamsIngestion.Builder
builder()
Returns a newRSIBuilder
.void
close()
Initiates an orderly shutdown in which previously submitted records are ingested, but no new records will be accepted.static <T> PushPublisher<T>
pushPublisher()
Returns a newPushPublisher
of thisReactiveStreamsIngestion
.<T> java.util.concurrent.Flow.Subscriber<T>
subscriber()
Returns a newFlow.Subscriber
of thisReactiveStreamsIngestion
.
-
-
-
Method Detail
-
builder
static ReactiveStreamsIngestion.Builder builder()
Returns a newRSIBuilder
.- Returns:
- a new
RSIBuilder
. Notnull
.
-
pushPublisher
static <T> PushPublisher<T> pushPublisher()
Returns a newPushPublisher
of thisReactiveStreamsIngestion
.- Type Parameters:
T
- the type of the object published.- Returns:
- the
PushPublisher
. Notnull
.
-
subscriber
<T> java.util.concurrent.Flow.Subscriber<T> subscriber()
Returns a newFlow.Subscriber
of thisReactiveStreamsIngestion
. The publishing item can be a Datum[] or Object[] given that the order of column values in item match the pre-declared column names. The item can also be a byte[] or an object of class annotated withStreamField
} or a Map of column name and value pairs. If an entry isn't supplied in the Map, RSI defaults the value of column to null. If the publishing item is a byte[], the library applies the suppliedFunction
to transform byte[] in to a result. For records of sharded database, the publishing item can be either byte[] orShardRecord
.- Type Parameters:
T
- The publishing item type.- Returns:
- a
Flow.Subscriber
.
-
close
void close()
Initiates an orderly shutdown in which previously submitted records are ingested, but no new records will be accepted. Invocation has no additional effect if already shut down. This method waits for previously submitted records to complete ingestion.- Specified by:
close
in interfacejava.lang.AutoCloseable
-
-