1// Copyright 2015 gRPC authors. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// An integration test service that covers all the method signature permutations 16// of unary/streaming requests/responses. 17syntax = "proto3"; 18 19import "src/proto/grpc/testing/control.proto"; 20 21package grpc.testing; 22 23service WorkerService { 24 // Start server with specified workload. 25 // First request sent specifies the ServerConfig followed by ServerStatus 26 // response. After that, a "Mark" can be sent anytime to request the latest 27 // stats. Closing the stream will initiate shutdown of the test server 28 // and once the shutdown has finished, the OK status is sent to terminate 29 // this RPC. 30 rpc RunServer(stream ServerArgs) returns (stream ServerStatus); 31 32 // Start client with specified workload. 33 // First request sent specifies the ClientConfig followed by ClientStatus 34 // response. After that, a "Mark" can be sent anytime to request the latest 35 // stats. Closing the stream will initiate shutdown of the test client 36 // and once the shutdown has finished, the OK status is sent to terminate 37 // this RPC. 38 rpc RunClient(stream ClientArgs) returns (stream ClientStatus); 39 40 // Just return the core count - unary call 41 rpc CoreCount(CoreRequest) returns (CoreResponse); 42 43 // Quit this worker 44 rpc QuitWorker(Void) returns (Void); 45} 46