• 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.area120.tables.v1alpha;
18 
19 import com.google.api.core.BetaApi;
20 import com.google.area120.tables.v1alpha1.BatchCreateRowsRequest;
21 import com.google.area120.tables.v1alpha1.BatchCreateRowsResponse;
22 import com.google.area120.tables.v1alpha1.BatchDeleteRowsRequest;
23 import com.google.area120.tables.v1alpha1.BatchUpdateRowsRequest;
24 import com.google.area120.tables.v1alpha1.BatchUpdateRowsResponse;
25 import com.google.area120.tables.v1alpha1.CreateRowRequest;
26 import com.google.area120.tables.v1alpha1.DeleteRowRequest;
27 import com.google.area120.tables.v1alpha1.GetRowRequest;
28 import com.google.area120.tables.v1alpha1.GetTableRequest;
29 import com.google.area120.tables.v1alpha1.GetWorkspaceRequest;
30 import com.google.area120.tables.v1alpha1.ListRowsRequest;
31 import com.google.area120.tables.v1alpha1.ListRowsResponse;
32 import com.google.area120.tables.v1alpha1.ListTablesRequest;
33 import com.google.area120.tables.v1alpha1.ListTablesResponse;
34 import com.google.area120.tables.v1alpha1.ListWorkspacesRequest;
35 import com.google.area120.tables.v1alpha1.ListWorkspacesResponse;
36 import com.google.area120.tables.v1alpha1.Row;
37 import com.google.area120.tables.v1alpha1.Table;
38 import com.google.area120.tables.v1alpha1.TablesServiceGrpc.TablesServiceImplBase;
39 import com.google.area120.tables.v1alpha1.UpdateRowRequest;
40 import com.google.area120.tables.v1alpha1.Workspace;
41 import com.google.protobuf.AbstractMessage;
42 import com.google.protobuf.Empty;
43 import io.grpc.stub.StreamObserver;
44 import java.util.ArrayList;
45 import java.util.LinkedList;
46 import java.util.List;
47 import java.util.Queue;
48 import javax.annotation.Generated;
49 
50 @BetaApi
51 @Generated("by gapic-generator-java")
52 public class MockTablesServiceImpl extends TablesServiceImplBase {
53   private List<AbstractMessage> requests;
54   private Queue<Object> responses;
55 
MockTablesServiceImpl()56   public MockTablesServiceImpl() {
57     requests = new ArrayList<>();
58     responses = new LinkedList<>();
59   }
60 
getRequests()61   public List<AbstractMessage> getRequests() {
62     return requests;
63   }
64 
addResponse(AbstractMessage response)65   public void addResponse(AbstractMessage response) {
66     responses.add(response);
67   }
68 
setResponses(List<AbstractMessage> responses)69   public void setResponses(List<AbstractMessage> responses) {
70     this.responses = new LinkedList<Object>(responses);
71   }
72 
addException(Exception exception)73   public void addException(Exception exception) {
74     responses.add(exception);
75   }
76 
reset()77   public void reset() {
78     requests = new ArrayList<>();
79     responses = new LinkedList<>();
80   }
81 
82   @Override
getTable(GetTableRequest request, StreamObserver<Table> responseObserver)83   public void getTable(GetTableRequest request, StreamObserver<Table> responseObserver) {
84     Object response = responses.poll();
85     if (response instanceof Table) {
86       requests.add(request);
87       responseObserver.onNext(((Table) response));
88       responseObserver.onCompleted();
89     } else if (response instanceof Exception) {
90       responseObserver.onError(((Exception) response));
91     } else {
92       responseObserver.onError(
93           new IllegalArgumentException(
94               String.format(
95                   "Unrecognized response type %s for method GetTable, expected %s or %s",
96                   response == null ? "null" : response.getClass().getName(),
97                   Table.class.getName(),
98                   Exception.class.getName())));
99     }
100   }
101 
102   @Override
listTables( ListTablesRequest request, StreamObserver<ListTablesResponse> responseObserver)103   public void listTables(
104       ListTablesRequest request, StreamObserver<ListTablesResponse> responseObserver) {
105     Object response = responses.poll();
106     if (response instanceof ListTablesResponse) {
107       requests.add(request);
108       responseObserver.onNext(((ListTablesResponse) response));
109       responseObserver.onCompleted();
110     } else if (response instanceof Exception) {
111       responseObserver.onError(((Exception) response));
112     } else {
113       responseObserver.onError(
114           new IllegalArgumentException(
115               String.format(
116                   "Unrecognized response type %s for method ListTables, expected %s or %s",
117                   response == null ? "null" : response.getClass().getName(),
118                   ListTablesResponse.class.getName(),
119                   Exception.class.getName())));
120     }
121   }
122 
123   @Override
getWorkspace( GetWorkspaceRequest request, StreamObserver<Workspace> responseObserver)124   public void getWorkspace(
125       GetWorkspaceRequest request, StreamObserver<Workspace> responseObserver) {
126     Object response = responses.poll();
127     if (response instanceof Workspace) {
128       requests.add(request);
129       responseObserver.onNext(((Workspace) response));
130       responseObserver.onCompleted();
131     } else if (response instanceof Exception) {
132       responseObserver.onError(((Exception) response));
133     } else {
134       responseObserver.onError(
135           new IllegalArgumentException(
136               String.format(
137                   "Unrecognized response type %s for method GetWorkspace, expected %s or %s",
138                   response == null ? "null" : response.getClass().getName(),
139                   Workspace.class.getName(),
140                   Exception.class.getName())));
141     }
142   }
143 
144   @Override
listWorkspaces( ListWorkspacesRequest request, StreamObserver<ListWorkspacesResponse> responseObserver)145   public void listWorkspaces(
146       ListWorkspacesRequest request, StreamObserver<ListWorkspacesResponse> responseObserver) {
147     Object response = responses.poll();
148     if (response instanceof ListWorkspacesResponse) {
149       requests.add(request);
150       responseObserver.onNext(((ListWorkspacesResponse) response));
151       responseObserver.onCompleted();
152     } else if (response instanceof Exception) {
153       responseObserver.onError(((Exception) response));
154     } else {
155       responseObserver.onError(
156           new IllegalArgumentException(
157               String.format(
158                   "Unrecognized response type %s for method ListWorkspaces, expected %s or %s",
159                   response == null ? "null" : response.getClass().getName(),
160                   ListWorkspacesResponse.class.getName(),
161                   Exception.class.getName())));
162     }
163   }
164 
165   @Override
getRow(GetRowRequest request, StreamObserver<Row> responseObserver)166   public void getRow(GetRowRequest request, StreamObserver<Row> responseObserver) {
167     Object response = responses.poll();
168     if (response instanceof Row) {
169       requests.add(request);
170       responseObserver.onNext(((Row) response));
171       responseObserver.onCompleted();
172     } else if (response instanceof Exception) {
173       responseObserver.onError(((Exception) response));
174     } else {
175       responseObserver.onError(
176           new IllegalArgumentException(
177               String.format(
178                   "Unrecognized response type %s for method GetRow, expected %s or %s",
179                   response == null ? "null" : response.getClass().getName(),
180                   Row.class.getName(),
181                   Exception.class.getName())));
182     }
183   }
184 
185   @Override
listRows(ListRowsRequest request, StreamObserver<ListRowsResponse> responseObserver)186   public void listRows(ListRowsRequest request, StreamObserver<ListRowsResponse> responseObserver) {
187     Object response = responses.poll();
188     if (response instanceof ListRowsResponse) {
189       requests.add(request);
190       responseObserver.onNext(((ListRowsResponse) response));
191       responseObserver.onCompleted();
192     } else if (response instanceof Exception) {
193       responseObserver.onError(((Exception) response));
194     } else {
195       responseObserver.onError(
196           new IllegalArgumentException(
197               String.format(
198                   "Unrecognized response type %s for method ListRows, expected %s or %s",
199                   response == null ? "null" : response.getClass().getName(),
200                   ListRowsResponse.class.getName(),
201                   Exception.class.getName())));
202     }
203   }
204 
205   @Override
createRow(CreateRowRequest request, StreamObserver<Row> responseObserver)206   public void createRow(CreateRowRequest request, StreamObserver<Row> responseObserver) {
207     Object response = responses.poll();
208     if (response instanceof Row) {
209       requests.add(request);
210       responseObserver.onNext(((Row) response));
211       responseObserver.onCompleted();
212     } else if (response instanceof Exception) {
213       responseObserver.onError(((Exception) response));
214     } else {
215       responseObserver.onError(
216           new IllegalArgumentException(
217               String.format(
218                   "Unrecognized response type %s for method CreateRow, expected %s or %s",
219                   response == null ? "null" : response.getClass().getName(),
220                   Row.class.getName(),
221                   Exception.class.getName())));
222     }
223   }
224 
225   @Override
batchCreateRows( BatchCreateRowsRequest request, StreamObserver<BatchCreateRowsResponse> responseObserver)226   public void batchCreateRows(
227       BatchCreateRowsRequest request, StreamObserver<BatchCreateRowsResponse> responseObserver) {
228     Object response = responses.poll();
229     if (response instanceof BatchCreateRowsResponse) {
230       requests.add(request);
231       responseObserver.onNext(((BatchCreateRowsResponse) response));
232       responseObserver.onCompleted();
233     } else if (response instanceof Exception) {
234       responseObserver.onError(((Exception) response));
235     } else {
236       responseObserver.onError(
237           new IllegalArgumentException(
238               String.format(
239                   "Unrecognized response type %s for method BatchCreateRows, expected %s or %s",
240                   response == null ? "null" : response.getClass().getName(),
241                   BatchCreateRowsResponse.class.getName(),
242                   Exception.class.getName())));
243     }
244   }
245 
246   @Override
updateRow(UpdateRowRequest request, StreamObserver<Row> responseObserver)247   public void updateRow(UpdateRowRequest request, StreamObserver<Row> responseObserver) {
248     Object response = responses.poll();
249     if (response instanceof Row) {
250       requests.add(request);
251       responseObserver.onNext(((Row) response));
252       responseObserver.onCompleted();
253     } else if (response instanceof Exception) {
254       responseObserver.onError(((Exception) response));
255     } else {
256       responseObserver.onError(
257           new IllegalArgumentException(
258               String.format(
259                   "Unrecognized response type %s for method UpdateRow, expected %s or %s",
260                   response == null ? "null" : response.getClass().getName(),
261                   Row.class.getName(),
262                   Exception.class.getName())));
263     }
264   }
265 
266   @Override
batchUpdateRows( BatchUpdateRowsRequest request, StreamObserver<BatchUpdateRowsResponse> responseObserver)267   public void batchUpdateRows(
268       BatchUpdateRowsRequest request, StreamObserver<BatchUpdateRowsResponse> responseObserver) {
269     Object response = responses.poll();
270     if (response instanceof BatchUpdateRowsResponse) {
271       requests.add(request);
272       responseObserver.onNext(((BatchUpdateRowsResponse) response));
273       responseObserver.onCompleted();
274     } else if (response instanceof Exception) {
275       responseObserver.onError(((Exception) response));
276     } else {
277       responseObserver.onError(
278           new IllegalArgumentException(
279               String.format(
280                   "Unrecognized response type %s for method BatchUpdateRows, expected %s or %s",
281                   response == null ? "null" : response.getClass().getName(),
282                   BatchUpdateRowsResponse.class.getName(),
283                   Exception.class.getName())));
284     }
285   }
286 
287   @Override
deleteRow(DeleteRowRequest request, StreamObserver<Empty> responseObserver)288   public void deleteRow(DeleteRowRequest request, StreamObserver<Empty> responseObserver) {
289     Object response = responses.poll();
290     if (response instanceof Empty) {
291       requests.add(request);
292       responseObserver.onNext(((Empty) response));
293       responseObserver.onCompleted();
294     } else if (response instanceof Exception) {
295       responseObserver.onError(((Exception) response));
296     } else {
297       responseObserver.onError(
298           new IllegalArgumentException(
299               String.format(
300                   "Unrecognized response type %s for method DeleteRow, expected %s or %s",
301                   response == null ? "null" : response.getClass().getName(),
302                   Empty.class.getName(),
303                   Exception.class.getName())));
304     }
305   }
306 
307   @Override
batchDeleteRows( BatchDeleteRowsRequest request, StreamObserver<Empty> responseObserver)308   public void batchDeleteRows(
309       BatchDeleteRowsRequest request, StreamObserver<Empty> responseObserver) {
310     Object response = responses.poll();
311     if (response instanceof Empty) {
312       requests.add(request);
313       responseObserver.onNext(((Empty) response));
314       responseObserver.onCompleted();
315     } else if (response instanceof Exception) {
316       responseObserver.onError(((Exception) response));
317     } else {
318       responseObserver.onError(
319           new IllegalArgumentException(
320               String.format(
321                   "Unrecognized response type %s for method BatchDeleteRows, expected %s or %s",
322                   response == null ? "null" : response.getClass().getName(),
323                   Empty.class.getName(),
324                   Exception.class.getName())));
325     }
326   }
327 }
328