1<?php
2// GENERATED CODE -- DO NOT EDIT!
3
4// Original file comments:
5// Copyright 2015 gRPC authors.
6//
7// Licensed under the Apache License, Version 2.0 (the "License");
8// you may not use this file except in compliance with the License.
9// You may obtain a copy of the License at
10//
11//     http://www.apache.org/licenses/LICENSE-2.0
12//
13// Unless required by applicable law or agreed to in writing, software
14// distributed under the License is distributed on an "AS IS" BASIS,
15// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16// See the License for the specific language governing permissions and
17// limitations under the License.
18//
19namespace Grpc\Testing;
20
21/**
22 */
23class EchoTestServiceClient extends \Grpc\BaseStub {
24
25    /**
26     * @param string $hostname hostname
27     * @param array $opts channel options
28     * @param \Grpc\Channel $channel (optional) re-use channel object
29     */
30    public function __construct($hostname, $opts, $channel = null) {
31        parent::__construct($hostname, $opts, $channel);
32    }
33
34    /**
35     * @param \Grpc\Testing\EchoRequest $argument input argument
36     * @param array $metadata metadata
37     * @param array $options call options
38     */
39    public function Echo(\Grpc\Testing\EchoRequest $argument,
40      $metadata = [], $options = []) {
41        return $this->_simpleRequest('/grpc.testing.EchoTestService/Echo',
42        $argument,
43        ['\Grpc\Testing\EchoResponse', 'decode'],
44        $metadata, $options);
45    }
46
47    /**
48     * @param array $metadata metadata
49     * @param array $options call options
50     */
51    public function RequestStream($metadata = [], $options = []) {
52        return $this->_clientStreamRequest('/grpc.testing.EchoTestService/RequestStream',
53        ['\Grpc\Testing\EchoResponse','decode'],
54        $metadata, $options);
55    }
56
57    /**
58     * @param \Grpc\Testing\EchoRequest $argument input argument
59     * @param array $metadata metadata
60     * @param array $options call options
61     */
62    public function ResponseStream(\Grpc\Testing\EchoRequest $argument,
63      $metadata = [], $options = []) {
64        return $this->_serverStreamRequest('/grpc.testing.EchoTestService/ResponseStream',
65        $argument,
66        ['\Grpc\Testing\EchoResponse', 'decode'],
67        $metadata, $options);
68    }
69
70    /**
71     * @param array $metadata metadata
72     * @param array $options call options
73     */
74    public function BidiStream($metadata = [], $options = []) {
75        return $this->_bidiRequest('/grpc.testing.EchoTestService/BidiStream',
76        ['\Grpc\Testing\EchoResponse','decode'],
77        $metadata, $options);
78    }
79
80    /**
81     * @param \Grpc\Testing\EchoRequest $argument input argument
82     * @param array $metadata metadata
83     * @param array $options call options
84     */
85    public function Unimplemented(\Grpc\Testing\EchoRequest $argument,
86      $metadata = [], $options = []) {
87        return $this->_simpleRequest('/grpc.testing.EchoTestService/Unimplemented',
88        $argument,
89        ['\Grpc\Testing\EchoResponse', 'decode'],
90        $metadata, $options);
91    }
92
93}
94