/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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
 *
 *    http://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.
 */
// protoc --java_out=connector/protobuf/src/test/resources/protobuf/ connector/protobuf/src/test/resources/protobuf/catalyst_types.proto
// protoc --descriptor_set_out=connector/protobuf/src/test/resources/protobuf/catalyst_types.desc --java_out=connector/protobuf/src/test/resources/protobuf/org/apache/spark/sql/protobuf/ connector/protobuf/src/test/resources/protobuf/catalyst_types.proto

syntax = "proto3";

package org.apache.spark.sql.protobuf.protos;
option java_outer_classname = "CatalystTypes";

message BooleanMsg {
  bool bool_type = 1;
}
message IntegerMsg {
  int32 int32_type = 1;
}
message DoubleMsg {
  double double_type = 1;
}
message FloatMsg {
  float float_type = 1;
}
message BytesMsg {
  bytes bytes_type = 1;
}
message StringMsg {
  string string_type = 1;
}

message Person {
  string name = 1;
  int32 age = 2;
}

message Bad {
  bytes col_0 = 1;
  double col_1 = 2;
  string col_2 = 3;
  float col_3 = 4;
  int64 col_4 = 5;
}

message Actual {
  string col_0 = 1;
  int32 col_1 = 2;
  float col_2 = 3;
  bool col_3 = 4;
  double col_4 = 5;
}

message oldConsumer {
  string key = 1;
}

message newProducer {
  string key = 1;
  int32  value = 2;
}

message newConsumer {
  string key = 1;
  int32  value = 2;
  Actual actual = 3;
}

message oldProducer {
  string key = 1;
}