/** * Common creation logic for all device events. * * @param request * @param assignment * @param target * @throws SiteWhereException */ public static void deviceEventCreateLogic(IDeviceEventCreateRequest request, IDeviceAssignment assignment, DeviceEvent target) throws SiteWhereException { target.setId(UUID.randomUUID()); target.setAlternateId(request.getAlternateId()); target.setDeviceId(assignment.getDeviceId()); target.setDeviceAssignmentId(assignment.getId()); target.setCustomerId(assignment.getCustomerId()); target.setAreaId(assignment.getAreaId()); target.setAssetId(assignment.getAssetId()); if (request.getEventDate() != null) { target.setEventDate(request.getEventDate()); } else { target.setEventDate(new Date()); } target.setReceivedDate(new Date()); MetadataProvider.copy(request.getMetadata(), target); }
result.setCustomerId(source.getCustomerId()); if ((isIncludeCustomer()) && (source.getCustomerId() != null)) { result.setCustomer(getDeviceManagement().getCustomer(source.getCustomerId()));
/** * Common logic for creating a device alarm. * * @param assignment * @param request * @return * @throws SiteWhereException */ public static DeviceAlarm deviceAlarmCreateLogic(IDeviceAssignment assignment, IDeviceAlarmCreateRequest request) throws SiteWhereException { DeviceAlarm alarm = new DeviceAlarm(); alarm.setId(UUID.randomUUID()); alarm.setDeviceId(assignment.getDeviceId()); alarm.setDeviceAssignmentId(assignment.getId()); alarm.setCustomerId(assignment.getCustomerId()); alarm.setAreaId(assignment.getAreaId()); alarm.setAssetId(assignment.getAssetId()); require("Alarm message", request.getAlarmMessage()); alarm.setAlarmMessage(request.getAlarmMessage()); alarm.setTriggeringEventId(request.getTriggeringEventId()); alarm.setState(request.getState() != null ? request.getState() : DeviceAlarmState.Triggered); alarm.setTriggeredDate(request.getTriggeredDate() != null ? request.getTriggeredDate() : new Date()); alarm.setAcknowledgedDate(request.getAcknowledgedDate()); alarm.setResolvedDate(request.getResolvedDate()); MetadataProvider.copy(request.getMetadata(), alarm); return alarm; }
/** * Copy information from SPI into Mongo {@link Document}. * * @param source * @param target */ public static void toDocument(IDeviceAssignment source, Document target) { target.append(PROP_DEVICE_ID, source.getDeviceId()); target.append(PROP_DEVICE_TYPE_ID, source.getDeviceTypeId()); target.append(PROP_CUSTOMER_ID, source.getCustomerId()); target.append(PROP_AREA_ID, source.getAreaId()); target.append(PROP_ASSET_ID, source.getAssetId()); if (source.getActiveDate() != null) { target.append(PROP_ACTIVE_DATE, source.getActiveDate()); } if (source.getReleasedDate() != null) { target.append(PROP_RELEASED_DATE, source.getReleasedDate()); } if (source.getStatus() != null) { target.append(PROP_STATUS, source.getStatus().name()); } MongoPersistentEntity.toDocument(source, target); }
target.setDeviceId(assignment.getDeviceId()); target.setDeviceAssignmentId(assignment.getId()); target.setCustomerId(assignment.getCustomerId()); target.setAreaId(assignment.getAreaId()); target.setAssetId(assignment.getAssetId());
if (assignment.getCustomerId() != null) { BoundStatement eventByCustomer = getCassandraEventManagementClient().getInsertDeviceEventByCustomer() .bind();