package org.openecomp.sdc.toscaparser.api; import java.util.LinkedHashMap; import org.openecomp.sdc.toscaparser.api.common.ExceptionCollector; import org.openecomp.sdc.toscaparser.api.utils.ValidateUtils; public class Triggers extends EntityTemplate { private static final String DESCRIPTION = "description"; private static final String EVENT = "event_type"; private static final String SCHEDULE = "schedule"; private static final String TARGET_FILTER = "target_filter"; private static final String CONDITION = "condition"; private static final String ACTION = "action"; private static final String SECTIONS[] = { DESCRIPTION, EVENT, SCHEDULE, TARGET_FILTER, CONDITION, ACTION }; private static final String METER_NAME = "meter_name"; private static final String CONSTRAINT = "constraint"; private static final String PERIOD = "period"; private static final String EVALUATIONS = "evaluations"; private static final String METHOD = "method"; private static final String THRESHOLD = "threshold"; private static final String COMPARISON_OPERATOR = "comparison_operator"; private static final String CONDITION_KEYNAMES[] = { METER_NAME, CONSTRAINT, PERIOD, EVALUATIONS, METHOD, THRESHOLD, COMPARISON_OPERATOR }; private String name; private LinkedHashMap triggerTpl; public Triggers(String _name,LinkedHashMap _triggerTpl) { super(); // dummy. don't want super name = _name; triggerTpl = _triggerTpl; _validateKeys(); _validateCondition(); _validateInput(); } public String getDescription() { return (String)triggerTpl.get("description"); } public String getEvent() { return (String)triggerTpl.get("event_type"); } public LinkedHashMap getSchedule() { return (LinkedHashMap)triggerTpl.get("schedule"); } public LinkedHashMap getTargetFilter() { return (LinkedHashMap)triggerTpl.get("target_filter"); } public LinkedHashMap getCondition() { return (LinkedHashMap)triggerTpl.get("condition"); } public LinkedHashMap getAction() { return (LinkedHashMap)triggerTpl.get("action"); } private void _validateKeys() { for(String key: triggerTpl.keySet()) { boolean bFound = false; for(int i=0; i