[
https://issues.apache.org/jira/browse/IGNITE-21403?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Pavel Tupitsyn updated IGNITE-21403:
------------------------------------
Description:
Change *DataStreamerTarget.streamData* signature to accept *DataStreamerItem*
instead of raw data:
{code:java}
CompletableFuture<Void> streamData(
Flow.Publisher<DataStreamerItem<T>> publisher,
@Nullable DataStreamerOptions options);
{code}
Where *DataStreamerItem* is:
{code:java}
public interface DataStreamerItem<T> {
T get();
DataStreamerOperationType operationType();
static <T> DataStreamerItem<T> of(T item) {
return of(item, DataStreamerOperationType.PUT);
}
static <T> DataStreamerItem<T> removed(T item) {
return of(item, DataStreamerOperationType.REMOVE);
}
}
{code}
> DataStreamer data removal: update public API
> --------------------------------------------
>
> Key: IGNITE-21403
> URL: https://issues.apache.org/jira/browse/IGNITE-21403
> Project: Ignite
> Issue Type: Sub-task
> Components: thin client
> Affects Versions: 3.0.0-beta1
> Reporter: Pavel Tupitsyn
> Assignee: Pavel Tupitsyn
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-beta2
>
>
> Change *DataStreamerTarget.streamData* signature to accept *DataStreamerItem*
> instead of raw data:
> {code:java}
> CompletableFuture<Void> streamData(
> Flow.Publisher<DataStreamerItem<T>> publisher,
> @Nullable DataStreamerOptions options);
> {code}
> Where *DataStreamerItem* is:
> {code:java}
> public interface DataStreamerItem<T> {
> T get();
> DataStreamerOperationType operationType();
> static <T> DataStreamerItem<T> of(T item) {
> return of(item, DataStreamerOperationType.PUT);
> }
> static <T> DataStreamerItem<T> removed(T item) {
> return of(item, DataStreamerOperationType.REMOVE);
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)