use of com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel in project ma-modules-public by infiniteautomation.
the class EventTypeV2RestController method getAllDataSourceEventTypes.
private void getAllDataSourceEventTypes(List<EventTypeModel> types, User user, Integer dataSourceId, Integer dataSourceEventId) {
List<DataSourceVO<?>> dataSources = DataSourceDao.instance.getAll();
final boolean admin = Permissions.hasAdmin(user);
for (DataSourceVO<?> dsvo : dataSources) if (dataSourceId == null || dataSourceId.intValue() == dsvo.getId())
for (EventTypeVO dset : (List<EventTypeVO>) dsvo.getEventTypes()) if (dataSourceEventId == null || dataSourceEventId.intValue() == dset.getTypeRef2()) {
EventType et = dset.createEventType();
if (admin || Permissions.hasEventTypePermission(user, et))
types.add(et.asModel());
}
}
use of com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel in project ma-modules-public by infiniteautomation.
the class EventTypeV2RestController method getAllDataPointEventTypes.
private void getAllDataPointEventTypes(List<EventTypeModel> types, User user, Integer dataPointId, Integer detectorId) {
List<DataPointVO> dataPoints = DataPointDao.instance.getDataPoints(DataPointExtendedNameComparator.instance, true);
final boolean admin = Permissions.hasAdmin(user);
for (DataPointVO dpvo : dataPoints) if ((dataPointId == null || dataPointId.intValue() == dpvo.getId()) && dpvo.getEventDetectors() != null)
for (AbstractPointEventDetectorVO<?> ed : dpvo.getEventDetectors()) if ((detectorId == null || detectorId.intValue() == ed.getId())) {
EventType dpet = ed.getEventType().createEventType();
if (admin || Permissions.hasEventTypePermission(user, dpet))
types.add(dpet.asModel());
}
}
use of com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel in project ma-modules-public by infiniteautomation.
the class EventTypeV2RestController method getAllPublisherEventTypes.
private void getAllPublisherEventTypes(List<EventTypeModel> types, User user, Integer publisherId, Integer publisherEventId) {
List<PublisherVO<?>> publishers = PublisherDao.instance.getAll();
final boolean admin = Permissions.hasAdmin(user);
for (PublisherVO<?> pvo : publishers) if (publisherId == null || publisherId.intValue() == pvo.getId())
for (EventTypeVO pet : pvo.getEventTypes()) if (publisherEventId == null || publisherEventId.intValue() == pet.getTypeRef2()) {
EventType et = pet.createEventType();
if (admin || Permissions.hasEventTypePermission(user, et))
types.add(et.asModel());
}
}
use of com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel in project ma-core-public by infiniteautomation.
the class EventTypeModelDeserializer method deserialize.
/*
* (non-Javadoc)
*
* @see com.fasterxml.jackson.databind.JsonDeserializer#deserialize(com.fasterxml.jackson.core.
* JsonParser, com.fasterxml.jackson.databind.DeserializationContext)
*/
@Override
public EventTypeModel deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
ObjectMapper mapper = (ObjectMapper) jp.getCodec();
JsonNode tree = jp.readValueAsTree();
String typeName = tree.get("typeName").asText();
if (StringUtils.isEmpty(typeName))
throw new ModelNotFoundException(typeName);
EventTypeModel model = null;
switch(typeName) {
case EventType.EventTypeNames.DATA_POINT:
model = mapper.treeToValue(tree, DataPointEventTypeModel.class);
break;
case EventType.EventTypeNames.DATA_SOURCE:
model = mapper.treeToValue(tree, DataSourceEventTypeModel.class);
break;
case EventType.EventTypeNames.AUDIT:
model = mapper.treeToValue(tree, AuditEventTypeModel.class);
break;
case EventType.EventTypeNames.PUBLISHER:
model = mapper.treeToValue(tree, PublisherEventTypeModel.class);
break;
case EventType.EventTypeNames.SYSTEM:
model = mapper.treeToValue(tree, SystemEventTypeModel.class);
break;
case EventType.EventTypeNames.MISSING:
model = mapper.treeToValue(tree, MissingEventTypeModel.class);
break;
}
if (model == null) {
EventTypeDefinition def = ModuleRegistry.getEventTypeDefinition(typeName);
if (def == null)
throw new ModelNotFoundException(typeName);
return (EventTypeModel) mapper.treeToValue(tree, def.getModelClass());
} else
return model;
}
use of com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel in project ma-core-public by infiniteautomation.
the class AbstractEventHandlerModel method getEventTypes.
public List<EventTypeModel> getEventTypes() {
List<EventType> events = EventHandlerDao.instance.getEventTypesForHandler(this.data.getId());
List<EventTypeModel> models = new ArrayList<>(events.size());
for (EventType e : events) models.add(e.asModel());
return models;
}
Aggregations