syntax = "proto3";

package testdata;

import "lint.proto";
import "shared.proto";

message Request {
  gitaly.Repository destination = 1 [(gitaly.target_repository)=true];
}

message Response{}

service InterceptedService {
  option (gitaly.intercepted) = true;

  rpc IgnoredMethod(Request) returns (Response);
}

service TestService {
  rpc ClientStreamRepoMutator(Request) returns (stream Response) {
    option (gitaly.op_type) = {
      op: MUTATOR
    };
  }
  
  rpc ClientStreamRepoAccessor(Request) returns (stream Response) {
    option (gitaly.op_type) = {
      op: ACCESSOR
    };
  }
  
  rpc ClientUnaryRepoMutator(Request) returns (Response) {
    option (gitaly.op_type) = {
      op: MUTATOR
    };
  }
  
  rpc ClientUnaryRepoAccessor(Request) returns (Response) {
    option (gitaly.op_type) = {
      op: ACCESSOR
    };
  }
}
