Search in sources :

Example 6 with AuditEventType

use of com.serotonin.m2m2.rt.event.type.AuditEventType in project ma-core-public by infiniteautomation.

the class EventDao method createEventType.

/**
 * Get an event type from a result set
 *
 * eventTypeName = offset
 * eventSubtypeName = offset + 1
 * eventTypeRef1 = offset + 2
 * eventTypeRef2 = offset + 3
 *
 * @param rs
 * @param offset
 * @return
 * @throws SQLException
 */
public static EventType createEventType(ResultSet rs, int offset) throws SQLException {
    String typeName = rs.getString(offset);
    String subtypeName = rs.getString(offset + 1);
    EventType type;
    if (typeName.equals(EventType.EventTypeNames.DATA_POINT))
        type = new DataPointEventType(rs.getInt(offset + 2), rs.getInt(offset + 3));
    else if (typeName.equals(EventType.EventTypeNames.DATA_SOURCE))
        type = new DataSourceEventType(rs.getInt(offset + 2), rs.getInt(offset + 3));
    else if (typeName.equals(EventType.EventTypeNames.SYSTEM))
        type = new SystemEventType(subtypeName, rs.getInt(offset + 2));
    else if (typeName.equals(EventType.EventTypeNames.PUBLISHER))
        type = new PublisherEventType(rs.getInt(offset + 2), rs.getInt(offset + 3));
    else if (typeName.equals(EventType.EventTypeNames.AUDIT))
        // TODO allow tracking the various types of audit events...
        type = new AuditEventType(subtypeName, -1, rs.getInt(offset + 3));
    else {
        EventTypeDefinition def = ModuleRegistry.getEventTypeDefinition(typeName);
        if (def == null) {
            // Create Missing Event Type
            type = new MissingEventType(typeName, null, rs.getInt(offset + 2), rs.getInt(offset + 3));
        } else {
            type = def.createEventType(subtypeName, rs.getInt(offset + 2), rs.getInt(offset + 3));
            if (type == null) {
                // Create Missing Event type
                type = new MissingEventType(typeName, subtypeName, rs.getInt(offset + 2), rs.getInt(offset + 3));
            }
        }
    }
    return type;
}
Also used : DataSourceEventType(com.serotonin.m2m2.rt.event.type.DataSourceEventType) SystemEventType(com.serotonin.m2m2.rt.event.type.SystemEventType) AuditEventType(com.serotonin.m2m2.rt.event.type.AuditEventType) AuditEventType(com.serotonin.m2m2.rt.event.type.AuditEventType) MissingEventType(com.serotonin.m2m2.rt.event.type.MissingEventType) DataSourceEventType(com.serotonin.m2m2.rt.event.type.DataSourceEventType) EventType(com.serotonin.m2m2.rt.event.type.EventType) SystemEventType(com.serotonin.m2m2.rt.event.type.SystemEventType) DataPointEventType(com.serotonin.m2m2.rt.event.type.DataPointEventType) PublisherEventType(com.serotonin.m2m2.rt.event.type.PublisherEventType) MissingEventType(com.serotonin.m2m2.rt.event.type.MissingEventType) PublisherEventType(com.serotonin.m2m2.rt.event.type.PublisherEventType) DataPointEventType(com.serotonin.m2m2.rt.event.type.DataPointEventType) EventTypeDefinition(com.serotonin.m2m2.module.EventTypeDefinition)

Aggregations

JsonException (com.serotonin.json.JsonException)4 JsonObject (com.serotonin.json.type.JsonObject)4 JsonSerializableUtility (com.serotonin.m2m2.util.JsonSerializableUtility)3 IOException (java.io.IOException)3 InvocationTargetException (java.lang.reflect.InvocationTargetException)3 HashMap (java.util.HashMap)3 AuditEventType (com.serotonin.m2m2.rt.event.type.AuditEventType)2 TranslatableMessage (com.serotonin.m2m2.i18n.TranslatableMessage)1 EventTypeDefinition (com.serotonin.m2m2.module.EventTypeDefinition)1 DataPointEventType (com.serotonin.m2m2.rt.event.type.DataPointEventType)1 DataSourceEventType (com.serotonin.m2m2.rt.event.type.DataSourceEventType)1 EventType (com.serotonin.m2m2.rt.event.type.EventType)1 MissingEventType (com.serotonin.m2m2.rt.event.type.MissingEventType)1 PublisherEventType (com.serotonin.m2m2.rt.event.type.PublisherEventType)1 SystemEventType (com.serotonin.m2m2.rt.event.type.SystemEventType)1 User (com.serotonin.m2m2.vo.User)1 AuditEventInstanceVO (com.serotonin.m2m2.vo.event.audit.AuditEventInstanceVO)1