• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2022 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.google.cloud.redis.v1beta1;
18 
19 import com.google.api.core.BetaApi;
20 import com.google.cloud.redis.v1beta1.CloudRedisGrpc.CloudRedisImplBase;
21 import com.google.longrunning.Operation;
22 import com.google.protobuf.AbstractMessage;
23 import io.grpc.stub.StreamObserver;
24 import java.util.ArrayList;
25 import java.util.LinkedList;
26 import java.util.List;
27 import java.util.Queue;
28 import javax.annotation.Generated;
29 
30 @BetaApi
31 @Generated("by gapic-generator-java")
32 public class MockCloudRedisImpl extends CloudRedisImplBase {
33   private List<AbstractMessage> requests;
34   private Queue<Object> responses;
35 
MockCloudRedisImpl()36   public MockCloudRedisImpl() {
37     requests = new ArrayList<>();
38     responses = new LinkedList<>();
39   }
40 
getRequests()41   public List<AbstractMessage> getRequests() {
42     return requests;
43   }
44 
addResponse(AbstractMessage response)45   public void addResponse(AbstractMessage response) {
46     responses.add(response);
47   }
48 
setResponses(List<AbstractMessage> responses)49   public void setResponses(List<AbstractMessage> responses) {
50     this.responses = new LinkedList<Object>(responses);
51   }
52 
addException(Exception exception)53   public void addException(Exception exception) {
54     responses.add(exception);
55   }
56 
reset()57   public void reset() {
58     requests = new ArrayList<>();
59     responses = new LinkedList<>();
60   }
61 
62   @Override
listInstances( ListInstancesRequest request, StreamObserver<ListInstancesResponse> responseObserver)63   public void listInstances(
64       ListInstancesRequest request, StreamObserver<ListInstancesResponse> responseObserver) {
65     Object response = responses.poll();
66     if (response instanceof ListInstancesResponse) {
67       requests.add(request);
68       responseObserver.onNext(((ListInstancesResponse) response));
69       responseObserver.onCompleted();
70     } else if (response instanceof Exception) {
71       responseObserver.onError(((Exception) response));
72     } else {
73       responseObserver.onError(
74           new IllegalArgumentException(
75               String.format(
76                   "Unrecognized response type %s for method ListInstances, expected %s or %s",
77                   response == null ? "null" : response.getClass().getName(),
78                   ListInstancesResponse.class.getName(),
79                   Exception.class.getName())));
80     }
81   }
82 
83   @Override
getInstance(GetInstanceRequest request, StreamObserver<Instance> responseObserver)84   public void getInstance(GetInstanceRequest request, StreamObserver<Instance> responseObserver) {
85     Object response = responses.poll();
86     if (response instanceof Instance) {
87       requests.add(request);
88       responseObserver.onNext(((Instance) response));
89       responseObserver.onCompleted();
90     } else if (response instanceof Exception) {
91       responseObserver.onError(((Exception) response));
92     } else {
93       responseObserver.onError(
94           new IllegalArgumentException(
95               String.format(
96                   "Unrecognized response type %s for method GetInstance, expected %s or %s",
97                   response == null ? "null" : response.getClass().getName(),
98                   Instance.class.getName(),
99                   Exception.class.getName())));
100     }
101   }
102 
103   @Override
getInstanceAuthString( GetInstanceAuthStringRequest request, StreamObserver<InstanceAuthString> responseObserver)104   public void getInstanceAuthString(
105       GetInstanceAuthStringRequest request, StreamObserver<InstanceAuthString> responseObserver) {
106     Object response = responses.poll();
107     if (response instanceof InstanceAuthString) {
108       requests.add(request);
109       responseObserver.onNext(((InstanceAuthString) response));
110       responseObserver.onCompleted();
111     } else if (response instanceof Exception) {
112       responseObserver.onError(((Exception) response));
113     } else {
114       responseObserver.onError(
115           new IllegalArgumentException(
116               String.format(
117                   "Unrecognized response type %s for method GetInstanceAuthString, expected %s or %s",
118                   response == null ? "null" : response.getClass().getName(),
119                   InstanceAuthString.class.getName(),
120                   Exception.class.getName())));
121     }
122   }
123 
124   @Override
createInstance( CreateInstanceRequest request, StreamObserver<Operation> responseObserver)125   public void createInstance(
126       CreateInstanceRequest request, StreamObserver<Operation> responseObserver) {
127     Object response = responses.poll();
128     if (response instanceof Operation) {
129       requests.add(request);
130       responseObserver.onNext(((Operation) response));
131       responseObserver.onCompleted();
132     } else if (response instanceof Exception) {
133       responseObserver.onError(((Exception) response));
134     } else {
135       responseObserver.onError(
136           new IllegalArgumentException(
137               String.format(
138                   "Unrecognized response type %s for method CreateInstance, expected %s or %s",
139                   response == null ? "null" : response.getClass().getName(),
140                   Operation.class.getName(),
141                   Exception.class.getName())));
142     }
143   }
144 
145   @Override
updateInstance( UpdateInstanceRequest request, StreamObserver<Operation> responseObserver)146   public void updateInstance(
147       UpdateInstanceRequest request, StreamObserver<Operation> responseObserver) {
148     Object response = responses.poll();
149     if (response instanceof Operation) {
150       requests.add(request);
151       responseObserver.onNext(((Operation) response));
152       responseObserver.onCompleted();
153     } else if (response instanceof Exception) {
154       responseObserver.onError(((Exception) response));
155     } else {
156       responseObserver.onError(
157           new IllegalArgumentException(
158               String.format(
159                   "Unrecognized response type %s for method UpdateInstance, expected %s or %s",
160                   response == null ? "null" : response.getClass().getName(),
161                   Operation.class.getName(),
162                   Exception.class.getName())));
163     }
164   }
165 
166   @Override
upgradeInstance( UpgradeInstanceRequest request, StreamObserver<Operation> responseObserver)167   public void upgradeInstance(
168       UpgradeInstanceRequest request, StreamObserver<Operation> responseObserver) {
169     Object response = responses.poll();
170     if (response instanceof Operation) {
171       requests.add(request);
172       responseObserver.onNext(((Operation) response));
173       responseObserver.onCompleted();
174     } else if (response instanceof Exception) {
175       responseObserver.onError(((Exception) response));
176     } else {
177       responseObserver.onError(
178           new IllegalArgumentException(
179               String.format(
180                   "Unrecognized response type %s for method UpgradeInstance, expected %s or %s",
181                   response == null ? "null" : response.getClass().getName(),
182                   Operation.class.getName(),
183                   Exception.class.getName())));
184     }
185   }
186 
187   @Override
importInstance( ImportInstanceRequest request, StreamObserver<Operation> responseObserver)188   public void importInstance(
189       ImportInstanceRequest request, StreamObserver<Operation> responseObserver) {
190     Object response = responses.poll();
191     if (response instanceof Operation) {
192       requests.add(request);
193       responseObserver.onNext(((Operation) response));
194       responseObserver.onCompleted();
195     } else if (response instanceof Exception) {
196       responseObserver.onError(((Exception) response));
197     } else {
198       responseObserver.onError(
199           new IllegalArgumentException(
200               String.format(
201                   "Unrecognized response type %s for method ImportInstance, expected %s or %s",
202                   response == null ? "null" : response.getClass().getName(),
203                   Operation.class.getName(),
204                   Exception.class.getName())));
205     }
206   }
207 
208   @Override
exportInstance( ExportInstanceRequest request, StreamObserver<Operation> responseObserver)209   public void exportInstance(
210       ExportInstanceRequest request, StreamObserver<Operation> responseObserver) {
211     Object response = responses.poll();
212     if (response instanceof Operation) {
213       requests.add(request);
214       responseObserver.onNext(((Operation) response));
215       responseObserver.onCompleted();
216     } else if (response instanceof Exception) {
217       responseObserver.onError(((Exception) response));
218     } else {
219       responseObserver.onError(
220           new IllegalArgumentException(
221               String.format(
222                   "Unrecognized response type %s for method ExportInstance, expected %s or %s",
223                   response == null ? "null" : response.getClass().getName(),
224                   Operation.class.getName(),
225                   Exception.class.getName())));
226     }
227   }
228 
229   @Override
failoverInstance( FailoverInstanceRequest request, StreamObserver<Operation> responseObserver)230   public void failoverInstance(
231       FailoverInstanceRequest request, StreamObserver<Operation> responseObserver) {
232     Object response = responses.poll();
233     if (response instanceof Operation) {
234       requests.add(request);
235       responseObserver.onNext(((Operation) response));
236       responseObserver.onCompleted();
237     } else if (response instanceof Exception) {
238       responseObserver.onError(((Exception) response));
239     } else {
240       responseObserver.onError(
241           new IllegalArgumentException(
242               String.format(
243                   "Unrecognized response type %s for method FailoverInstance, expected %s or %s",
244                   response == null ? "null" : response.getClass().getName(),
245                   Operation.class.getName(),
246                   Exception.class.getName())));
247     }
248   }
249 
250   @Override
deleteInstance( DeleteInstanceRequest request, StreamObserver<Operation> responseObserver)251   public void deleteInstance(
252       DeleteInstanceRequest request, StreamObserver<Operation> responseObserver) {
253     Object response = responses.poll();
254     if (response instanceof Operation) {
255       requests.add(request);
256       responseObserver.onNext(((Operation) response));
257       responseObserver.onCompleted();
258     } else if (response instanceof Exception) {
259       responseObserver.onError(((Exception) response));
260     } else {
261       responseObserver.onError(
262           new IllegalArgumentException(
263               String.format(
264                   "Unrecognized response type %s for method DeleteInstance, expected %s or %s",
265                   response == null ? "null" : response.getClass().getName(),
266                   Operation.class.getName(),
267                   Exception.class.getName())));
268     }
269   }
270 
271   @Override
rescheduleMaintenance( RescheduleMaintenanceRequest request, StreamObserver<Operation> responseObserver)272   public void rescheduleMaintenance(
273       RescheduleMaintenanceRequest request, StreamObserver<Operation> responseObserver) {
274     Object response = responses.poll();
275     if (response instanceof Operation) {
276       requests.add(request);
277       responseObserver.onNext(((Operation) response));
278       responseObserver.onCompleted();
279     } else if (response instanceof Exception) {
280       responseObserver.onError(((Exception) response));
281     } else {
282       responseObserver.onError(
283           new IllegalArgumentException(
284               String.format(
285                   "Unrecognized response type %s for method RescheduleMaintenance, expected %s or %s",
286                   response == null ? "null" : response.getClass().getName(),
287                   Operation.class.getName(),
288                   Exception.class.getName())));
289     }
290   }
291 }
292