All Downloads are FREE. Search and download functionalities are using the official Maven repository.

tech.ytsaurus.client.request.ReduceOperation Maven / Gradle / Ivy

The newest version!
package tech.ytsaurus.client.request;

import tech.ytsaurus.client.operations.ReduceSpec;

/**
 * Immutable reduce operation request.
 *
 * @see tech.ytsaurus.client.ApiServiceClient#startReduce(ReduceOperation)
 * @see 
 * reduce documentation
 * 
 */
public class ReduceOperation extends BaseOperation {
    ReduceOperation(Builder builder) {
        super(builder);
    }

    /**
     * Construct a builder with options set from this request.
     */
    public Builder toBuilder() {
        return builder()
                .setSpec(getSpec())
                .setMutatingOptions(getMutatingOptions())
                .setTransactionalOptions(getTransactionalOptions().orElse(null));
    }

    /**
     * Create empty builder.
     */
    public static Builder builder() {
        return new Builder();
    }

    /**
     * Builder of {@link ReduceOperation}.
     */
    public static class Builder extends BuilderBase {
        /**
         * Create instance of {@link ReduceOperation}.
         */
        public ReduceOperation build() {
            return new ReduceOperation(this);
        }

        protected Builder self() {
            return this;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy