/*
 * Licensed to The OpenNMS Group, Inc (TOG) under one or more
 * contributor license agreements.  See the LICENSE.md file
 * distributed with this work for additional information
 * regarding copyright ownership.
 *
 * TOG licenses this file to You under the GNU Affero General
 * Public License Version 3 (the "License") or (at your option)
 * any later version.  You may not use this file except in
 * compliance with the License.  You may obtain a copy of the
 * License at:
 *
 *      https://www.gnu.org/licenses/agpl-3.0.txt
 *
 * 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: kafka-rpc.proto

package org.opennms.core.ipc.rpc.kafka.model;

public interface RpcMessageProtoOrBuilder extends
    // @@protoc_insertion_point(interface_extends:RpcMessageProto)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <code>string rpc_id = 1;</code>
   * @return The rpcId.
   */
  java.lang.String getRpcId();
  /**
   * <code>string rpc_id = 1;</code>
   * @return The bytes for rpcId.
   */
  com.google.protobuf.ByteString
      getRpcIdBytes();

  /**
   * <code>bytes rpc_content = 2;</code>
   * @return The rpcContent.
   */
  com.google.protobuf.ByteString getRpcContent();

  /**
   * <code>string system_id = 3;</code>
   * @return The systemId.
   */
  java.lang.String getSystemId();
  /**
   * <code>string system_id = 3;</code>
   * @return The bytes for systemId.
   */
  com.google.protobuf.ByteString
      getSystemIdBytes();

  /**
   * <code>uint64 expiration_time = 4;</code>
   * @return The expirationTime.
   */
  long getExpirationTime();

  /**
   * <code>int32 current_chunk_number = 5;</code>
   * @return The currentChunkNumber.
   */
  int getCurrentChunkNumber();

  /**
   * <code>int32 total_chunks = 6;</code>
   * @return The totalChunks.
   */
  int getTotalChunks();

  /**
   * <code>map&lt;string, string&gt; tracing_info = 7;</code>
   */
  int getTracingInfoCount();
  /**
   * <code>map&lt;string, string&gt; tracing_info = 7;</code>
   */
  boolean containsTracingInfo(
      java.lang.String key);
  /**
   * Use {@link #getTracingInfoMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.String, java.lang.String>
  getTracingInfo();
  /**
   * <code>map&lt;string, string&gt; tracing_info = 7;</code>
   */
  java.util.Map<java.lang.String, java.lang.String>
  getTracingInfoMap();
  /**
   * <code>map&lt;string, string&gt; tracing_info = 7;</code>
   */
  /* nullable */
java.lang.String getTracingInfoOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue);
  /**
   * <code>map&lt;string, string&gt; tracing_info = 7;</code>
   */
  java.lang.String getTracingInfoOrThrow(
      java.lang.String key);

  /**
   * <code>string module_id = 8;</code>
   * @return The moduleId.
   */
  java.lang.String getModuleId();
  /**
   * <code>string module_id = 8;</code>
   * @return The bytes for moduleId.
   */
  com.google.protobuf.ByteString
      getModuleIdBytes();
}
