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.iot.v1; 18 19 import com.google.api.core.BetaApi; 20 import com.google.cloud.iot.v1.DeviceManagerGrpc.DeviceManagerImplBase; 21 import com.google.iam.v1.GetIamPolicyRequest; 22 import com.google.iam.v1.Policy; 23 import com.google.iam.v1.SetIamPolicyRequest; 24 import com.google.iam.v1.TestIamPermissionsRequest; 25 import com.google.iam.v1.TestIamPermissionsResponse; 26 import com.google.protobuf.AbstractMessage; 27 import com.google.protobuf.Empty; 28 import io.grpc.stub.StreamObserver; 29 import java.util.ArrayList; 30 import java.util.LinkedList; 31 import java.util.List; 32 import java.util.Queue; 33 import javax.annotation.Generated; 34 35 @BetaApi 36 @Generated("by gapic-generator-java") 37 public class MockDeviceManagerImpl extends DeviceManagerImplBase { 38 private List<AbstractMessage> requests; 39 private Queue<Object> responses; 40 MockDeviceManagerImpl()41 public MockDeviceManagerImpl() { 42 requests = new ArrayList<>(); 43 responses = new LinkedList<>(); 44 } 45 getRequests()46 public List<AbstractMessage> getRequests() { 47 return requests; 48 } 49 addResponse(AbstractMessage response)50 public void addResponse(AbstractMessage response) { 51 responses.add(response); 52 } 53 setResponses(List<AbstractMessage> responses)54 public void setResponses(List<AbstractMessage> responses) { 55 this.responses = new LinkedList<Object>(responses); 56 } 57 addException(Exception exception)58 public void addException(Exception exception) { 59 responses.add(exception); 60 } 61 reset()62 public void reset() { 63 requests = new ArrayList<>(); 64 responses = new LinkedList<>(); 65 } 66 67 @Override createDeviceRegistry( CreateDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver)68 public void createDeviceRegistry( 69 CreateDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver) { 70 Object response = responses.poll(); 71 if (response instanceof DeviceRegistry) { 72 requests.add(request); 73 responseObserver.onNext(((DeviceRegistry) response)); 74 responseObserver.onCompleted(); 75 } else if (response instanceof Exception) { 76 responseObserver.onError(((Exception) response)); 77 } else { 78 responseObserver.onError( 79 new IllegalArgumentException( 80 String.format( 81 "Unrecognized response type %s for method CreateDeviceRegistry, expected %s or %s", 82 response == null ? "null" : response.getClass().getName(), 83 DeviceRegistry.class.getName(), 84 Exception.class.getName()))); 85 } 86 } 87 88 @Override getDeviceRegistry( GetDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver)89 public void getDeviceRegistry( 90 GetDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver) { 91 Object response = responses.poll(); 92 if (response instanceof DeviceRegistry) { 93 requests.add(request); 94 responseObserver.onNext(((DeviceRegistry) response)); 95 responseObserver.onCompleted(); 96 } else if (response instanceof Exception) { 97 responseObserver.onError(((Exception) response)); 98 } else { 99 responseObserver.onError( 100 new IllegalArgumentException( 101 String.format( 102 "Unrecognized response type %s for method GetDeviceRegistry, expected %s or %s", 103 response == null ? "null" : response.getClass().getName(), 104 DeviceRegistry.class.getName(), 105 Exception.class.getName()))); 106 } 107 } 108 109 @Override updateDeviceRegistry( UpdateDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver)110 public void updateDeviceRegistry( 111 UpdateDeviceRegistryRequest request, StreamObserver<DeviceRegistry> responseObserver) { 112 Object response = responses.poll(); 113 if (response instanceof DeviceRegistry) { 114 requests.add(request); 115 responseObserver.onNext(((DeviceRegistry) response)); 116 responseObserver.onCompleted(); 117 } else if (response instanceof Exception) { 118 responseObserver.onError(((Exception) response)); 119 } else { 120 responseObserver.onError( 121 new IllegalArgumentException( 122 String.format( 123 "Unrecognized response type %s for method UpdateDeviceRegistry, expected %s or %s", 124 response == null ? "null" : response.getClass().getName(), 125 DeviceRegistry.class.getName(), 126 Exception.class.getName()))); 127 } 128 } 129 130 @Override deleteDeviceRegistry( DeleteDeviceRegistryRequest request, StreamObserver<Empty> responseObserver)131 public void deleteDeviceRegistry( 132 DeleteDeviceRegistryRequest request, StreamObserver<Empty> responseObserver) { 133 Object response = responses.poll(); 134 if (response instanceof Empty) { 135 requests.add(request); 136 responseObserver.onNext(((Empty) response)); 137 responseObserver.onCompleted(); 138 } else if (response instanceof Exception) { 139 responseObserver.onError(((Exception) response)); 140 } else { 141 responseObserver.onError( 142 new IllegalArgumentException( 143 String.format( 144 "Unrecognized response type %s for method DeleteDeviceRegistry, expected %s or %s", 145 response == null ? "null" : response.getClass().getName(), 146 Empty.class.getName(), 147 Exception.class.getName()))); 148 } 149 } 150 151 @Override listDeviceRegistries( ListDeviceRegistriesRequest request, StreamObserver<ListDeviceRegistriesResponse> responseObserver)152 public void listDeviceRegistries( 153 ListDeviceRegistriesRequest request, 154 StreamObserver<ListDeviceRegistriesResponse> responseObserver) { 155 Object response = responses.poll(); 156 if (response instanceof ListDeviceRegistriesResponse) { 157 requests.add(request); 158 responseObserver.onNext(((ListDeviceRegistriesResponse) response)); 159 responseObserver.onCompleted(); 160 } else if (response instanceof Exception) { 161 responseObserver.onError(((Exception) response)); 162 } else { 163 responseObserver.onError( 164 new IllegalArgumentException( 165 String.format( 166 "Unrecognized response type %s for method ListDeviceRegistries, expected %s or %s", 167 response == null ? "null" : response.getClass().getName(), 168 ListDeviceRegistriesResponse.class.getName(), 169 Exception.class.getName()))); 170 } 171 } 172 173 @Override createDevice(CreateDeviceRequest request, StreamObserver<Device> responseObserver)174 public void createDevice(CreateDeviceRequest request, StreamObserver<Device> responseObserver) { 175 Object response = responses.poll(); 176 if (response instanceof Device) { 177 requests.add(request); 178 responseObserver.onNext(((Device) response)); 179 responseObserver.onCompleted(); 180 } else if (response instanceof Exception) { 181 responseObserver.onError(((Exception) response)); 182 } else { 183 responseObserver.onError( 184 new IllegalArgumentException( 185 String.format( 186 "Unrecognized response type %s for method CreateDevice, expected %s or %s", 187 response == null ? "null" : response.getClass().getName(), 188 Device.class.getName(), 189 Exception.class.getName()))); 190 } 191 } 192 193 @Override getDevice(GetDeviceRequest request, StreamObserver<Device> responseObserver)194 public void getDevice(GetDeviceRequest request, StreamObserver<Device> responseObserver) { 195 Object response = responses.poll(); 196 if (response instanceof Device) { 197 requests.add(request); 198 responseObserver.onNext(((Device) response)); 199 responseObserver.onCompleted(); 200 } else if (response instanceof Exception) { 201 responseObserver.onError(((Exception) response)); 202 } else { 203 responseObserver.onError( 204 new IllegalArgumentException( 205 String.format( 206 "Unrecognized response type %s for method GetDevice, expected %s or %s", 207 response == null ? "null" : response.getClass().getName(), 208 Device.class.getName(), 209 Exception.class.getName()))); 210 } 211 } 212 213 @Override updateDevice(UpdateDeviceRequest request, StreamObserver<Device> responseObserver)214 public void updateDevice(UpdateDeviceRequest request, StreamObserver<Device> responseObserver) { 215 Object response = responses.poll(); 216 if (response instanceof Device) { 217 requests.add(request); 218 responseObserver.onNext(((Device) response)); 219 responseObserver.onCompleted(); 220 } else if (response instanceof Exception) { 221 responseObserver.onError(((Exception) response)); 222 } else { 223 responseObserver.onError( 224 new IllegalArgumentException( 225 String.format( 226 "Unrecognized response type %s for method UpdateDevice, expected %s or %s", 227 response == null ? "null" : response.getClass().getName(), 228 Device.class.getName(), 229 Exception.class.getName()))); 230 } 231 } 232 233 @Override deleteDevice(DeleteDeviceRequest request, StreamObserver<Empty> responseObserver)234 public void deleteDevice(DeleteDeviceRequest request, StreamObserver<Empty> responseObserver) { 235 Object response = responses.poll(); 236 if (response instanceof Empty) { 237 requests.add(request); 238 responseObserver.onNext(((Empty) response)); 239 responseObserver.onCompleted(); 240 } else if (response instanceof Exception) { 241 responseObserver.onError(((Exception) response)); 242 } else { 243 responseObserver.onError( 244 new IllegalArgumentException( 245 String.format( 246 "Unrecognized response type %s for method DeleteDevice, expected %s or %s", 247 response == null ? "null" : response.getClass().getName(), 248 Empty.class.getName(), 249 Exception.class.getName()))); 250 } 251 } 252 253 @Override listDevices( ListDevicesRequest request, StreamObserver<ListDevicesResponse> responseObserver)254 public void listDevices( 255 ListDevicesRequest request, StreamObserver<ListDevicesResponse> responseObserver) { 256 Object response = responses.poll(); 257 if (response instanceof ListDevicesResponse) { 258 requests.add(request); 259 responseObserver.onNext(((ListDevicesResponse) response)); 260 responseObserver.onCompleted(); 261 } else if (response instanceof Exception) { 262 responseObserver.onError(((Exception) response)); 263 } else { 264 responseObserver.onError( 265 new IllegalArgumentException( 266 String.format( 267 "Unrecognized response type %s for method ListDevices, expected %s or %s", 268 response == null ? "null" : response.getClass().getName(), 269 ListDevicesResponse.class.getName(), 270 Exception.class.getName()))); 271 } 272 } 273 274 @Override modifyCloudToDeviceConfig( ModifyCloudToDeviceConfigRequest request, StreamObserver<DeviceConfig> responseObserver)275 public void modifyCloudToDeviceConfig( 276 ModifyCloudToDeviceConfigRequest request, StreamObserver<DeviceConfig> responseObserver) { 277 Object response = responses.poll(); 278 if (response instanceof DeviceConfig) { 279 requests.add(request); 280 responseObserver.onNext(((DeviceConfig) response)); 281 responseObserver.onCompleted(); 282 } else if (response instanceof Exception) { 283 responseObserver.onError(((Exception) response)); 284 } else { 285 responseObserver.onError( 286 new IllegalArgumentException( 287 String.format( 288 "Unrecognized response type %s for method ModifyCloudToDeviceConfig, expected %s or %s", 289 response == null ? "null" : response.getClass().getName(), 290 DeviceConfig.class.getName(), 291 Exception.class.getName()))); 292 } 293 } 294 295 @Override listDeviceConfigVersions( ListDeviceConfigVersionsRequest request, StreamObserver<ListDeviceConfigVersionsResponse> responseObserver)296 public void listDeviceConfigVersions( 297 ListDeviceConfigVersionsRequest request, 298 StreamObserver<ListDeviceConfigVersionsResponse> responseObserver) { 299 Object response = responses.poll(); 300 if (response instanceof ListDeviceConfigVersionsResponse) { 301 requests.add(request); 302 responseObserver.onNext(((ListDeviceConfigVersionsResponse) response)); 303 responseObserver.onCompleted(); 304 } else if (response instanceof Exception) { 305 responseObserver.onError(((Exception) response)); 306 } else { 307 responseObserver.onError( 308 new IllegalArgumentException( 309 String.format( 310 "Unrecognized response type %s for method ListDeviceConfigVersions, expected %s or %s", 311 response == null ? "null" : response.getClass().getName(), 312 ListDeviceConfigVersionsResponse.class.getName(), 313 Exception.class.getName()))); 314 } 315 } 316 317 @Override listDeviceStates( ListDeviceStatesRequest request, StreamObserver<ListDeviceStatesResponse> responseObserver)318 public void listDeviceStates( 319 ListDeviceStatesRequest request, StreamObserver<ListDeviceStatesResponse> responseObserver) { 320 Object response = responses.poll(); 321 if (response instanceof ListDeviceStatesResponse) { 322 requests.add(request); 323 responseObserver.onNext(((ListDeviceStatesResponse) response)); 324 responseObserver.onCompleted(); 325 } else if (response instanceof Exception) { 326 responseObserver.onError(((Exception) response)); 327 } else { 328 responseObserver.onError( 329 new IllegalArgumentException( 330 String.format( 331 "Unrecognized response type %s for method ListDeviceStates, expected %s or %s", 332 response == null ? "null" : response.getClass().getName(), 333 ListDeviceStatesResponse.class.getName(), 334 Exception.class.getName()))); 335 } 336 } 337 338 @Override setIamPolicy(SetIamPolicyRequest request, StreamObserver<Policy> responseObserver)339 public void setIamPolicy(SetIamPolicyRequest request, StreamObserver<Policy> responseObserver) { 340 Object response = responses.poll(); 341 if (response instanceof Policy) { 342 requests.add(request); 343 responseObserver.onNext(((Policy) response)); 344 responseObserver.onCompleted(); 345 } else if (response instanceof Exception) { 346 responseObserver.onError(((Exception) response)); 347 } else { 348 responseObserver.onError( 349 new IllegalArgumentException( 350 String.format( 351 "Unrecognized response type %s for method SetIamPolicy, expected %s or %s", 352 response == null ? "null" : response.getClass().getName(), 353 Policy.class.getName(), 354 Exception.class.getName()))); 355 } 356 } 357 358 @Override getIamPolicy(GetIamPolicyRequest request, StreamObserver<Policy> responseObserver)359 public void getIamPolicy(GetIamPolicyRequest request, StreamObserver<Policy> responseObserver) { 360 Object response = responses.poll(); 361 if (response instanceof Policy) { 362 requests.add(request); 363 responseObserver.onNext(((Policy) response)); 364 responseObserver.onCompleted(); 365 } else if (response instanceof Exception) { 366 responseObserver.onError(((Exception) response)); 367 } else { 368 responseObserver.onError( 369 new IllegalArgumentException( 370 String.format( 371 "Unrecognized response type %s for method GetIamPolicy, expected %s or %s", 372 response == null ? "null" : response.getClass().getName(), 373 Policy.class.getName(), 374 Exception.class.getName()))); 375 } 376 } 377 378 @Override testIamPermissions( TestIamPermissionsRequest request, StreamObserver<TestIamPermissionsResponse> responseObserver)379 public void testIamPermissions( 380 TestIamPermissionsRequest request, 381 StreamObserver<TestIamPermissionsResponse> responseObserver) { 382 Object response = responses.poll(); 383 if (response instanceof TestIamPermissionsResponse) { 384 requests.add(request); 385 responseObserver.onNext(((TestIamPermissionsResponse) response)); 386 responseObserver.onCompleted(); 387 } else if (response instanceof Exception) { 388 responseObserver.onError(((Exception) response)); 389 } else { 390 responseObserver.onError( 391 new IllegalArgumentException( 392 String.format( 393 "Unrecognized response type %s for method TestIamPermissions, expected %s or %s", 394 response == null ? "null" : response.getClass().getName(), 395 TestIamPermissionsResponse.class.getName(), 396 Exception.class.getName()))); 397 } 398 } 399 400 @Override sendCommandToDevice( SendCommandToDeviceRequest request, StreamObserver<SendCommandToDeviceResponse> responseObserver)401 public void sendCommandToDevice( 402 SendCommandToDeviceRequest request, 403 StreamObserver<SendCommandToDeviceResponse> responseObserver) { 404 Object response = responses.poll(); 405 if (response instanceof SendCommandToDeviceResponse) { 406 requests.add(request); 407 responseObserver.onNext(((SendCommandToDeviceResponse) response)); 408 responseObserver.onCompleted(); 409 } else if (response instanceof Exception) { 410 responseObserver.onError(((Exception) response)); 411 } else { 412 responseObserver.onError( 413 new IllegalArgumentException( 414 String.format( 415 "Unrecognized response type %s for method SendCommandToDevice, expected %s or %s", 416 response == null ? "null" : response.getClass().getName(), 417 SendCommandToDeviceResponse.class.getName(), 418 Exception.class.getName()))); 419 } 420 } 421 422 @Override bindDeviceToGateway( BindDeviceToGatewayRequest request, StreamObserver<BindDeviceToGatewayResponse> responseObserver)423 public void bindDeviceToGateway( 424 BindDeviceToGatewayRequest request, 425 StreamObserver<BindDeviceToGatewayResponse> responseObserver) { 426 Object response = responses.poll(); 427 if (response instanceof BindDeviceToGatewayResponse) { 428 requests.add(request); 429 responseObserver.onNext(((BindDeviceToGatewayResponse) response)); 430 responseObserver.onCompleted(); 431 } else if (response instanceof Exception) { 432 responseObserver.onError(((Exception) response)); 433 } else { 434 responseObserver.onError( 435 new IllegalArgumentException( 436 String.format( 437 "Unrecognized response type %s for method BindDeviceToGateway, expected %s or %s", 438 response == null ? "null" : response.getClass().getName(), 439 BindDeviceToGatewayResponse.class.getName(), 440 Exception.class.getName()))); 441 } 442 } 443 444 @Override unbindDeviceFromGateway( UnbindDeviceFromGatewayRequest request, StreamObserver<UnbindDeviceFromGatewayResponse> responseObserver)445 public void unbindDeviceFromGateway( 446 UnbindDeviceFromGatewayRequest request, 447 StreamObserver<UnbindDeviceFromGatewayResponse> responseObserver) { 448 Object response = responses.poll(); 449 if (response instanceof UnbindDeviceFromGatewayResponse) { 450 requests.add(request); 451 responseObserver.onNext(((UnbindDeviceFromGatewayResponse) response)); 452 responseObserver.onCompleted(); 453 } else if (response instanceof Exception) { 454 responseObserver.onError(((Exception) response)); 455 } else { 456 responseObserver.onError( 457 new IllegalArgumentException( 458 String.format( 459 "Unrecognized response type %s for method UnbindDeviceFromGateway, expected %s or %s", 460 response == null ? "null" : response.getClass().getName(), 461 UnbindDeviceFromGatewayResponse.class.getName(), 462 Exception.class.getName()))); 463 } 464 } 465 } 466