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

co.decodable.sdk.pipeline.DecodableStreamSourceBuilder Maven / Gradle / Ivy

Go to download

A software development kit for implementing Apache Flink jobs and running them on Decodable

There is a newer version: 1.0.0.Beta7
Show newest version
/*
 * SPDX-License-Identifier: Apache-2.0
 *
 * Copyright Decodable, Inc.
 *
 * Licensed under the Apache Software License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
 */
package co.decodable.sdk.pipeline;

import co.decodable.sdk.pipeline.util.Incubating;
import org.apache.flink.api.common.serialization.DeserializationSchema;

/** Builder for creating {@literal DecodableStreamSource} instances. */
@Incubating
public interface DecodableStreamSourceBuilder {

  /**
   * Specifies the name of the stream to read from. Either this or {@link #withStreamId(String)} may
   * be used, but not both.
   */
  DecodableStreamSourceBuilder withStreamName(String streamName);

  /**
   * Specifies the id of the stream to read from. Either this or {@link #withStreamName(String)} may
   * be used, but not both.
   */
  DecodableStreamSourceBuilder withStreamId(String streamId);

  /** Specifies the start-up mode to use when reading from the stream. */
  DecodableStreamSourceBuilder withStartupMode(StartupMode startupMode);

  /** Specifies the deserialization schema to be used. */
  DecodableStreamSourceBuilder withDeserializationSchema(
      DeserializationSchema deserializationSchema);

  /** Returns a new {@link DecodableStreamSource} for the given configuration. */
  DecodableStreamSource build();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy