/* * VerifyRulesHandler.java * * Created on July 18, 2003, 12:26 AM */ package org.jboss.tools.common.verification.vrules.handler; import org.jboss.tools.common.verification.vrules.*; import org.jboss.tools.common.verification.vrules.layer.VModelFactory; import org.jboss.tools.common.model.*; import java.util.*; /** * * @author valera */ public class VerifyRulesHandler extends VerifyHandler { /** Creates a new instance of VerifyRulesHandler */ public VerifyRulesHandler() { } public void executeHandler(XModelObject object, Properties p) throws XModelException { if (!isEnabled(object)) return; VModel vmodel = VModelFactory.getModel(object.getModel()); VObject vobject = vmodel.getObjectByPath(object.getPath()); VRule[] rules = vobject.getEntity().getRules(); for (int i = 0; i < rules.length; i++) { VRule rule = rules[i]; VAction vaction = rule.getAction(); if (!rule.isEnabled() || !rule.getRuleSet().isEnabled() || vaction == null) continue; VResult[] results = vaction.check(vobject); if (results == null || results.length == 0) { object.getModel().getOut().println(rule.getName()+": OK"); //$NON-NLS-1$ } else { for (int j = 0; j < results.length; j++) { object.getModel().getOut().println(rule.getName()+": "+results[j].getMessage()); //$NON-NLS-1$ } } mergeResults(object.getModel(), rule, vobject, results); } } public boolean isEnabled(XModelObject object) { return VHelper.getManager() != null; } }