option optimize_for = LITE_RUNTIME;

import "common.proto";
package orwell.messages;

// Tell a player wants to join
// answered by: Welcome, Goodbye
message Hello {
	required string name = 1;
	optional bool ready = 2 [default = true];
}

// Notify the state of the inputs to control the robot
message Input {
	optional group Move = 1 {
		optional double left = 1;
		optional double right = 2;
	}
	optional group Fire = 2 {
		optional bool weapon1 = 1;
		optional bool weapon2 = 2;
	}
}

// Ask for a pong message to mesure timings
message Ping {
	repeated Timing timing = 1;
}

option optimize_for = LITE_RUNTIME;

import "common.proto";
package orwell.messages;

// Tell a player wants to join
// answered by: Welcome, Goodbye
message Hello {
	required string name = 1;
	optional bool ready = 2 [default = true];
}

message Move {
	optional double left = 1;
	optional double right = 2;
}

message Fire {
	optional bool weapon1 = 1;
	optional bool weapon2 = 2;
}

// Notify the state of the inputs to control the robot
message Input {
	optional Move move = 1;
	optional Fire fire = 2;
}

// Ask for a pong message to mesure timings
message Ping {
	repeated Timing timing = 1;
}

Replace groups with separate messages (for shooter).


/*
 * Copyright 2013 Madhusudan C.S.
 *
 * 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 from
 *
 *     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.
 */

package message;

message ReplyLeader {
	required string leader = 1;
}

Update the leader reply proto.

Update the leader reply proto.


syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.dclauth;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/dclauth/types";

import "gogoproto/gogo.proto";
import "dclauth/account.proto";
import "dclauth/grant.proto";
import "cosmos_proto/cosmos.proto";

message RevokedAccount {
  Account account = 1 [(gogoproto.embed) = true];
  repeated Grant revokeApprovals = 2;
  string revokedReason = 3 [(cosmos_proto.scalar) = "cosmos.AddressString"];
}

syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.dclauth;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/dclauth/types";

import "gogoproto/gogo.proto";
import "dclauth/account.proto";
import "dclauth/grant.proto";

message RevokedAccount {
  Account account = 1 [(gogoproto.embed) = true];
  repeated Grant revokeApprovals = 2;
  enum Reason {
    TrusteeVoting = 0;
    MaliciousValidator = 1;
  }
  Reason reason = 3;
}

Add a new enum field Reason for RevokedAccount


message Node {
    required string id = 1;
    required bytes ip_address = 2;
    required uint32 port = 3;
}

message FindNodeQuery {
    required Node origin = 1;  // Querying node
    required string target = 2;
}

message FindNodeResponse {
    required Node origin = 1; // Responding node
    repeated Node nodes = 2;
}

message Envelope {
    enum Type {
        FIND_NODE_QUERY = 1;
        FIND_NODE_RESPONSE = 2;
    }
    required Type message_type = 1;
    optional FindNodeQuery find_node_query = 2;
    optional FindNodeResponse find_node_response = 3;
}

// Types

message Node {
    required string id = 1;
    required bytes ip_address = 2;
    required uint32 port = 3;
}

// Messages

message FindNodeQuery {
    required Node origin = 1;  // Querying node
    required string target = 2;
}

message FindNodeResponse {
    required Node origin = 1; // Responding node
    repeated Node nodes = 2;
}

// Wrapper

message Envelope {
    enum Type {
        FIND_NODE_QUERY = 1;
        FIND_NODE_RESPONSE = 2;
    }
    required Type message_type = 1;
    optional FindNodeQuery find_node_query = 2;
    optional FindNodeResponse find_node_response = 3;
}

Add some comments to protnbuf definitions


// 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.

syntax = "proto3";

package google.events;

import "google/protobuf/descriptor.proto";

option csharp_namespace = "Google.Events.Protobuf";

extend google.protobuf.MessageOptions {
  // FIXME: Determine the right field number to use
  // TODO: Use a message instead of just a string?
  string cloud_event_type = 20000;
}

// 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.

syntax = "proto3";

package google.events;

import "google/protobuf/descriptor.proto";

option csharp_namespace = "Google.Events.Protobuf";

extend google.protobuf.MessageOptions {
  // The CloudEvent type (e.g. "google.cloud.storage.object.v1.finalized")
  // that relates to this message.
  string cloud_event_type = 311716486;
}

Fix the extension number for cloud_event_type


syntax = "proto2";
package leap.test;

message Pet {
  required string name = 1;

  enum Species {
    DOG = 0;
    CAT = 1;
  }
  required Species species = 2;
}

message PetFieldEntry {
  required string key = 1;
  required Pet value = 2;
}

message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    required string number = 1;
    optional PhoneType type = 2[default = HOME];
  }

  repeated PhoneNumber phone = 4;
  repeated PetFieldEntry pet = 5;
}

message AddressBook {
  repeated Person person = 1;
}

Fix warning in build process

Fix warning in build process


syntax = "proto3";

package syft.grid.messages;

import "proto/core/common/common_object.proto";
import "proto/core/io/address.proto";

message CreateInitialSetupMessage {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
}

message CreateInitialSetupResponse {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
  bool success = 3;
  syft.core.io.Address reply_to = 4;
}

message GetSetupMessage {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
  syft.core.io.Address reply_to = 3;
}

message GetSetupResponse {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
  bool success = 3;
  syft.core.io.Address reply_to = 4;
}

syntax = "proto3";

package syft.grid.messages;

import "proto/core/common/common_object.proto";
import "proto/core/io/address.proto";

message CreateInitialSetUpMessage {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
  string content = 3;
  syft.core.io.Address reply_to = 4;
}

message CreateInitialSetUpResponse {
  syft.core.common.UID msg_id = 1;
  bool success = 2;
  string content = 3;
  syft.core.io.Address address = 4;
}

message GetSetUpMessage {
  syft.core.common.UID msg_id = 1;
  syft.core.io.Address address = 2;
  string content = 3;
  syft.core.io.Address reply_to = 4;
}

message GetSetUpResponse {
  syft.core.common.UID msg_id = 1;
  bool success = 2;
  string content = 3;
  syft.core.io.Address address = 4;
}

ADD setup messages protobuf descriptor

ADD setup messages protobuf descriptor


syntax = "proto3";

message CreateVMRequest {
  string id = 1;
  string host = 2;
  string arch = 3;
  uint32 vcpus = 4;
  uint32 memory_mb = 5;
  string vnc_password = 6;
}

syntax = "proto3";

message CreateVMRequest {
  string id = 1;
  string host = 2;
  string arch = 3;
  uint32 vcpus = 4;
  uint32 memory_mb = 5;
  string vnc_password = 6;
  string volume_id = 7;
}

Add volume_id field to CreateVMRequest

Add volume_id field to CreateVMRequest


/*
 * Copyright 2019, TeamDev. All rights reserved.
 *
 * Redistribution and use in source and/or binary forms, with or without
 * modification, must retain the above copyright notice and the following
 * disclaimer.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
syntax = "proto3";

package spine.test.natural.number;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.test.entity.number";
option java_multiple_files = true;

// A natural number.
//
// Zero is considered a natural number.
//
message NaturalNumber {
    option (entity).kind = ENTITY;

    // Natural number value.
    //
    // Must be greater than or equal to zero.
    int32 value = 1 [(min).value = "0"];
}

/*
 * Copyright 2019, TeamDev. All rights reserved.
 *
 * Redistribution and use in source and/or binary forms, with or without
 * modification, must retain the above copyright notice and the following
 * disclaimer.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
syntax = "proto3";

package spine.test.server.number;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.test.server.number";
option java_multiple_files = true;

// A natural number.
//
// Zero is considered a natural number.
//
message NaturalNumber {
    option (entity).kind = ENTITY;

    // Natural number value.
    //
    // Must be greater than or equal to zero.
    int32 value = 1 [(min).value = "0"];
}

Change proto test package name to `server`


syntax = "proto3";

package proto;

// The remote PiGlow service
service PiGlow {
  // SetLED
  rpc SetLED (LedRequest) returns (Ack) {}
}

message LedRequest {
  int32 num = 1;
  uint32 brightness = 2;
}

message Ack {
  bool ok = 1;
}

syntax = "proto3";

package proto;

// The remote PiGlow service
service PiGlow {
  // SetLED
  rpc SetLED (LedRequest) returns (Ack) {}

  // Set all LEDs to brightness
  rpc SetAll (BrightnessRequest) returns (Ack) {}
  // Set all White LEDs to brightness
  rpc SetWhite (BrightnessRequest) returns (Ack) {}
  // Set all Blue LEDs to brightness
  rpc SetBlue (BrightnessRequest) returns (Ack) {}
  // Set all Green LEDs to brightness
  rpc SetGreen (BrightnessRequest) returns (Ack) {}
  // Set all Yellow LEDs to brightness
  rpc SetYellow (BrightnessRequest) returns (Ack) {}
  // Set all Orange LEDs to brightness
  rpc SetOrange (BrightnessRequest) returns (Ack) {}
  // Set all Red LEDs to brightness
  rpc SetRed (BrightnessRequest) returns (Ack) {}
}

message LedRequest {
  int32 num = 1;
  uint32 brightness = 2;
}

message BrightnessRequest {
  uint32 brightness = 1;
}

message Ack {
  bool ok = 1;
}

Implement those calls in protobuf

Implement those calls in protobuf


message GoogleMapsDirection {
  optional string distance = 1;
  required string direction = 2;
  required string eta = 3;
  required TurnDirection tdirection = 4;

  enum TurnDirection {
    Right = 0;
    Left = 1;
    Straight = 2;
    TurnAround = 3;
  }
}

message GoogleMapsDirection {
  required TurnDirection tdirection = 4;
  required string distance = 1;

  enum TurnDirection {
    Right = 0;
    Left = 1;
    Straight = 2;
    TurnAround = 3;
  }
}

Update proto to deal with garbage BT adapter.


syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.pki;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/pki/types";

import "cosmos_proto/cosmos.proto";
import "pki/grant.proto";

message Certificate {

  string pemCert = 1;
  string serialNumber = 2;
  string issuer = 3;
  string authorityKeyId = 4;
  string rootSubject = 5;
  string rootSubjectKeyId = 6;
  bool isRoot = 7;
  string owner = 8 [(cosmos_proto.scalar) = "cosmos.AddressString"];
  string subject = 9;
  string subjectKeyId = 10;
  repeated Grant approvals = 11;
  string subjectAsText = 12;
  repeated string rejectApprovals = 13;
}

syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.pki;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/pki/types";

import "cosmos_proto/cosmos.proto";
import "pki/grant.proto";

message Certificate {

  string pemCert = 1;
  string serialNumber = 2;
  string issuer = 3;
  string authorityKeyId = 4;
  string rootSubject = 5;
  string rootSubjectKeyId = 6;
  bool isRoot = 7;
  string owner = 8 [(cosmos_proto.scalar) = "cosmos.AddressString"];
  string subject = 9;
  string subjectKeyId = 10;
  repeated Grant approvals = 11;
  string subjectAsText = 12;
  repeated Grant rejectApprovals = 13;
}

Change rejectApprovals type from string to Grant


package metadata_key;

message MetadataKey
{
    StoreKey storeKey = 1;
    string path = 2;
}

message StoreKey
{
    string packageType = 1;

    enum StoreType {
        group = 1;
        remote = 2;
        hosted = 3;
    }

    string name = 3;
}

package metadata_key;

message MetadataKey
{
    required StoreKey storeKey = 1;
    optional string path = 2;
}

message StoreKey
{
    required string packageType = 1;

    enum StoreType {
        group = 1;
        remote = 2;
        hosted = 3;
    }

    required StoreType type = 2;

    optional string name = 3;
}

Fix the syntax error in .proto file

Fix the syntax error in .proto file


/*
 * Copyright 2019, TeamDev. All rights reserved.
 *
 * Redistribution and use in source and/or binary forms, with or without
 * modification, must retain the above copyright notice and the following
 * disclaimer.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
syntax = "proto3";

package spine.test.string;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package="io.spine.test.string";
option java_multiple_files = true;
option java_outer_classname = "StringifiersTestProto";

message STaskId {
    string uuid = 1;
}

message STask {
    STaskId id = 1;
    STaskStatus status = 2;
}

enum STaskStatus {

    OPEN = 0;

    DONE = 1;
}

Fix formatting in a test proto

Fix formatting in a test proto


/*
 * This file is part of JEJDBC
 * https://github.com/perbone/jejdbc/
 *
 * Copyright 2013-2017 Paulo Perbone
 *
 * 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
 *
 * 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
 */

syntax = "proto3";

option java_multiple_files = true;

package io.perbone.jejdbc.ipc;

service MonitorService {}

/*
 * This file is part of JEJDBC
 * https://github.com/perbone/jejdbc/
 *
 * Copyright 2013-2017 Paulo Perbone
 *
 * 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
 *
 * 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
 */

syntax = "proto3";

option java_multiple_files = true;
option java_package = "io.perbone.jejdbc.ipc.internal";
option java_outer_classname = "JeJdbcProto";

enum NodeStatus {
    UNKNOWN  = 0;
    DETACHED = 1;
    REPLICA  = 2;
    MASTER   = 3;
}

message StatusRequest {
    bool full = 1;
}

message StatusResponse {
    NodeStatus status = 1;
}

service MonitorService {
    rpc getStatus(StatusRequest) returns (StatusResponse) {}
}

Add more design ideas definition

Add more design ideas definition


package amber.drive_to_point_proto;
option java_package = "pl.edu.agh.amber.drivetopoint.proto";
option java_outer_classname = "DriveToPointProto";

import "drivermsg.proto";

extend amber.DriverMsg {
    optional bool setTargets = 80;
    optional bool getNextTarget = 81;
    optional bool getNextTargets = 82;
    optional bool getVisitedTarget = 83;
    optional bool getVisitedTargets = 84;
    optional Targets targets = 85;
    optional Location location = 86;
    optional bool getConfiguration = 87;
    optional Configuration configuration = 88;
}

message Targets {
    repeated double longitudes = 1 [packed = true];
    repeated double latitudes = 2 [packed = true];
    repeated double radiuses = 3 [packed = true];
}

message Location {
    optional double x = 1;
    optional double y = 2;
    optional double p = 3;
    optional double alfa = 4;
    optional double timeStamp = 5;
}

message Configuration {
    optional double maxSpeed = 1;
}

package amber.drive_to_point_proto;
option java_package = "pl.edu.agh.amber.drivetopoint.proto";
option java_outer_classname = "DriveToPointProto";

import "drivermsg.proto";

extend amber.DriverMsg {
    optional bool setTargets = 80;
    optional bool getNextTarget = 81;
    optional bool getNextTargets = 82;
    optional bool getVisitedTarget = 83;
    optional bool getVisitedTargets = 84;
    optional Targets targets = 85;
    optional Location location = 86;
    optional bool getConfiguration = 87;
    optional Configuration configuration = 88;
}

message Targets {
    repeated double longitudes = 1 [packed = true];
    repeated double latitudes = 2 [packed = true];
    repeated double radiuses = 3 [packed = true];
}

message Location {
    optional double x = 1;
    optional double y = 2;
    optional double p = 3;
    optional double alfa = 4;
    optional int64 timeStamp = 5;
}

message Configuration {
    optional double maxSpeed = 1;
}

Update drive to point proto, get time stamp as int64


syntax = "proto3";

package containerd.v1;

import "google/protobuf/empty.proto";
import "gogoproto/gogo.proto";

service ShimService {
    rpc Create(CreateRequest) returns (google.protobuf.Empty);
    rpc Exec(ExecRequest) returns (google.protobuf.Empty);
    rpc State(StateRequest) returns (StateResponse);
    rpc Pty(PtyRequest) returns (google.protobuf.Empty);
}

message PtyRequest {
    string id = 1 [(gogoproto.customname) = "ID"];
    uint32 width = 2;
    uint32 height = 3;
}

Indent proto files with tabs only

Indent proto files with tabs only

fix "make fmt" failure by switching from spaces to tabs

Signed-Off-By: Davanum Srinivas <36003aec7ba325a16727bc9a176c12d2776a8ce4@gmail.com>


/**
 * 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.
 */

import "mesos/mesos.proto";

package mesos;

option java_package = "org.apache.mesos";
option java_outer_classname = "Protos";

message AuthenticateMessage {
  required string pid = 1; // PID that needs to be authenticated.
}

message AuthenticationMechanismsMessage {
  repeated string mechanisms = 1; // List of available SASL mechanisms.
}

message AuthenticationStartMessage {
  required string mechanism = 1;
  optional bytes data = 2;
}

message AuthenticationStepMessage {
  required bytes data = 1;
}

message AuthenticationCompletedMessage {}

message AuthenticationFailedMessage {}

message AuthenticationErrorMessage {
  optional string error = 1;
}

/**
 * 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.
 */

import "mesos/mesos.proto";

package mesos.internal;

option java_package = "org.apache.mesos";
option java_outer_classname = "Protos";

message AuthenticateMessage {
  required string pid = 1; // PID that needs to be authenticated.
}

message AuthenticationMechanismsMessage {
  repeated string mechanisms = 1; // List of available SASL mechanisms.
}

message AuthenticationStartMessage {
  required string mechanism = 1;
  optional bytes data = 2;
}

message AuthenticationStepMessage {
  required bytes data = 1;
}

message AuthenticationCompletedMessage {}

message AuthenticationFailedMessage {}

message AuthenticationErrorMessage {
  optional string error = 1;
}

Put Authentication protobufs back in mesos.internal package.

This is needed for smooth upgrade capability for masters and slaves.

Review: https://reviews.apache.org/r/31331


syntax = "proto2";

package oneof_test;

message OneofProto {
  optional int32 outside = 1;
  oneof MyOneof {
    int32 intval = 2;
    string strval = 3;
    bool boolval = 4;
  }
  optional int32 after = 5;
}

message NestedOneof {
  optional int32 outside = 1;
  optional OneofProto nested = 2;
}

message OneofTest {
  message int_list {
    repeated int32 ints = 1;
  }

  oneof MyOneof {
    int_list list_of_ints = 1;
    int32 single_int = 2;
  }
}

syntax = "proto2";

package oneof_test;

message OneofProto {
  optional int32 outside = 1;
  oneof MyOneof {
    int32 intval = 2;
    string strval = 3;
    bool boolval = 4;
  }
  optional int32 after = 5;
}

message NestedOneof {
  optional int32 outside = 1;
  optional OneofProto nested = 2;
}

message OneofTest {
  message IntList {
    repeated int32 ints = 1;
  }

  oneof MyOneof {
    IntList list_of_ints = 1;
    int32 single_int = 2;
  }
}

Use camelcase for new proto

Use camelcase for new proto


syntax = "proto3";

package blog;

service Blog {
  // Read operations
  rpc Feed(FeedRequest) returns (FeedResponse) {};
  rpc FilterPosts(FilterPostsRequest) returns (FilterPostsResponse) {};
  rpc Post(PostRequest) returns (Post) {};

  // Write operations
  rpc SignupUser(SignupUserRequest) returns (User) {};
  rpc CreateDraft(CreateDraftRequest) returns (Post) {};
  rpc DeletePost(DeletePostRequest) returns (Post) {};
  rpc Publish(PublishRequest) returns (Post) {};
}

message Post {
  string id = 1;
  string createdAt = 2;
  string updatedAt = 3;
  string title = 4;
  string content = 5;
  bool published = 6;
  User author = 7;
}

message User {
  string id = 1;
  string email = 2;
  string name = 3;
  repeated Post posts = 4;
}

message FeedRequest {}

message FeedResponse {
  repeated Post feed = 1;
}

message FilterPostsRequest {
  string searchString = 1;
}

message FilterPostsResponse {
  repeated Post filteredPosts = 1;
}

message PostRequest {
  string id = 1;
}

message SignupUserRequest {
  string name = 1;
  string email = 2;
}

message CreateDraftRequest {
  string title = 1;
  string content = 2;
  string authorEmail = 3;
}

message PublishRequest {
  string id = 1;
}

message DeletePostRequest {
  string id = 1;
}

syntax = "proto3";

package blog;

service Blog {
  // Read operations
  rpc Feed(FeedRequest) returns (FeedResponse) {};
  rpc FilterPosts(FilterPostsRequest) returns (FilterPostsResponse) {};
  rpc Post(PostRequest) returns (Post) {};

  // Write operations
  rpc SignupUser(SignupUserRequest) returns (User) {};
  rpc CreateDraft(CreateDraftRequest) returns (Post) {};
  rpc DeletePost(DeletePostRequest) returns (Post) {};
  rpc Publish(PublishRequest) returns (Post) {};
}

message Post {
  string id = 1;
  string createdAt = 2;
  string updatedAt = 3;
  string title = 4;
  string content = 5;
  bool published = 6;
  User author = 7;
}

message User {
  string id = 1;
  string email = 2;
  string name = 3;
  repeated Post posts = 4;
}

message FeedRequest {}

message FeedResponse {
  repeated Post feed = 1;
}

message FilterPostsRequest {
  string searchString = 1;
}

message FilterPostsResponse {
  repeated Post filteredPosts = 1;
}

message PostRequest {
  string id = 1;
}

message SignupUserRequest {
  string name = 1;
  string email = 2;
  string password = 3;
}

message CreateDraftRequest {
  string title = 1;
  string content = 2;
  string authorEmail = 3;
}

message PublishRequest {
  string id = 1;
}

message DeletePostRequest {
  string id = 1;
}

Add password field to SignupUserRequest

Add password field to SignupUserRequest

Password field was missing from `service.proto` and it was not possible to signup users.

Former-commit-id: 8ff7bc03435f26f50a0e2060c1c080c5a70a988f
Former-commit-id: 60bcf6efa94caa22481420a8233cb2a14e9e1f32


package entry;

option java_package = "es.tid.smartsteps.footfalls.microgrids.data.generated";
option java_outer_classname = "EntryProtocol";

message TrafficCounts {
    required string id = 1;
    required string date = 2;
    required double latitude = 3;
    required double longitude = 4;
    repeated Counts vectors = 5;
}

message Counts {
    required string name = 1;
    repeated double values = 2;
}

message SOACentroid {
    required string soaId = 1;
    required double squaredKilometers = 2;
    required double latitude = 3;
    required double longitude = 4;
}

message Catchments {
    required string id = 1;
    required string date = 2;
    optional double latitude = 3;
    optional double longitude = 4;
    repeated Catchment catchments = 5;
}

message Catchment {
    required uint32 hour = 1;
    repeated TopCell topCells = 2;
}

message TopCell {
    required string id = 1;
    required double count = 2;
    required double latitude = 3;
    required double longitude = 4;
}

package entry;

option java_package = "es.tid.smartsteps.footfalls.microgrids.data.generated";
option java_outer_classname = "EntryProtocol";

message TrafficCounts {
    required string id = 1;
    required string date = 2;
    required double latitude = 3;
    required double longitude = 4;
    repeated Counts vectors = 5;
}

message Counts {
    required string name = 1;
    repeated double values = 2;
}

message SOACentroid {
    required string soaId = 1;
    required double squaredKilometers = 2;
    required double latitude = 3;
    required double longitude = 4;
}

message Catchments {
    required string id = 1;
    required string date = 2;
    required double latitude = 3;
    required double longitude = 4;
    repeated Catchment catchments = 5;
}

message Catchment {
    required uint32 hour = 1;
    repeated TopCell topCells = 2;
}

message TopCell {
    required string id = 1;
    required double count = 2;
    required double latitude = 3;
    required double longitude = 4;
}

Make all fields in Catchments required

Make all fields in Catchments required


// See README.txt for information and build instructions.

package pbexample;

option java_package = "com.ociweb.protocoltest";
option java_outer_classname = "PBMessageProvider";

message ProductQuery {
  required string product_name = 1;
  required int64 online_item_id = 2;
  required string store_item_id = 3;
  optional string product_desc = 4;

  required int64 query_time = 5;

  message ProductAvailability {
    required int32 store_id = 1;
    required string store_location = 2;
    required int32 num_available = 3;
  }

  repeated ProductAvailability in_stock_locations = 6;
}

message ProductQueryProvider {
  repeated ProductQuery queries = 1;
}

// See README.txt for information and build instructions.

package pbexample;

option java_package = "com.ociweb.protocoltest";
option java_outer_classname = "PBMessageProvider";

//optimize_for (file option):
//Can be set to SPEED, CODE_SIZE, or LITE_RUNTIME
option optimize_for = SPEED;

message ProductQuery {
  required string product_name = 1;
  required int64 online_item_id = 2;
  required string store_item_id = 3;
  optional string product_desc = 4;

  required int64 query_time = 5;

  message ProductAvailability {
    required int32 store_id = 1;
    required string store_location = 2;
    required int32 num_available = 3;
  }

  repeated ProductAvailability in_stock_locations = 6;
}

message ProductQueryProvider {
  repeated ProductQuery queries = 1;
}

Add optimization option for protobuf

Add optimization option for protobuf


syntax = "proto3";

package tensorflow.serving;
option cc_enable_arenas = true;

import "google/protobuf/wrappers.proto";

// Metadata for an inference request such as the model name and version.
message ModelSpec {
  // Required servable name.
  string name = 1;

  // Optional version. If unspecified, will use the latest (numerical) version.
  // Typically not needed unless coordinating across multiple models that were
  // co-trained and/or have inter-dependencies on the versions used at inference
  // time.
  google.protobuf.Int64Value version = 2;
}

syntax = "proto3";

package tensorflow.serving;
option cc_enable_arenas = true;

import "google/protobuf/wrappers.proto";

// Metadata for an inference request such as the model name and version.
message ModelSpec {
  // Required servable name.
  string name = 1;

  // Optional version. If unspecified, will use the latest (numerical) version.
  // Typically not needed unless coordinating across multiple models that were
  // co-trained and/or have inter-dependencies on the versions used at inference
  // time.
  google.protobuf.Int64Value version = 2;

  // A named signature to evaluate. If unspecified, the default signature will
  // be used. Note that only MultiInference will initially support this.
  string signature_name = 3;
}

Add signature_name to ModelSpec. Change: 138004925


// See README.txt for information and build instructions.

syntax = "proto3";

package tutorial;

option java_package = "com.example.tutorial";
option java_outer_classname = "AddressBookProtos";
option csharp_namespace = "Google.Protobuf.Examples.AddressBook";

message Person {
  string name = 1;
  int32 id = 2;        // Unique ID number for this person.
  string email = 3;

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    string number = 1;
    PhoneType type = 2;
  }

  repeated PhoneNumber phones = 4;
}

// Our address book file is just one of these.
message AddressBook {
  repeated Person people = 1;
}

// See README.txt for information and build instructions.
//
// Note: START and END tags are used in comments to define sections used in
// tutorials.  They are not part of the syntax for Protocol Buffers.
//
// To get an in-depth walkthrough of this file and the related examples, see:
// https://developers.google.com/protocol-buffers/docs/tutorials

// [START declaration]
syntax = "proto3";
package tutorial;
// [END declaration]

// [START java_declaration]
option java_package = "com.example.tutorial";
option java_outer_classname = "AddressBookProtos";
// [END java_declaration]

// [START csharp_declaration]
option csharp_namespace = "Google.Protobuf.Examples.AddressBook";
// [END csharp_declaration]

// [START messages]
message Person {
  string name = 1;
  int32 id = 2;  // Unique ID number for this person.
  string email = 3;

  enum PhoneType {
    MOBILE = 0;
    HOME = 1;
    WORK = 2;
  }

  message PhoneNumber {
    string number = 1;
    PhoneType type = 2;
  }

  repeated PhoneNumber phones = 4;
}

// Our address book file is just one of these.
message AddressBook {
  repeated Person people = 1;
}
// [END messages]

Add region tags for protocol buffers tutorials.

Since these tags might be confusing, added a note that these are not
part of the normal protocol buffers syntax.  I also linked to the main
tutorials page that uses these examples
https://developers.google.com/protocol-buffers/docs/tutorials so that
anyone who arrived here without going through that info first can get
more explanation if they want.


syntax = "proto3";

enum Color {
    UNKNOWN = 0;
    RED = 1;
    GREEN = 2;
    BLUE = 3;
}

message Properties {
    oneof properties {
        int32 p1 = 1;
        string p2 = 2;
    }
}

message Triangle {
  string description = 1;
  Color color = 2;
  Properties properties = 3;
}

syntax = "proto3";

enum Color {
    UNKNOWN = 0;
    RED = 1;
    GREEN = 2;
    BLUE = 3;
}

message Properties {
    oneof properties {
        int32 p1 = 1;
        string p2 = 2;
    }
}

message Triangle {
  string description = 1;
  Color color = 2;
  Properties properties = 3;
  int32 struct = 4;
}

Add example of host protobuf vs prost escapes identifiers


// See README.txt for information and build instructions.

package pbexample;

option java_package = "com.ociweb.protocoltest";
option java_outer_classname = "PBMessageProvider";

//optimize_for (file option):
//Can be set to SPEED, CODE_SIZE, or LITE_RUNTIME
option optimize_for = SPEED;

message PBQuery {
  required int32 user = 1;
  required int32 year = 2;
  required int32 month = 3;
  required int32 date = 4;
  required int32 sampleCount = 5;

  message PBSample {
    required int32 id = 1;
    required int64 time = 2;
    required int32 measurement = 3;
    required int32 action = 4;
  }

  repeated PBSample samples = 6;
}

//message PBQueryProvider {
//  repeated PBQuery queries = 1;
//}

// See README.txt for information and build instructions.

package pbexample;

option java_package = "com.ociweb.protocoltest";
option java_outer_classname = "PBMessageProvider";

//optimize_for (file option):
//Can be set to SPEED, CODE_SIZE, or LITE_RUNTIME
option optimize_for = SPEED;

message PBQuery {
  optional int32 user = 1;
  optional int32 year = 2;
  optional int32 month = 3;
  optional int32 date = 4;
  optional int32 sampleCount = 5;

  message PBSample {
    optional int32 id = 1;
    optional int64 time = 2;
    optional int32 measurement = 3;
    optional int32 action = 4;
  }

  repeated PBSample samples = 6;
}

//message PBQueryProvider {
//  repeated PBQuery queries = 1;
//}

Make message fields optional (suggested over required)


package mimosa.rpc.samples.pb;

enum Status
{
  kOk            = 0;
  kNotFound      = 1;
  kInternalError = 2;
}

message Key
{
  required bytes key = 1;
}

message KeyValue
{
  required bytes key   = 1;
  required bytes value = 2;
}

message Result
{
  required Status status = 1;
  optional bytes  value  = 2;
}

service Database
{
  rpc get(Key) returns (Result);
  rpc set(KeyValue) returns (Result);
  rpc del(Key) returns (Result);
}

syntax = "proto3";

package mimosa.rpc.samples.pb;

enum Status
{
  kOk            = 0;
  kNotFound      = 1;
  kInternalError = 2;
}

message Key
{
  bytes key = 1;
}

message KeyValue
{
  bytes key   = 1;
  bytes value = 2;
}

message Result
{
  Status status = 1;
  bytes value  = 2;
}

service Database
{
  rpc get(Key) returns (Result);
  rpc set(KeyValue) returns (Result);
  rpc del(Key) returns (Result);
}

Switch example to protoc v3

Switch example to protoc v3


syntax = "proto3";

// AggregateBool is a container that counts individual instances of true/false
// It should be used for aggregating streams of bool values to appropriately
// account for their distribution.
message AggregateBool {
  uint64 true = 1;
  uint64 false = 2;
}

// AggregateBoolOption is an example container that can switch from single
// bool via a bool type and multi bools via an AggregateBool type.
// It may be desirable to copy this code and use it directly
message AggregateBoolOption {
  oneof bool_or_aggregate_bool {
    bool single = 1;
    AggregateBool multi = 2;
  }
}

syntax = "proto3";

// AggregateBool is a container that counts individual instances of true/false
// It should be used for aggregating streams of bool values to appropriately
// account for their distribution.
message AggregateBool {
  uint64 true = 1;
  uint64 false = 2;
}

// AggregateBoolTag is a tagged union that can switch from single
// one via a bool type and many via an AggregateBool type.
// It may be desirable to copy this code and use it directly
message AggregateBoolTag {
  oneof one_or_many {
    bool one = 1;
    AggregateBool many = 2;
  }
}

// BigInt is a string representation of a big integer
// It's not the most efficient transmission, but it's easier than
// repeated enum, bytes or repeated uint64 for consuming JSON.
message BigInt {
  string value = 1;
}

// AggregateLong is a container that holds information about a set of longs
// It should be used for aggregating streams of long values to appropriately
// account for their distribution
message AggregateLong {
  BigInt sum = 1;
  uint64 source_count = 2;
  uint64 min = 3;
  uint64 max = 4;
  double mean = 5;
  uint64 median = 6;
  double standard_deviation = 7;
}

// AggregateLongTag is a tagged union that can switch from single
// one via a long type and multi bools via an AggregateLong type.
// It may be desirable to copy this code and use it directly
message AggregateLongTag {
  oneof one_or_many {
    uint64 one = 1;
    AggregateCount many = 2;
  }
}

// AggregateDouble is a container that holds information about a set of doubles
// It should be used for aggregating streams of double values to appropriately
// account for their distribution.
message AggregateDouble {
  double mean = 1;
  uint64 source_count = 2;
  double min = 3;
  double max = 4;
  double median = 5;
  double standard_deviation = 6;
}

// AggregateDoubleTag is a tagged union that can switch from single
// one via a double type and many via an AggregateDouble type.
// It may be desirable to copy this code and use it directly
message AggregateDoubleTag {
  oneof one_or_many {
    double one = 1;
    AggregateDouble many = 2;
  }
}

Add AggregateDouble and AggregateLong message types


//
// Copyright 2017, TeamDev Ltd. All rights reserved.
//
// Redistribution and use in source and/or binary forms, with or without
// modification, must retain the above copyright notice and the following
// disclaimer.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
syntax = "proto3";

package spine.test.envelope;

option (type_url_prefix) = "type.spine.io";
option java_package="io.spine.test.envelope";
option java_outer_classname = "AggregateEventsProto";
option java_multiple_files = true;

import "spine/options.proto";
import "spine/test/envelope/project.proto";

message ProjectCreated {
    ProjectId project_id = 1;
}

//
// Copyright 2017, TeamDev Ltd. All rights reserved.
//
// Redistribution and use in source and/or binary forms, with or without
// modification, must retain the above copyright notice and the following
// disclaimer.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
syntax = "proto3";

package spine.test.envelope;

option (type_url_prefix) = "type.spine.io";
option java_package="io.spine.test.envelope";
option java_outer_classname = "AggregateEventsProto";
option java_multiple_files = true;

import "spine/options.proto";
import "spine/test/envelope/project.proto";

// A test event for the suites targeting the {@link io.spine.envelope.MessageEnvelope} tests.
message ProjectCreated {
    ProjectId project_id = 1;
}

Add a doc for a test proto definition.

Add a doc for a test proto definition.


package events;

message ValueMetric {
    required string name = 1;
    required double value = 2;
    required string unit = 3;
}

message CounterEvent {
    required string name = 1;
}

package events;

message ValueMetric {
    required string name = 1;
    required double value = 2;
    required string unit = 3;
}

message CounterEvent {
    required string name = 1;
    required uint64 delta = 2;
}

Add required delta to CounterEvent

Add required delta to CounterEvent

[#77046142]

Signed-off-by: Johannes Petzold <688cf9f92d21a1bc04c0c50ee1ca49282872061e@pivotal.io>


// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdnetworks;

import "aqdsystems.proto";
import "aqdlocations.proto";

message DynamicRange {
    optional string start = 1;
    optional string end = 2;
    optional string range_class = 3;
}

message Network {
    optional string name = 1;
    optional string ip = 2;
    optional int32 cidr = 3;
    optional string bcast = 4;
    optional string netmask = 5;
    optional string side = 6;
    optional string sysloc = 7;
    optional aqdlocations.Location location = 8;
    repeated aqdsystems.Host hosts = 9;
    optional int32 id = 10 [deprecated=true];
    optional string type = 11;
    optional bool discoverable = 12 [deprecated=true];
    optional bool discovered = 13 [deprecated=true];
    optional string env_name = 14;
    repeated DynamicRange dynamic_ranges = 15;
    repeated string routers = 16;
    optional string compartment = 17;
    optional aqdsystems.NetworkEnvironment network_environment = 18;
    // Note: network_environment.name == env_name
}

message NetworkList {
    repeated Network networks = 1;
}

message NetworkCompartment {
    required string name = 1;
}

message NetworkCompartmentList {
    repeated NetworkCompartment compartments = 1;
}

// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdnetworks;

import "aqdsystems.proto";
import "aqdlocations.proto";

message DynamicRange {
    optional string start = 1;
    optional string end = 2;
    optional string range_class = 3;
}

message Network {
    optional string name = 1;
    optional string ip = 2;
    optional int32 cidr = 3;
    optional string bcast = 4;
    optional string netmask = 5;
    optional string side = 6;
    optional string sysloc = 7;
    optional aqdlocations.Location location = 8;
    repeated aqdsystems.Host hosts = 9;
    optional int32 id = 10 [deprecated=true];
    optional string type = 11;
    optional bool discoverable = 12 [deprecated=true];
    optional bool discovered = 13 [deprecated=true];
    optional string env_name = 14;
    repeated DynamicRange dynamic_ranges = 15;
    repeated string routers = 16;
    optional string compartment = 17;
    optional aqdsystems.NetworkEnvironment network_environment = 18;
    repeated aqdsystems.ServiceAddress service_addresses = 19;
    // Note: network_environment.name == env_name
}

message NetworkList {
    repeated Network networks = 1;
}

message NetworkCompartment {
    required string name = 1;
}

message NetworkCompartmentList {
    repeated NetworkCompartment compartments = 1;
}

Add service addresses to Network skeleton

Add service address attribute to Network skeleton so that full assigned
address view in network can be created.

Addresses Issue: Jira/AQUILON-4523


syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.dclauth;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/dclauth/types";

import "gogoproto/gogo.proto";
import "cosmos/auth/v1beta1/auth.proto";
import "dclauth/grant.proto";

message Account {
  // TODO issue 99: do we need that ???
  option (gogoproto.goproto_getters)  = false;
  option (gogoproto.goproto_stringer) = false;

  cosmos.auth.v1beta1.BaseAccount base_account = 1  [(gogoproto.embed) = true];
  // NOTE. we do not user AccountRoles casting here to preserve repeated form
  //       so protobuf takes care about repeated items in generated code,
  //       (but that might be not the final solution)
  repeated string roles = 2 [(gogoproto.casttype) = "AccountRole"];
  repeated Grant approvals = 3;
  int32 vendorID = 4;

}

syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.dclauth;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/dclauth/types";

import "gogoproto/gogo.proto";
import "cosmos/auth/v1beta1/auth.proto";
import "dclauth/grant.proto";

message Account {
  // TODO issue 99: do we need that ???
  option (gogoproto.goproto_getters)  = false;
  option (gogoproto.goproto_stringer) = false;

  cosmos.auth.v1beta1.BaseAccount base_account = 1  [(gogoproto.embed) = true];
  // NOTE. we do not user AccountRoles casting here to preserve repeated form
  //       so protobuf takes care about repeated items in generated code,
  //       (but that might be not the final solution)
  repeated string roles = 2 [(gogoproto.casttype) = "AccountRole"];
  repeated Grant approvals = 3;
  int32 vendorID = 4;
  repeated Grant rejectApprovals = 5;
}

Add a new filed rejectApprovals

Add a new filed rejectApprovals


/*
 * Copyright 2012 Google Inc.
 *
 * 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
 *
 *      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.
 */

// Author: rahulbansal@google.com (Rahul Bansal)
//
// Proto representing critical line information.

syntax = "proto2";

option optimize_for = LITE_RUNTIME;

package net_instaweb;

// Protobuf to encapsulate the information use by blink flow.
// Next id = 3
message CriticalLineInfo {
  // Panels that are below the critical line.
  repeated Panel panels = 1;
  // URLs of images above the critical line.
  repeated string critical_image_url = 2;
}

message Panel {
  // XPath identifying the start instance tag for the panel.
  required string start_xpath = 1;
  // XPath identifying the marker beyond instances of this panel.
  // The marker can be text/comment/tag
  // The marker is not part of the panel.
  optional string end_marker_xpath = 2;
};

/*
 * Copyright 2012 Google Inc.
 *
 * 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
 *
 *      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.
 */

// Author: rahulbansal@google.com (Rahul Bansal)
//
// Proto representing critical line information.

syntax = "proto2";

option optimize_for = LITE_RUNTIME;

package net_instaweb;

// Protobuf to encapsulate the information use by blink flow.
// Next id = 4
message CriticalLineInfo {
  // Panels that are below the critical line.
  repeated Panel panels = 1;
  // URLs of images above the critical line.
  repeated string critical_image_url = 2;
  // URLs of css background images above the critical line.
  repeated string css_critical_image_url = 3;
}

message Panel {
  // XPath identifying the start instance tag for the panel.
  required string start_xpath = 1;
  // XPath identifying the marker beyond instances of this panel.
  // The marker can be text/comment/tag
  // The marker is not part of the panel.
  optional string end_marker_xpath = 2;
};

Add css critical images field to critical line proto.


syntax = "proto3";

package xla;

import "tensorflow/compiler/xla/xla_data.proto";

message RunHloModuleIterationLiterals {
  // Arguments used by the iteration.
  repeated LiteralProto arguments = 2;

  // Ressult of the iteration on the target platform.
  optional LiteralProto result = 3;

  // Result of the iteration on the reference platform.
  optional LiteralProto reference_result = 4;
}

message RunHloModuleLiterals {
  // Iterations of run hlo module.
  repeated RunHloModuleIterationLiterals iterations = 1;
}

syntax = "proto3";

package xla;

import "tensorflow/compiler/xla/xla_data.proto";

message RunHloModuleIterationLiterals {
  // Arguments used by the iteration.
  repeated LiteralProto arguments = 2;

  // Ressult of the iteration on the target platform.
  LiteralProto result = 3;

  // Result of the iteration on the reference platform.
  LiteralProto reference_result = 4;
}

message RunHloModuleLiterals {
  // Iterations of run hlo module.
  repeated RunHloModuleIterationLiterals iterations = 1;
}

Remove disallowed and redundant optional in proto buf

Proto3 defaults to optional.

PiperOrigin-RevId: 389196994
Change-Id: Iaf7e6e528b649433b50de4f100e032bb34fbbbe0


// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdparamdefinitions;

import "aqdsystems.proto";

message ParamDefinition {
    required string path = 1;
    required string value_type = 2;
    optional string default = 3;
    optional string description = 4;
    optional string template = 5;
    optional bool is_required = 6 [default = false];
    optional bool rebuild_required = 7 [deprecated = true];
    optional aqdsystems.Activation activation = 8;
}

message ParamDefinitionList {
    repeated ParamDefinition param_definitions = 1;
}

// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdparamdefinitions;

import "aqdsystems.proto";

message ParamDefinition {
    required string path = 1;
    required string value_type = 2;
    optional string default = 3;
    optional string description = 4;
    optional string template = 5;
    optional bool is_required = 6 [default = false];
    optional bool rebuild_required = 7 [deprecated = true];
    optional aqdsystems.Activation activation = 8;
    optional string archetype = 9;
    optional string feature = 10;
    optional string type = 11;
}

message ParamDefinitionList {
    repeated ParamDefinition param_definitions = 1;
}

Include archetype and feature fields in ParameterDefinition.

This will make it possible to return both feature and archetype
parameter definitions from show_parameter_definitiona --all.


//
// Copyright 2015, TeamDev Ltd. All rights reserved.
//
// Redistribution and use in source and/or binary forms, with or without
// modification, must retain the above copyright notice and the following
// disclaimer.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
syntax = "proto3";

package spine.base;

option java_generate_equals_and_hash = true;
option java_multiple_files = true;
option java_outer_classname = "DomainProto";
option java_package = "org.spine3.base";

// An Internet domain name.
message DomainName {
  // The value of the domain name.
  //
  // It is the responsibility of the application to provide a correct value for this field.
  string value = 1;
}

Add a new line at the end of the file.

Add a new line at the end of the file.


package events;

import "uuid.proto";

/// A ValueMetric indicates the value of a metric at an instant in time.
message ValueMetric {
    required string name = 1;  /// Name of the metric. Must be consistent for downstream consumers to associate events semantically.
    required double value = 2; /// Value at the time of event emission.
    required string unit = 3;  /// Unit of the metric. Please see http://metrics20.org/spec/#units for ideas; SI units/prefixes are recommended where applicable. Should be consistent for the life of the metric (consumers are expected to report, but not interpret, prefixes).
}

/// A CounterEvent represents the increment of a counter. It contains only the change in the value; it is the responsibility of downstream consumers to maintain the value of the counter.
message CounterEvent {
    required string name = 1;  /// Name of the counter. Must be consistent for downstream consumers to associate events semantically.
    required uint64 delta = 2; /// Amount by which to increment the counter.
}

/// A ContainerMetric records resource usage of an app in a container.
 message ContainerMetric {
    required string applicationId = 1; /// ID of the contained application.
    required int32 instanceIndex = 2;  /// Instance index of the contained application. (This, with applicationId, should uniquely identify a container.)

    required double cpuPercentage = 3; /// CPU used, on a scale of 0 to 100.
    required uint64 memoryBytes = 4;   /// Bytes of memory used.
    required uint64 diskBytes = 5;     /// Bytes of disk used.
 }

package events;

import "uuid.proto";

/// A ValueMetric indicates the value of a metric at an instant in time.
message ValueMetric {
    required string name = 1;  /// Name of the metric. Must be consistent for downstream consumers to associate events semantically.
    required double value = 2; /// Value at the time of event emission.
    required string unit = 3;  /// Unit of the metric. Please see http://metrics20.org/spec/#units for ideas; SI units/prefixes are recommended where applicable. Should be consistent for the life of the metric (consumers are expected to report, but not interpret, prefixes).
}

/// A CounterEvent represents the increment of a counter. It contains only the change in the value; it is the responsibility of downstream consumers to maintain the value of the counter.
message CounterEvent {
    required string name = 1;  /// Name of the counter. Must be consistent for downstream consumers to associate events semantically.
    required uint64 delta = 2; /// Amount by which to increment the counter.
    optional uint64 total = 3; /// Total value of the counter. By default, this may be left unset and downstream components will track the total.
}

/// A ContainerMetric records resource usage of an app in a container.
 message ContainerMetric {
    required string applicationId = 1; /// ID of the contained application.
    required int32 instanceIndex = 2;  /// Instance index of the contained application. (This, with applicationId, should uniquely identify a container.)

    required double cpuPercentage = 3; /// CPU used, on a scale of 0 to 100.
    required uint64 memoryBytes = 4;   /// Bytes of memory used.
    required uint64 diskBytes = 5;     /// Bytes of disk used.
 }

Add optional total to CounterEvent

Add optional total to CounterEvent

Signed-off-by: Alex Jackson <5fd8ab8d1587e7ab8bef2ad3b5211edf3f734ab8@pivotal.io>


/**
 * Copyright (C) 2009 - 2010 by OpenGamma Inc.
 *
 * Please see distribution for license.
 */

namespace com.opengamma.engine.security {

  /**
   * A simple mutable implementation of {@code Security}.
   */
  message DefaultSecurity {

    optional com.opengamma.id.UniqueIdentifier uniqueIdentifier;
    required string name [default=""];
    required string securityType;
    required com.opengamma.id.IdentifierBundle identifiers [default=()];

    // TODO: getName - used to call buildDefaultDisplayName if no name was given

    binding Java {
      implements "Security, com.opengamma.id.MutableUniqueIdentifiable";
      methods "equals,hashCode";
      body <<<JAVA
        /**
         * Dynamically determines a 'default' display name if one hasn't been explicitly set.
         * This implementation constructs one from the identity key or identifiers.
         *
         * @return a default display name
         */
        protected String buildDefaultDisplayName() {
          final com.opengamma.id.UniqueIdentifier identifier = getUniqueIdentifier(); // assign for thread-safety
          if (identifier != null) {
            return identifier.toString();
          }
          final com.opengamma.id.IdentifierBundle bundle = getIdentifiers(); // assign for thread-safety
          final com.opengamma.id.Identifier first = (bundle.size() == 0 ? null : bundle.getIdentifiers().iterator().next());
          return org.apache.commons.lang.ObjectUtils.toString(first);
        }

        /**
         * Add an identifier to the bundle.
         */
        public void addIdentifier (final com.opengamma.id.Identifier identifier) {
          setIdentifiers (getIdentifiers ().withIdentifier (identifier));
        }
JAVA;
    }
  }

}

/**
 * Copyright (C) 2009 - 2010 by OpenGamma Inc.
 *
 * Please see distribution for license.
 */

namespace com.opengamma.engine.security {

  /**
   * A simple mutable implementation of {@code Security}.
   */
  message DefaultSecurity {

    optional com.opengamma.id.UniqueIdentifier uniqueIdentifier;
    required string name [default=""];
    required string securityType;
    required com.opengamma.id.IdentifierBundle identifiers [default=()];

    // TODO: getName - used to call buildDefaultDisplayName if no name was given

    binding Java {
      implements "com.opengamma.core.security.Security, com.opengamma.id.MutableUniqueIdentifiable";
      methods "equals,hashCode";
      body <<<JAVA
        /**
         * Dynamically determines a 'default' display name if one hasn't been explicitly set.
         * This implementation constructs one from the identity key or identifiers.
         *
         * @return a default display name
         */
        protected String buildDefaultDisplayName() {
          final com.opengamma.id.UniqueIdentifier identifier = getUniqueIdentifier(); // assign for thread-safety
          if (identifier != null) {
            return identifier.toString();
          }
          final com.opengamma.id.IdentifierBundle bundle = getIdentifiers(); // assign for thread-safety
          final com.opengamma.id.Identifier first = (bundle.size() == 0 ? null : bundle.getIdentifiers().iterator().next());
          return org.apache.commons.lang.ObjectUtils.toString(first);
        }

        /**
         * Add an identifier to the bundle.
         */
        public void addIdentifier (final com.opengamma.id.Identifier identifier) {
          setIdentifiers (getIdentifiers ().withIdentifier (identifier));
        }
JAVA;
    }
  }

}

Move security to OG Core

[ENG-267] Move security to OG Core

Fix DefaultSecurity definition


syntax = "proto3";

package spine.site.home;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.site.home";
option java_outer_classname = "TaskProto";
option java_multiple_files = true;

import "google/protobuf/timestamp.proto";
import "spine/site/home/identifiers.proto";

// A task which can be assigned to a developer.
message Task {
    option (entity).kind = AGGREGATE;
    TaskId id = 1;
    string name = 2 [(required) = true];
    string description = 3;
    spine.core.UserId owner = 4 [(required) = true];
    spine.core.UserId assignee = 5;
}

// An item in a task list displayed in UI.
message TaskItem {
    option (entity).kind = PROJECTION;
    TaskId task = 1;
    string name = 2 [(required) = true];
    string description = 3;
    string owner = 4 [(required) = true];
    string assignee = 5;
    google.protobuf.Timestamp when_done = 6;
}

syntax = "proto3";

package spine.site.home;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.site.home";
option java_outer_classname = "TaskProto";
option java_multiple_files = true;

import "google/protobuf/timestamp.proto";
import "spine/site/home/identifiers.proto";

// A task which can be assigned to a user.
message Task {
    option (entity).kind = AGGREGATE;
    TaskId id = 1;
    string name = 2 [(required) = true];
    string description = 3;
    spine.core.UserId owner = 4 [(required) = true];
    spine.core.UserId assignee = 5;
}

// An item in a task list displayed in UI.
message TaskItem {
    option (entity).kind = PROJECTION;
    TaskId task = 1;
    string name = 2 [(required) = true];
    string description = 3;
    string owner = 4 [(required) = true];
    string assignee = 5;
    google.protobuf.Timestamp when_done = 6;
}

Make type comment correspond to the definition


syntax = "proto3";

package spine.server;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.server";
option java_outer_classname = "ServerEnvironmentProto";
option java_multiple_files = true;

// A type of the environment system is deployed to.
//
enum DeploymentType {

    // Running in a standalone mode.
    //
    // Standalone mode is activated when no specific runtime deployment is recognized.
    //
    STANDALONE = 0;

    // Running on an App Engine local development server.
    APPENGINE_EMULATOR = 2;

    // Running on an App Engine cloud infrastructure.
    APPENGINE_CLOUD = 3;
}

syntax = "proto3";

package spine.server;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.server";
option java_outer_classname = "ServerEnvironmentProto";
option java_multiple_files = true;

// A type of the environment system is deployed to.
//
enum DeploymentType {

    // Running in a standalone mode.
    //
    // Standalone mode is activated when no specific runtime deployment is recognized.
    //
    STANDALONE = 0;

    // Running on an App Engine local development server.
    APPENGINE_EMULATOR = 1;

    // Running on an App Engine cloud infrastructure.
    APPENGINE_CLOUD = 2;
}

Update indexes to be orderly.

Update indexes to be orderly.


package amber;
option java_package = "pl.edu.agh.amber.common.proto";
option java_outer_classname = "CommonProto";

option optimize_for = SPEED;

enum DeviceType {
    NINEDOF = 1;
    ROBOCLAW = 2;
    STARGAZER = 3;
    HOKUYO = 4;
    DUMMY = 5;
    LOCATION = 6;
    MAESTRO = 7;
}

message DriverHdr {
    optional int32 deviceType = 1;
    optional int32 deviceID = 2;
    repeated int32 clientIDs = 3 [packed = true];
}

message DriverMsg {
    enum MsgType {
        DATA = 1;
        PING = 2;
        PONG = 3;
        CLIENT_DIED = 4;
        DRIVER_DIED = 5;
        SUBSCRIBE = 6;
        UNSUBSCRIBE = 7;
    }

    required MsgType type = 2;
    optional uint32 synNum = 3;
    optional uint32 ackNum = 4;
    optional uint32 listenerNum = 5;
    extensions 10 to 89;
}

package amber;
option java_package = "pl.edu.agh.amber.common.proto";
option java_outer_classname = "CommonProto";

option optimize_for = SPEED;

enum DeviceType {
    NINEDOF = 1;
    ROBOCLAW = 2;
    STARGAZER = 3;
    HOKUYO = 4;
    DUMMY = 5;
    LOCATION = 6;
    MAESTRO = 7;
}

message DriverHdr {
    optional int32 deviceType = 1;
    optional int32 deviceID = 2;
    repeated int32 clientIDs = 3 [packed = true];
}

message DriverMsg {
    enum MsgType {
        DATA = 1;
        PING = 2;
        PONG = 3;
        CLIENT_DIED = 4;
        DRIVER_DIED = 5;
        SUBSCRIBE = 6;
        UNSUBSCRIBE = 7;
    }

    required MsgType type = 2;
    optional uint32 synNum = 3;
    optional uint32 ackNum = 4;
    optional uint32 listenerNum = 5;
    extensions 10 to 99;
}

Extend number of extenstions to 99

Extend number of extenstions to 99


syntax = "proto3";

package fs;

message Empty {

}

message String {
  string txt = 1;
}

message Bytes {
  bytes data = 1;
}

message Content {
  Path path = 1;
  Bytes content = 2;
}

message Path {
  string path = 1;
  enum PathType {
    NONE = 1;
    FILE = 2;
    DIR = 3;
    LINK = 4;
  }
  PathType type = 2;
}

message PathArguments {
  repeated Path paths = 1;
}

message Command {
  Path cwd = 1;
  string command = 2;
  map env = 3;
}

message CommandOutput {
  string stdout = 1;
  string stderr = 2;
  int32 code = 3;
}

service FileSystem {
  rpc createDir(Path) returns (Empty) {}

  rpc createFile(Path) returns (Empty) {}

  rpc copy(repeated Path) returns (Empty) {}

  rpc move(repeated Path) returns (Empty) {}

  rpc delete(repeated Path) returns (Empty) {}

  rpc exists(Path) returns (Path) {}

  rpc readFile(Path) returns (stream Content) {}

  rpc writeFile(stream Content) returns (Empty) {}

  rpc readDir(Path) returns (stream Content) {}

  rpc writeDir(stream Content) returns (Empty) {}

  rpc exec(Command) returns (CommandOutput) {}}

  rpc execStream(Command) returns (stream CommandOutput) {}
}

syntax = "proto3";

package fs;

message Empty {

}

message String {
  string txt = 1;
}

message Bytes {
  bytes data = 1;
}

message Content {
  Path path = 1;
  Bytes content = 2;
}

message Path {
  string path = 1;
  enum PathType {
    NONE = 1;
    FILE = 2;
    DIR = 3;
    LINK = 4;
  }
  PathType type = 2;
}

message PathArguments {
  repeated Path paths = 1;
}

message Command {
  Path cwd = 1;
  string command = 2;
  map<string, string> env = 3;
}

message CommandOutput {
  string stdout = 1;
  string stderr = 2;
  int32 code = 3;
}

service FileSystem {
  rpc createDir(Path) returns (Empty) {}

  rpc createFile(Path) returns (Empty) {}

  rpc copy(repeated Path) returns (Empty) {}

  rpc move(repeated Path) returns (Empty) {}

  rpc delete(repeated Path) returns (Empty) {}

  rpc exists(Path) returns (Path) {}

  rpc readFile(Path) returns (stream Content) {}

  rpc writeFile(stream Content) returns (Empty) {}

  rpc readDir(Path) returns (stream Content) {}

  rpc writeDir(stream Content) returns (Empty) {}

  rpc exec(Command) returns (CommandOutput) {}}

  rpc execStream(Command) returns (stream CommandOutput) {}
}

Fix env map in Command message

Fix env map in Command message


package events;

import "heartbeat.proto";
import "http.proto";
import "log.proto";
import "metric.proto";
import "error.proto";

message Envelope {
    enum EventType {
        Heartbeat = 1;
        HttpStart = 2;
        HttpStop = 3;
        HttpStartStop = 4;
        LogMessage = 5;
        ValueMetric = 6;
        CounterEvent = 7;
        Error = 8;
    }

    required string origin = 1;
    required EventType eventType = 2;

    optional int64 timestamp = 6;

    optional Heartbeat heartbeat = 3;
    optional HttpStart httpStart = 4;
    optional HttpStop httpStop = 5;
    optional HttpStartStop httpStartStop = 7;
    optional LogMessage logMessage = 8;
    optional ValueMetric valueMetric = 9;
    optional CounterEvent counterEvent = 10;
    optional Error errorEvent = 11;
}

package events;

import "heartbeat.proto";
import "http.proto";
import "log.proto";
import "metric.proto";
import "error.proto";

message Envelope {
    enum EventType {
        Heartbeat = 1;
        HttpStart = 2;
        HttpStop = 3;
        HttpStartStop = 4;
        LogMessage = 5;
        ValueMetric = 6;
        CounterEvent = 7;
        Error = 8;
    }

    required string origin = 1;
    required EventType eventType = 2;

    optional int64 timestamp = 6;

    optional Heartbeat heartbeat = 3;
    optional HttpStart httpStart = 4;
    optional HttpStop httpStop = 5;
    optional HttpStartStop httpStartStop = 7;
    optional LogMessage logMessage = 8;
    optional ValueMetric valueMetric = 9;
    optional CounterEvent counterEvent = 10;
    optional Error error = 11;
}

Rename errorEvent to error for simplicity


syntax = "proto3";

// PluginSpec defines the base payload which clients can specify for creating
// a service with the plugin runtime.
message PluginSpec {
	string name = 1;
	string remote = 2;
	repeated PluginPrivilege privileges = 3;
	bool disabled = 4;
}

// PluginPrivilege describes a permission the user has to accept
// upon installing a plugin.
message PluginPrivilege {
	string name = 1;
	string description = 2;
	repeated string value = 3;
}

syntax = "proto3";

option go_package = "github.com/docker/docker/api/types/swarm/runtime;runtime";

// PluginSpec defines the base payload which clients can specify for creating
// a service with the plugin runtime.
message PluginSpec {
	string name = 1;
	string remote = 2;
	repeated PluginPrivilege privileges = 3;
	bool disabled = 4;
}

// PluginPrivilege describes a permission the user has to accept
// upon installing a plugin.
message PluginPrivilege {
	string name = 1;
	string description = 2;
	repeated string value = 3;
}

Set a go_package on api/types/swarm/runtime to make it Bazel compatible

Signed-off-by: Yves Junqueira <f124a55a0a2aa7b390396c79dad5c15eabd300dd@gmail.com>


syntax = "proto3";

option java_multiple_files = true;
option java_package = "org.skywalking.apm.network.proto";

import "Downstream.proto";

//discovery service for application instance, this service is called when application starts
//or http client connection switch to another collector server instance
service InstanceDiscoveryService {
    rpc register (ApplicationInstance) returns (ApplicationInstanceMapping) {
    }

    rpc heartbeat (ApplicationInstanceHeartbeat) returns (Downstream) {
    }

    rpc registerRecover (ApplicationInstanceMapping) returns (Downstream) {
    }
}

message ApplicationInstance {
    int32 applicationId = 1;
    int64 registerTime = 2;
}

message ApplicationInstanceMapping {
    int32 applicationId = 1;
    int32 applicationInstanceId = 2;
    int64 registerTime = 3;
}

message ApplicationInstanceHeartbeat {
    int32 applicationInstanceId = 1;
    int64 heartbeatTime = 2;
}

//discovery service for ServiceName by Network address or application code
service ServiceNameDiscoveryService {
    rpc discovery (ServiceNameCollection) returns (ServiceNameMappingCollection) {
    }
}

message ServiceNameCollection {
    repeated ServiceNameElement elements = 1;
}

message ServiceNameMappingCollection {
    repeated ServiceNameMappingElement elements = 1;
}

message ServiceNameMappingElement {
    int32 serviceId = 1;
    ServiceNameElement element = 2;
}

message ServiceNameElement {
    string serviceName = 1;
    int32 applicationId = 2;
}

syntax = "proto3";

option java_multiple_files = true;
option java_package = "org.skywalking.apm.network.proto";

import "Downstream.proto";

//discovery service for application instance, this service is called when application starts
//or http client connection switch to another collector server instance
service InstanceDiscoveryService {
    rpc register (ApplicationInstance) returns (ApplicationInstanceMapping) {
    }

    rpc heartbeat (ApplicationInstanceHeartbeat) returns (Downstream) {
    }

    rpc registerRecover (ApplicationInstanceRecover) returns (Downstream) {
    }
}

message ApplicationInstance {
    int32 applicationId = 1;
    int64 registerTime = 2;
}

message ApplicationInstanceMapping {
    int32 applicationId = 1;
    int32 applicationInstanceId = 2;
}

message ApplicationInstanceRecover {
    int32 applicationId = 1;
    int32 applicationInstanceId = 2;
    int64 registerTime = 3;
}

message ApplicationInstanceHeartbeat {
    int32 applicationInstanceId = 1;
    int64 heartbeatTime = 2;
}

//discovery service for ServiceName by Network address or application code
service ServiceNameDiscoveryService {
    rpc discovery (ServiceNameCollection) returns (ServiceNameMappingCollection) {
    }
}

message ServiceNameCollection {
    repeated ServiceNameElement elements = 1;
}

message ServiceNameMappingCollection {
    repeated ServiceNameMappingElement elements = 1;
}

message ServiceNameMappingElement {
    int32 serviceId = 1;
    ServiceNameElement element = 2;
}

message ServiceNameElement {
    string serviceName = 1;
    int32 applicationId = 2;
}

Add ApplicationInstanceRecover message for the request of instance recover service


syntax = "proto3";

import public "shared.proto";

package fontbakery.dashboard;

message FamilyJob {
    string docid = 1;
    repeated fontbakery.dashboard.File files = 2;
    enum JobType {
       UNKNOWN = 0;
       DRAGANDDROP_ORIGIN = 1;
       DRAGANDDROP_DISTRIBUTED = 2;
    }
    JobType type = 3;
    message DistributedInfo {
        int32 id = 1;
        repeated string order = 2;
    }
    DistributedInfo distributedInfo = 4;
}

// Cache:
// TODO: if implemented widely, fontbakery.dashboard.Files could be replaced
// by google.Any, making this a universial protobuf message cache
// needs testing. (CacheItem expects fontbakery.dashboard.Files as well)

// The greeting service definition.
service Cache {
  // Sends a greeting
  rpc Put (stream CacheItem) returns (stream CacheKey) {};
  // Sends another greeting
  rpc Get (CacheKey) returns (fontbakery.dashboard.Files) {};
  rpc Purge (CacheKey) returns (CacheStatus) {};
}

// The request message containing the user's name.
message CacheItem {
  fontbakery.dashboard.Files payload = 1;
  string clientid = 2;
}

message CacheKey {
    string key = 1;
    string clientid = 2; // optional, set if CacheItem.clientid was set
    bool force = 3; // used for purge
}

message CacheStatus {
    string key = 1;
    int32 instances = 2;
}

syntax = "proto3";

import "google/protobuf/any.proto";
import public "shared.proto";

package fontbakery.dashboard;

message FamilyJob {
    string docid = 1;
    repeated fontbakery.dashboard.File files = 2;
    enum JobType {
       UNKNOWN = 0;
       DRAGANDDROP_ORIGIN = 1;
       DRAGANDDROP_DISTRIBUTED = 2;
    }
    JobType type = 3;
    message DistributedInfo {
        int32 id = 1;
        repeated string order = 2;
    }
    DistributedInfo distributedInfo = 4;
}

// Cache:
// TODO: if implemented widely, fontbakery.dashboard.Files could be replaced
// by google.Any, making this a universial protobuf message cache
// needs testing. (CacheItem expects fontbakery.dashboard.Files as well)

// The greeting service definition.
service Cache {
  // Sends a greeting
  rpc Put (stream CacheItem) returns (stream CacheKey) {};
  // Sends another greeting
  rpc Get (CacheKey) returns (google.protobuf.Any) {};
  rpc Purge (CacheKey) returns (CacheStatus) {};
}

// The request message containing the user's name.
message CacheItem {
  google.protobuf.Any payload = 1;
  string clientid = 2;
}

message CacheKey {
    string key = 1;
    string clientid = 2; // optional, set if CacheItem.clientid was set
    bool force = 3; // used for purge
}

message CacheStatus {
    string key = 1;
    int32 instances = 2;
}

Use Any as payload type

[protocolbuffers/CacheService] Use Any as payload type


// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdservices;

import "aqdsystems.proto";
import "aqdlocations.proto";
import "aqdnetworks.proto";

message Service {
    optional string name = 1;
    optional string template = 2 [deprecated=true];
    repeated ServiceInstance serviceinstances = 3;
}

message ServiceList {
    repeated Service services = 1;
}

message ServiceInstance {
    optional string name = 1;
    optional string template = 2 [deprecated=true];
    repeated aqdsystems.Host servers = 3;
    repeated aqdsystems.Host clients = 4 [deprecated=true];
    repeated ServiceInstanceProvider provider = 5;
}

message ServiceInstanceProvider {
    optional string target_ip = 1;
    optional string target_fqdn = 2;
    optional aqdsystems.Host host = 3;
    optional aqdsystems.Cluster cluster = 4;
    optional aqdsystems.ServiceAddress service_address = 5;
}

message ServiceMap {
    optional aqdlocations.Location location = 1;
    optional Service service = 2;
    optional aqdsystems.Personality personality = 3;
    optional aqdnetworks.Network network = 4;
}

message ServiceMapList {
    repeated ServiceMap servicemaps = 1;
}

// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdservices;

import "aqdsystems.proto";
import "aqdlocations.proto";
import "aqdnetworks.proto";

message Service {
    optional string name = 1;
    optional string template = 2 [deprecated=true];
    repeated ServiceInstance serviceinstances = 3;
}

message ServiceList {
    repeated Service services = 1;
}

message ServiceInstance {
    optional string name = 1;
    optional string template = 2 [deprecated=true];
    repeated aqdsystems.Host servers = 3;
    repeated aqdsystems.Host clients = 4 [deprecated=true];
    repeated ServiceInstanceProvider provider = 5;
}

message ServiceInstanceProvider {
    optional string target_ip = 1;
    optional string target_fqdn = 2;
    optional aqdsystems.Host host = 3;
    optional aqdsystems.Cluster cluster = 4;
    optional aqdsystems.ServiceAddress service_address = 5;
}

message ServiceMap {
    optional aqdlocations.Location location = 1;
    optional Service service = 2;
    optional aqdsystems.Personality personality = 3;
    optional aqdnetworks.Network network = 4;
    optional string host_environment = 5;
}

message ServiceMapList {
    repeated ServiceMap servicemaps = 1;
}

Allow mapping services to host environments

Change-Id: I6e57bc5fcfe857df5f465fe3c7085983c88e2cea
Reviewed-by: Priya Joshi <3c6cfa6f57440adfc837c4ad04483313acbc2582@morganstanley.com>


package org.wildfly.clustering.web.undertow.sso.elytron;

// IDs: 250

/**
 * @TypeId(250)
 */
message ElytronAuthentication {
	optional	string	mechanism	= 1;
	optional	string	name	= 2;
}

package org.wildfly.clustering.web.undertow.sso.elytron;

// IDs: 250

/**
 * @TypeId(250)
 */
message ElytronAuthentication {
	optional	string	mechanism	= 1;
	optional	string	name	= 2;
	optional	bool	programmatic	= 3;
}

[WFLY-14365] Add "programmatic" to the protobuf schema.


//
// Copyright 2017, TeamDev Ltd. All rights reserved.
//
// Redistribution and use in source and/or binary forms, with or without
// modification, must retain the above copyright notice and the following
// disclaimer.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
syntax = "proto3";

package spine.test.validate.msg;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_generate_equals_and_hash = true;
option java_multiple_files = true;
option java_outer_classname = "QueryTestsIdentifiersProto";
option java_package = "io.spine.test.queries";

message ProjectId {
    string value = 1;
}

message TaskId {
    string value = 1;
}

//
// Copyright 2017, TeamDev Ltd. All rights reserved.
//
// Redistribution and use in source and/or binary forms, with or without
// modification, must retain the above copyright notice and the following
// disclaimer.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
syntax = "proto3";

package spine.test.queries;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_generate_equals_and_hash = true;
option java_multiple_files = true;
option java_outer_classname = "QueryTestsIdentifiersProto";
option java_package = "io.spine.test.queries";

message ProjectId {
    string value = 1;
}

message TaskId {
    string value = 1;
}

Fix invalid proto package name.

Fix invalid proto package name.


syntax = "proto3";

package syft.grid.messages;

import "proto/core/common/common_object.proto";
import "proto/core/io/address.proto";

message SuccessResponseMessage {
  syft.core.common.UID msg_id = 1;
  string resp_msg = 3;
  syft.core.io.Address address = 4;
}

syntax = "proto3";

package syft.grid.messages;

import "proto/core/common/common_object.proto";
import "proto/core/io/address.proto";

message SuccessResponseMessage {
  syft.core.common.UID msg_id = 1;
  string resp_msg = 2;
  syft.core.io.Address address = 3;
}

message ErrorResponseMessage {
  syft.core.common.UID msg_id = 1;
  string resp_msg = 2;
  syft.core.io.Address address = 3;
}

ADD new Protobuf schema ErrorResponseMessage


package amber;
option java_package = "pl.edu.agh.amber.common.proto";
option java_outer_classname = "CommonProto";

option optimize_for = SPEED;

enum DeviceType {
    NINEDOF = 1;
    ROBOCLAW = 2;
    STARGAZER = 3;
    HOKUYO = 4;
    DUMMY = 5;
}

message DriverHdr {
    optional int32 deviceType = 1;
    optional int32 deviceID = 2;
    repeated int32 clientIDs = 3 [packed = true];
}

message DriverMsg {
    enum MsgType {
        DATA = 1;
        PING = 2;
        PONG = 3;
        CLIENT_DIED = 4;
        DRIVER_DIED = 5;
    }

    required MsgType type     = 2;
    optional uint32 synNum    = 3;
    optional uint32 ackNum    = 4;
    optional uint32 listenerNum = 5;
    extensions 8 to 63;
}

package amber;
option java_package = "pl.edu.agh.amber.common.proto";
option java_outer_classname = "CommonProto";

option optimize_for = SPEED;

enum DeviceType {
    NINEDOF = 1;
    ROBOCLAW = 2;
    STARGAZER = 3;
    HOKUYO = 4;
    DUMMY = 5;
}

message DriverHdr {
    optional int32 deviceType = 1;
    optional int32 deviceID = 2;
    repeated int32 clientIDs = 3 [packed = true];
}

message DriverMsg {
    enum MsgType {
        DATA = 1;
        PING = 2;
        PONG = 3;
        CLIENT_DIED = 4;
        DRIVER_DIED = 5;
        SUBSCRIBE = 6;
        UNSUBSCRIBE = 7;
    }

    required MsgType type     = 2;
    optional uint32 synNum    = 3;
    optional uint32 ackNum    = 4;
    optional uint32 listenerNum = 5;
    extensions 8 to 63;
}

Add subscribe and unsubscribe action to driver message protobuf file


syntax = "proto3";
package POGOProtos.Data;

import "POGOProtos/Enums/TutorialState.proto";
import "POGOProtos/Data/Player/PlayerAvatar.proto";
import "POGOProtos/Data/Player/DailyBonus.proto";
import "POGOProtos/Data/Player/EquippedBadge.proto";
import "POGOProtos/Data/Player/ContactSettings.proto";
import "POGOProtos/Data/Player/Currency.proto";

message PlayerData {
	int64 creation_timestamp_ms  = 1;
	string username = 2;
	int32 team = 5;
	repeated .POGOProtos.Enums.TutorialState tutorial_state = 7;
	.POGOProtos.Data.Player.PlayerAvatar avatar = 8;
	int32 max_pokemon_storage = 9;
	int32 max_item_storage = 10;
	.POGOProtos.Data.Player.DailyBonus daily_bonus = 11;
	.POGOProtos.Data.Player.EquippedBadge equipped_badge = 12;
	.POGOProtos.Data.Player.ContactSettings contact_settings = 13;
	repeated .POGOProtos.Data.Player.Currency currencies = 14;
}

syntax = "proto3";
package POGOProtos.Data;

import "POGOProtos/Enums/TutorialState.proto";
import "POGOProtos/Data/Player/PlayerAvatar.proto";
import "POGOProtos/Data/Player/DailyBonus.proto";
import "POGOProtos/Data/Player/EquippedBadge.proto";
import "POGOProtos/Data/Player/ContactSettings.proto";
import "POGOProtos/Data/Player/Currency.proto";

message PlayerData {
	int64 creation_timestamp_ms  = 1;
	string username = 2;
	int32 team = 5;
	repeated .POGOProtos.Enums.TutorialState tutorial_state = 7 [packed=true];
	.POGOProtos.Data.Player.PlayerAvatar avatar = 8;
	int32 max_pokemon_storage = 9;
	int32 max_item_storage = 10;
	.POGOProtos.Data.Player.DailyBonus daily_bonus = 11;
	.POGOProtos.Data.Player.EquippedBadge equipped_badge = 12;
	.POGOProtos.Data.Player.ContactSettings contact_settings = 13;
	repeated .POGOProtos.Data.Player.Currency currencies = 14;
}

Fix tutorial_state for protobufjs users.


package muduo;

message Query {
  required int64 id = 1;
  required string questioner = 2;

  repeated string question = 3;
}

message Answer {
  required int64 id = 1;
  required string questioner = 2;
  required string answerer = 3;

  repeated string solution = 4;
}

message Empty {
  optional int32 id = 1;
}

package muduo;

option java_outer_classname = "Proto";

message Query {
  required int64 id = 1;
  required string questioner = 2;

  repeated string question = 3;
}

message Answer {
  required int64 id = 1;
  required string questioner = 2;
  required string answerer = 3;

  repeated string solution = 4;
}

message Empty {
  optional int32 id = 1;
}

Set java class name for proto.

Set java class name for proto.


syntax = "proto2";

message Telemetry {
  optional int32 timestamp_ms = 1;
}

syntax = "proto2";

option java_outer_classname="TelemetryProto";

message Telemetry {
  optional int32 timestamp_ms = 1;
}

Add java output class name to .proto file


package org.wildfly.clustering.marshalling.protostream;

/**
 * @TypeId(0)
 */
message Any {
	oneof value {
		bool	boolean	= 1;
		sint32	byte	= 2;
		sint32	short	= 3;
		sint32	integer	= 4;
		sint64	long	= 5;
		float	float	= 6;
		double	double	= 7;
		uint32	char	= 8;
		bytes	string	= 9;
		bytes	boolean_array	= 10;
		bytes	byte_array	= 11;
		uint32	short_array	= 12;
		uint32	integer_array	= 13;
		uint32	long_array	= 14;
		uint32	float_array	= 15;
		uint32	double_array	= 16;
		uint32	char_array	= 17;
	}
}

package org.wildfly.clustering.marshalling.protostream;

/**
 * @TypeId(0)
 */
message Any {
	repeated	bytes	any	= 1;
	optional	uint32	reference	= 2;
	optional	bool	boolean	= 3;
	optional	sint32	byte	= 4;
	optional	sint32	short	= 5;
	optional	sint32	integer	= 6;
	optional	sint64	long	= 7;
	optional	float	float	= 8;
	optional	double	double	= 9;
	optional	uint32	char	= 10;
	optional	string	string	= 11;
	optional	uint32	idObject	= 12;
	optional	uint32	idEnum	= 13;
	optional	uint32	idArray	= 14;
	optional	uint32	fieldArray	= 15;
	optional	string	namedObject	= 16;
	optional	string	namedEnum	= 17;
	optional	string	namedArray	= 18;
	optional	bytes	booleanArray	= 19;
	optional	bytes	byteArray	= 20;
	repeated	sint32	shortArray	= 21	[packed=true];
	repeated	sint32	integerArray	= 22	[packed=true];
	repeated	sint64	longArray	= 23	[packed=true];
	repeated	float	floatArray	= 24	[packed=true];
	repeated	double	doubleArray	= 25	[packed=true];
	repeated	uint32	charArray	= 26	[packed=true];
	optional	bytes	anyArray	= 27;
	optional	bytes	proxy	= 28;
}

Fix protobuf schema for Any.

Fix protobuf schema for Any.


syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.compliance;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/compliance/types";

import "compliance/compliance_history_item.proto";
import "cosmos_proto/cosmos.proto";

message ComplianceInfo {
  int32 vid = 1;
  int32 pid = 2;
  uint32 softwareVersion = 3;
  string certificationType = 4;
  string softwareVersionString = 5;
  uint32 cDVersionNumber = 6;
  uint32 softwareVersionCertificationStatus = 7;
  string date = 8;
  string reason = 9;
  string owner = 10 [(cosmos_proto.scalar) = "cosmos.AddressString"];
  repeated ComplianceHistoryItem history = 11;
  string programTypeVersion = 12;
  string cDCertificationId = 13;
  string familyId = 14;
  string supportedClusters = 15;
  string compliantPlatformUsed = 16;
  string compliantPlatformVersion = 17;
  string OSVersion = 18;
  string certificationRoute = 19;
  string programType = 20;
  string transport = 21;
  string parentChild = 22;

}

syntax = "proto3";
package zigbeealliance.distributedcomplianceledger.compliance;

option go_package = "github.com/zigbee-alliance/distributed-compliance-ledger/x/compliance/types";

import "compliance/compliance_history_item.proto";
import "cosmos_proto/cosmos.proto";

message ComplianceInfo {
  int32 vid = 1;
  int32 pid = 2;
  uint32 softwareVersion = 3;
  string certificationType = 4;
  string softwareVersionString = 5;
  uint32 cDVersionNumber = 6;
  uint32 softwareVersionCertificationStatus = 7;
  string date = 8;
  string reason = 9;
  string owner = 10 [(cosmos_proto.scalar) = "cosmos.AddressString"];
  repeated ComplianceHistoryItem history = 11;
  string cDCertificationId = 12;
  string certificationRoute = 13;
  string programType = 14;
  string programTypeVersion = 15;
  string compliantPlatformUsed = 16;
  string compliantPlatformVersion = 17;
  string transport = 18;
  string familyId = 19;
  string supportedClusters = 20;
  string OSVersion = 21;
  string parentChild = 22;

}

Update sequence of the new flags

Update sequence of the new flags


syntax = "proto3";

package spine.test.tools.validate;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.test.tools.validate";
option java_outer_classname = "EntityProto";
option java_multiple_files = true;

message Project {
    option (entity).kind = ENTITY;

    string id = 1;
}

message Task {
    option (entity).kind = ENTITY;

    string id = 1 [(required) = false];
}

syntax = "proto3";

package spine.test.tools.validate;

import "spine/options.proto";

option (type_url_prefix) = "type.spine.io";
option java_package = "io.spine.test.tools.validate";
option java_outer_classname = "EntityProto";
option java_multiple_files = true;

// An entity type.
//
// By default, `id` is required.
//
message Project {
    option (entity).kind = ENTITY;

    string id = 1;
}

// An entity type with a non-required ID.
//
// The `id` field is explicitly non-required.
//
message Task {
    option (entity).kind = ENTITY;

    string id = 1 [(required) = false];
}

Add docs for test types

Add docs for test types


syntax = "proto2";

package map_test;

message MapAll {
  message InnerMsg {
    optional string strval = 1;
  }
  enum InnerEnum {
    ONE = 0;
    TWO = 1;
  }
  map<int32,int32> intmap = 1;
  map<int32,string> stringmap = 2;
  map<int32,InnerMsg> msgmap = 3;
  map<int32,InnerEnum> enummap = 4;
}

message MapProto {
  optional string strval = 1;
  map<int32,string> map_field = 2;
  optional int32 intval = 3;
}

message MapMessage {
  message ValMessage {
    optional string strval = 1;
  }
  map<int32,ValMessage> map_field = 1;
}

message MapEnum {
  enum MyEnum {
    ONE = 0;
    TWO = 1;
    THREE = 2;
  }
  optional int32 before = 1;
  map<string,MyEnum> map_field = 2;
  optional int32 after = 3;
}

message NestedMap {
  optional string intval = 1;
  repeated MapProto  subfield = 2;
}

syntax = "proto2";

package map_test;

message MapAll {
  message InnerMsg {
    optional string strval = 1;
  }
  enum InnerEnum {
    ONE = 0;
    TWO = 1;
  }
  map<int32,int32> intmap = 1;
  map<int32,string> stringmap = 2;
  map<int32,InnerMsg> msgmap = 3;
  map<int32,InnerEnum> enummap = 4;
}

message MapProto {
  optional string strval = 1;
  map<int32,string> map_field = 2;
  optional int32 intval = 3;
}

message MapMessage {
  message ValMessage {
    optional string strval = 1;
  }
  map<int32,ValMessage> map_field = 1;
}

message MapEnum {
  enum MyEnum {
    ONE = 0;
    TWO = 1;
    THREE = 2;
  }
  optional int32 before = 1;
  map<string,MyEnum> map_field = 2;
  optional int32 after = 3;
}

message NestedMap {
  optional string strval = 1;
  optional MapProto subfield = 2;
}

Update nested map testing proto

Update nested map testing proto

The name of the string field makes sense now. The message field
is now optional instead of repeated, as this is sufficient for
the test.


syntax = "proto3";

package oak;

message InitiateComputationRequest {}

message InitiateComputationResponse {}

service OakServer {
  rpc InitiateComputation(InitiateComputationRequest)
      returns (InitiateComputationResponse);
}

syntax = "proto3";

package oak;

message InitiateComputationRequest {
  bytes business_logic = 1;
  string expression = 2;
}

message InitiateComputationResponse {}

service OakServer {
  rpc InitiateComputation(InitiateComputationRequest)
      returns (InitiateComputationResponse);
}

Add input fields to proto

Add input fields to proto