syntax = "proto3";
option go_package = "examplepb";

// Generate Unannotated Methods Echo Service
// Similar to echo_service.proto but without annotations and without external configuration.
//
// Generate Unannotated Methods Echo Service API consists of a single service which returns
// a message.
package grpc.gateway.examples.internal.examplepb;

// Do not need annotations.proto, can still use well known types as usual
import "google/protobuf/duration.proto";

// GenerateUnboundMethodsSimpleMessage represents a simple message sent to the unannotated GenerateUnboundMethodsEchoService service.
message GenerateUnboundMethodsSimpleMessage {
	// Id represents the message identifier.
	string id = 1;
	int64 num = 2;
	google.protobuf.Duration duration = 3;
}

// GenerateUnboundMethodsEchoService service responds to incoming echo requests.
service GenerateUnboundMethodsEchoService {
	// Echo method receives a simple message and returns it.
	//
	// The message posted as the id parameter will also be
	// returned.
	rpc Echo(GenerateUnboundMethodsSimpleMessage) returns (GenerateUnboundMethodsSimpleMessage);

	// EchoBody method receives a simple message and returns it.
	rpc EchoBody(GenerateUnboundMethodsSimpleMessage) returns (GenerateUnboundMethodsSimpleMessage);
	
	// EchoDelete method receives a simple message and returns it.
	rpc EchoDelete(GenerateUnboundMethodsSimpleMessage) returns (GenerateUnboundMethodsSimpleMessage);
}
