/*
 * Copyright 2020 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: google/dataflow/v1beta3/jobs.proto

package com.google.dataflow.v1beta3;

public interface JobMetadataOrBuilder
    extends
    // @@protoc_insertion_point(interface_extends:google.dataflow.v1beta3.JobMetadata)
    com.google.protobuf.MessageOrBuilder {

  /**
   *
   *
   * <pre>
   * The SDK version used to run the job.
   * </pre>
   *
   * <code>.google.dataflow.v1beta3.SdkVersion sdk_version = 1;</code>
   *
   * @return Whether the sdkVersion field is set.
   */
  boolean hasSdkVersion();
  /**
   *
   *
   * <pre>
   * The SDK version used to run the job.
   * </pre>
   *
   * <code>.google.dataflow.v1beta3.SdkVersion sdk_version = 1;</code>
   *
   * @return The sdkVersion.
   */
  com.google.dataflow.v1beta3.SdkVersion getSdkVersion();
  /**
   *
   *
   * <pre>
   * The SDK version used to run the job.
   * </pre>
   *
   * <code>.google.dataflow.v1beta3.SdkVersion sdk_version = 1;</code>
   */
  com.google.dataflow.v1beta3.SdkVersionOrBuilder getSdkVersionOrBuilder();

  /**
   *
   *
   * <pre>
   * Identification of a Spanner source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.SpannerIODetails spanner_details = 2;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.SpannerIODetails> getSpannerDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a Spanner source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.SpannerIODetails spanner_details = 2;</code>
   */
  com.google.dataflow.v1beta3.SpannerIODetails getSpannerDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a Spanner source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.SpannerIODetails spanner_details = 2;</code>
   */
  int getSpannerDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a Spanner source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.SpannerIODetails spanner_details = 2;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.SpannerIODetailsOrBuilder>
      getSpannerDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a Spanner source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.SpannerIODetails spanner_details = 2;</code>
   */
  com.google.dataflow.v1beta3.SpannerIODetailsOrBuilder getSpannerDetailsOrBuilder(int index);

  /**
   *
   *
   * <pre>
   * Identification of a BigQuery source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigQueryIODetails bigquery_details = 3;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.BigQueryIODetails> getBigqueryDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a BigQuery source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigQueryIODetails bigquery_details = 3;</code>
   */
  com.google.dataflow.v1beta3.BigQueryIODetails getBigqueryDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a BigQuery source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigQueryIODetails bigquery_details = 3;</code>
   */
  int getBigqueryDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a BigQuery source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigQueryIODetails bigquery_details = 3;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.BigQueryIODetailsOrBuilder>
      getBigqueryDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a BigQuery source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigQueryIODetails bigquery_details = 3;</code>
   */
  com.google.dataflow.v1beta3.BigQueryIODetailsOrBuilder getBigqueryDetailsOrBuilder(int index);

  /**
   *
   *
   * <pre>
   * Identification of a Cloud Bigtable source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigTableIODetails big_table_details = 4;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.BigTableIODetails> getBigTableDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a Cloud Bigtable source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigTableIODetails big_table_details = 4;</code>
   */
  com.google.dataflow.v1beta3.BigTableIODetails getBigTableDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a Cloud Bigtable source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigTableIODetails big_table_details = 4;</code>
   */
  int getBigTableDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a Cloud Bigtable source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigTableIODetails big_table_details = 4;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.BigTableIODetailsOrBuilder>
      getBigTableDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a Cloud Bigtable source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.BigTableIODetails big_table_details = 4;</code>
   */
  com.google.dataflow.v1beta3.BigTableIODetailsOrBuilder getBigTableDetailsOrBuilder(int index);

  /**
   *
   *
   * <pre>
   * Identification of a Pub/Sub source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.PubSubIODetails pubsub_details = 5;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.PubSubIODetails> getPubsubDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a Pub/Sub source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.PubSubIODetails pubsub_details = 5;</code>
   */
  com.google.dataflow.v1beta3.PubSubIODetails getPubsubDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a Pub/Sub source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.PubSubIODetails pubsub_details = 5;</code>
   */
  int getPubsubDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a Pub/Sub source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.PubSubIODetails pubsub_details = 5;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.PubSubIODetailsOrBuilder>
      getPubsubDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a Pub/Sub source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.PubSubIODetails pubsub_details = 5;</code>
   */
  com.google.dataflow.v1beta3.PubSubIODetailsOrBuilder getPubsubDetailsOrBuilder(int index);

  /**
   *
   *
   * <pre>
   * Identification of a File source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.FileIODetails file_details = 6;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.FileIODetails> getFileDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a File source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.FileIODetails file_details = 6;</code>
   */
  com.google.dataflow.v1beta3.FileIODetails getFileDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a File source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.FileIODetails file_details = 6;</code>
   */
  int getFileDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a File source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.FileIODetails file_details = 6;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.FileIODetailsOrBuilder>
      getFileDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a File source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.FileIODetails file_details = 6;</code>
   */
  com.google.dataflow.v1beta3.FileIODetailsOrBuilder getFileDetailsOrBuilder(int index);

  /**
   *
   *
   * <pre>
   * Identification of a Datastore source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.DatastoreIODetails datastore_details = 7;</code>
   */
  java.util.List<com.google.dataflow.v1beta3.DatastoreIODetails> getDatastoreDetailsList();
  /**
   *
   *
   * <pre>
   * Identification of a Datastore source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.DatastoreIODetails datastore_details = 7;</code>
   */
  com.google.dataflow.v1beta3.DatastoreIODetails getDatastoreDetails(int index);
  /**
   *
   *
   * <pre>
   * Identification of a Datastore source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.DatastoreIODetails datastore_details = 7;</code>
   */
  int getDatastoreDetailsCount();
  /**
   *
   *
   * <pre>
   * Identification of a Datastore source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.DatastoreIODetails datastore_details = 7;</code>
   */
  java.util.List<? extends com.google.dataflow.v1beta3.DatastoreIODetailsOrBuilder>
      getDatastoreDetailsOrBuilderList();
  /**
   *
   *
   * <pre>
   * Identification of a Datastore source used in the Dataflow job.
   * </pre>
   *
   * <code>repeated .google.dataflow.v1beta3.DatastoreIODetails datastore_details = 7;</code>
   */
  com.google.dataflow.v1beta3.DatastoreIODetailsOrBuilder getDatastoreDetailsOrBuilder(int index);
}
