Loading src/device/service/DeviceServiceServicerImpl.py +14 −4 Original line number Diff line number Diff line Loading @@ -43,8 +43,7 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) def AddDevice(self, request : Device, context : grpc.ServicerContext) -> DeviceId: device_id = request.device_id device_uuid = device_id.device_uuid.uuid device_uuid = request.device_id.device_uuid.uuid connection_config_rules = check_connect_rules(request.device_config) check_no_endpoints(request.device_endpoints) Loading @@ -52,9 +51,18 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): context_client = ContextClient() device = get_device(context_client, device_uuid, rw_copy=True) if device is None: # not in context, create from request # not in context, create blank one to get UUID, and populate it below device = Device() device.CopyFrom(request) device.device_id.CopyFrom(request.device_id) # pylint: disable=no-member device.name = request.name device.device_type = request.device_type device.device_operational_status = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED device.device_drivers.extend(request.device_drivers) # pylint: disable=no-member device_id = context_client.SetDevice(device) device = get_device(context_client, device_id.device_uuid.uuid, rw_copy=True) # update device_uuid to honor UUID provided by Context device_uuid = device.device_id.device_uuid.uuid self.mutex_queues.wait_my_turn(device_uuid) try: Loading @@ -70,6 +78,8 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): # created from request, populate config rules using driver errors.extend(populate_config_rules(device, driver)) # TODO: populate components if len(errors) > 0: for error in errors: LOGGER.error(error) raise OperationFailedException('AddDevice', extra_details=errors) Loading Loading
src/device/service/DeviceServiceServicerImpl.py +14 −4 Original line number Diff line number Diff line Loading @@ -43,8 +43,7 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) def AddDevice(self, request : Device, context : grpc.ServicerContext) -> DeviceId: device_id = request.device_id device_uuid = device_id.device_uuid.uuid device_uuid = request.device_id.device_uuid.uuid connection_config_rules = check_connect_rules(request.device_config) check_no_endpoints(request.device_endpoints) Loading @@ -52,9 +51,18 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): context_client = ContextClient() device = get_device(context_client, device_uuid, rw_copy=True) if device is None: # not in context, create from request # not in context, create blank one to get UUID, and populate it below device = Device() device.CopyFrom(request) device.device_id.CopyFrom(request.device_id) # pylint: disable=no-member device.name = request.name device.device_type = request.device_type device.device_operational_status = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_UNDEFINED device.device_drivers.extend(request.device_drivers) # pylint: disable=no-member device_id = context_client.SetDevice(device) device = get_device(context_client, device_id.device_uuid.uuid, rw_copy=True) # update device_uuid to honor UUID provided by Context device_uuid = device.device_id.device_uuid.uuid self.mutex_queues.wait_my_turn(device_uuid) try: Loading @@ -70,6 +78,8 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): # created from request, populate config rules using driver errors.extend(populate_config_rules(device, driver)) # TODO: populate components if len(errors) > 0: for error in errors: LOGGER.error(error) raise OperationFailedException('AddDevice', extra_details=errors) Loading