@Override public IDeviceAssignment createDeviceAssignment(IDeviceAssignmentCreateRequest request) throws SiteWhereException { return delegate.createDeviceAssignment(request); }
@Override public IDeviceAssignment createDeviceAssignment(IDeviceAssignmentCreateRequest request) throws SiteWhereException { return getDelegate().createDeviceAssignment(request); }
/** * Persist a previously created device assignment. * * @param builder * @return * @throws SiteWhereException */ public IDeviceAssignment persist(DeviceAssignmentCreateRequest.Builder builder) throws SiteWhereException { return getDeviceManagement().createDeviceAssignment(builder.build()); }
public IDeviceAssignment persist(DeviceAssignmentCreateRequest.Builder builder) throws SiteWhereException { return getDeviceManagement().createDeviceAssignment(builder.build()); }
/** * Create an unassociated assignment for device with the given hardware id. * This allows events to be written when a device does not have an existing * assignment. * * @param hardwareId * @return * @throws SiteWhereException */ protected IDeviceAssignment createUnassociatedAssignmentFor(String hardwareId) throws SiteWhereException { LOGGER.debug("Creating unassociated assignment for {}.", hardwareId); DeviceAssignmentCreateRequest assnCreate = new DeviceAssignmentCreateRequest(); assnCreate.setDeviceHardwareId(hardwareId); assnCreate.setAssignmentType(DeviceAssignmentType.Unassociated); return SiteWhere.getServer().getDeviceManagement(getTenant()).createDeviceAssignment(assnCreate); }
@Override public void createDeviceAssignment(GCreateDeviceAssignmentRequest request, StreamObserver<GCreateDeviceAssignmentResponse> responseObserver) { try { GrpcUtils.handleServerMethodEntry(this, DeviceManagementGrpc.getCreateDeviceAssignmentMethod()); IDeviceAssignmentCreateRequest apiRequest = DeviceModelConverter .asApiDeviceAssignmentCreateRequest(request.getRequest()); IDeviceAssignment apiResult = getDeviceManagement().createDeviceAssignment(apiRequest); GCreateDeviceAssignmentResponse.Builder response = GCreateDeviceAssignmentResponse.newBuilder(); response.setAssignment(DeviceModelConverter.asGrpcDeviceAssignment(apiResult)); responseObserver.onNext(response.build()); responseObserver.onCompleted(); } catch (Throwable e) { GrpcUtils.handleServerMethodException(DeviceManagementGrpc.getCreateDeviceAssignmentMethod(), e, responseObserver); } finally { GrpcUtils.handleServerMethodExit(DeviceManagementGrpc.getCreateDeviceAssignmentMethod()); } }
@Override public void handleDeviceRegistration(IDeviceRegistrationPayload registration) throws SiteWhereException { Authentication previous = SecurityContextHolder.getContext().getAuthentication(); try { Authentication system = getMicroservice().getSystemUser() .getAuthenticationForTenant(getTenantEngine().getTenant()); SecurityContextHolder.getContext().setAuthentication(system); IDevice device = getOrCreateDevice(registration); // Find assignment metadata that should be associated. ICustomer customer = getCustomerFor(registration); IArea area = getAreaFor(registration); // Make sure device is assigned. if (device.getDeviceAssignmentId() == null) { getLogger().debug("Handling unassigned device for registration."); DeviceAssignmentCreateRequest assnCreate = new DeviceAssignmentCreateRequest(); assnCreate.setDeviceToken(device.getToken()); if (customer != null) { assnCreate.setCustomerToken(customer.getToken()); } if (area != null) { assnCreate.setAreaToken(area.getToken()); } getDeviceManagement().createDeviceAssignment(assnCreate); } boolean isNewRegistration = (device != null); sendRegistrationAck(registration.getDeviceToken(), isNewRegistration); } finally { SecurityContextHolder.getContext().setAuthentication(previous); } }
IDeviceAssignment created = management.createDeviceAssignment(request); DeviceAssignmentMarshalHelper helper = new DeviceAssignmentMarshalHelper(getTenant(servletRequest)); helper.setIncludeAsset(true);
assnCreate.setDeviceHardwareId(device.getHardwareId()); assnCreate.setAssignmentType(DeviceAssignmentType.Unassociated); SiteWhere.getServer().getDeviceManagement(getTenant()).createDeviceAssignment(assnCreate);