Search in sources :

Example 1 with EventTypeModel

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());
        }
}
Also used : DataSourceVO(com.serotonin.m2m2.vo.dataSource.DataSourceVO) AuditEventType(com.serotonin.m2m2.rt.event.type.AuditEventType) EventType(com.serotonin.m2m2.rt.event.type.EventType) SystemEventType(com.serotonin.m2m2.rt.event.type.SystemEventType) ArrayList(java.util.ArrayList) List(java.util.List) EventTypeVO(com.serotonin.m2m2.vo.event.EventTypeVO)

Example 2 with EventTypeModel

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());
        }
}
Also used : DataPointVO(com.serotonin.m2m2.vo.DataPointVO) AuditEventType(com.serotonin.m2m2.rt.event.type.AuditEventType) EventType(com.serotonin.m2m2.rt.event.type.EventType) SystemEventType(com.serotonin.m2m2.rt.event.type.SystemEventType)

Example 3 with EventTypeModel

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());
        }
}
Also used : AuditEventType(com.serotonin.m2m2.rt.event.type.AuditEventType) EventType(com.serotonin.m2m2.rt.event.type.EventType) SystemEventType(com.serotonin.m2m2.rt.event.type.SystemEventType) PublisherVO(com.serotonin.m2m2.vo.publish.PublisherVO) EventTypeVO(com.serotonin.m2m2.vo.event.EventTypeVO)

Example 4 with EventTypeModel

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;
}
Also used : DataPointEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataPointEventTypeModel) SystemEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.SystemEventTypeModel) DataSourceEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataSourceEventTypeModel) AuditEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.AuditEventTypeModel) MissingEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.MissingEventTypeModel) EventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel) PublisherEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.PublisherEventTypeModel) SystemEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.SystemEventTypeModel) DataSourceEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataSourceEventTypeModel) PublisherEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.PublisherEventTypeModel) ModelNotFoundException(com.serotonin.m2m2.web.mvc.rest.v1.exception.ModelNotFoundException) MissingEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.MissingEventTypeModel) JsonNode(com.fasterxml.jackson.databind.JsonNode) EventTypeDefinition(com.serotonin.m2m2.module.EventTypeDefinition) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) DataPointEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataPointEventTypeModel) AuditEventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.AuditEventTypeModel)

Example 5 with EventTypeModel

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;
}
Also used : EventTypeModel(com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel) EventType(com.serotonin.m2m2.rt.event.type.EventType) ArrayList(java.util.ArrayList)

Aggregations

EventType (com.serotonin.m2m2.rt.event.type.EventType)4 AuditEventType (com.serotonin.m2m2.rt.event.type.AuditEventType)3 SystemEventType (com.serotonin.m2m2.rt.event.type.SystemEventType)3 EventTypeVO (com.serotonin.m2m2.vo.event.EventTypeVO)2 EventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.EventTypeModel)2 ArrayList (java.util.ArrayList)2 JsonNode (com.fasterxml.jackson.databind.JsonNode)1 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 EventTypeDefinition (com.serotonin.m2m2.module.EventTypeDefinition)1 DataPointVO (com.serotonin.m2m2.vo.DataPointVO)1 DataSourceVO (com.serotonin.m2m2.vo.dataSource.DataSourceVO)1 PublisherVO (com.serotonin.m2m2.vo.publish.PublisherVO)1 ModelNotFoundException (com.serotonin.m2m2.web.mvc.rest.v1.exception.ModelNotFoundException)1 AuditEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.AuditEventTypeModel)1 DataPointEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataPointEventTypeModel)1 DataSourceEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.DataSourceEventTypeModel)1 MissingEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.MissingEventTypeModel)1 PublisherEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.PublisherEventTypeModel)1 SystemEventTypeModel (com.serotonin.m2m2.web.mvc.rest.v1.model.eventType.SystemEventTypeModel)1 List (java.util.List)1