[jboss-svn-commits] JBL Code SVN: r36947 - labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Apr 18 14:18:15 EDT 2011
Author: tcunning
Date: 2011-04-18 14:18:15 -0400 (Mon, 18 Apr 2011)
New Revision: 36947
Modified:
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitor.java
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitoringAction.java
Log:
JBESB-3602
Create a new MonitoringPatternBean to add to the monitoredEvents collection -
pass-by-reference bug. Also fixed spacing/tabs in MVELMonitor.java and
MVELMonitoringAction.java.
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitor.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitor.java 2011-04-18 16:44:58 UTC (rev 36946)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitor.java 2011-04-18 18:18:15 UTC (rev 36947)
@@ -61,30 +61,32 @@
monitoredEvents = new ArrayList();
}
- public void addEvent(Message message, MonitoringPatternBean mpb) {
- mpb.setMessageString(message.toString());
- monitoredEvents.add(mpb);
+ public void addEvent(final Message message, final MonitoringPatternBean mpb) {
+ MonitoringPatternBean localBean = new MonitoringPatternBean(mpb.getName(),
+ mpb.getPattern(), mpb.getConditional());
+ localBean.setMessageString(message.toString());
+ monitoredEvents.add(localBean);
}
protected void registerMBean() throws InstanceAlreadyExistsException,
InstanceNotFoundException, MBeanRegistrationException, MBeanRegistrationException,
MalformedObjectNameException, NotCompliantMBeanException {
- MBeanServer mbeanServer = null;
- try {
- mbeanServer = MBeanServerLocator.locateJBoss();
- } catch (IllegalStateException ise) {
- // If we can't find a JBoss MBeanServer, just return
- // Needed for unit tests
- return;
- }
+ MBeanServer mbeanServer = null;
+ try {
+ mbeanServer = MBeanServerLocator.locateJBoss();
+ } catch (IllegalStateException ise) {
+ // If we can't find a JBoss MBeanServer, just return
+ // Needed for unit tests
+ return;
+ }
- ObjectName listObjectName = getObjectName();
+ ObjectName listObjectName = getObjectName();
- if (mbeanServer.isRegistered(listObjectName)) {
+ if (mbeanServer.isRegistered(listObjectName)) {
mbeanServer.unregisterMBean(listObjectName);
- }
+ }
- mbeanServer.registerMBean(this, listObjectName);
+ mbeanServer.registerMBean(this, listObjectName);
}
protected ObjectName getObjectName() throws MalformedObjectNameException {
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitoringAction.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitoringAction.java 2011-04-18 16:44:58 UTC (rev 36946)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/monitoring/MVELMonitoringAction.java 2011-04-18 18:18:15 UTC (rev 36947)
@@ -51,7 +51,7 @@
private static final String BEANSHELL_VARIABLE = "beanshellVar";
- private MVELMonitor mvelMonitor;
+ private MVELMonitor mvelMonitor;
ArrayList <MonitoringPatternBean> list = null;
@@ -66,58 +66,58 @@
this._config = config;
ConfigTree[] configTree = _config.getChildren(MONITOR_VALUE);
- if (null == configTree || configTree.length < 1)
- {
- logger.warn("Missing or empty destination list - This action class won't have any effect");
- return;
- }
+ if (null == configTree || configTree.length < 1) {
+ logger.warn("Missing or empty destination list - This action class won't have any effect");
+ return;
+ }
- list = new ArrayList<MonitoringPatternBean>();
+ list = new ArrayList<MonitoringPatternBean>();
- for (ConfigTree curr : configTree)
- {
- try
- {
- String pattern = curr.getAttribute(MVEL_PATTERN, "");
- String name = curr.getAttribute(PATTERN_NAME, "");
- String conditional = curr.getAttribute(PATTERN_CONDITIONAL, "");
- list.add(new MonitoringPatternBean(pattern, name, conditional));
+ for (ConfigTree curr : configTree) {
+ try
+ {
+ String pattern = curr.getAttribute(MVEL_PATTERN, "");
+ String name = curr.getAttribute(PATTERN_NAME, "");
+ String conditional = curr.getAttribute(PATTERN_CONDITIONAL, "");
+ list.add(new MonitoringPatternBean(pattern, name, conditional));
+ }
+ catch (Exception e)
+ {
+ logger.error("Could not form MonitoringPatternBean from configuration ", e);
+ throw new RuntimeException(e);
+ }
}
- catch (Exception e)
- {
- e.printStackTrace();
- }
- }
- mvelMonitor = new MVELMonitor(config);
- try {
+ mvelMonitor = new MVELMonitor(config);
+ try {
mvelMonitor.registerMBean();
- } catch (Exception e) {
- e.printStackTrace();
- }
+ } catch (Exception e) {
+ logger.error("Could not register MBean", e);
+ throw new RuntimeException(e);
+ }
}
public Message process(Message message) throws ActionProcessingException {
- if (list != null) {
- for (int i = 0; i<list.size(); i++) {
- MonitoringPatternBean mpb = list.get(i);
- String object = null;
+ if (list != null) {
+ for (int i = 0; i<list.size(); i++) {
+ MonitoringPatternBean mpb = list.get(i);
+ String object = null;
ObjectMapper mapper = new ObjectMapper();
try {
- object = (String) mapper.getObjectFromMessage(message, mpb.getPattern());
- Interpreter inter = new Interpreter();
- inter.eval(BEANSHELL_VARIABLE + " = " + object + mpb.getConditional());
- Boolean b = (Boolean)inter.get(BEANSHELL_VARIABLE);
- if (b.booleanValue()) {
- mvelMonitor.addEvent(message, mpb);
- }
+ object = (String) mapper.getObjectFromMessage(message, mpb.getPattern());
+ Interpreter inter = new Interpreter();
+ inter.eval(BEANSHELL_VARIABLE + " = " + object + mpb.getConditional());
+ Boolean b = (Boolean)inter.get(BEANSHELL_VARIABLE);
+ if (b.booleanValue()) {
+ mvelMonitor.addEvent(message, mpb);
+ }
} catch (ObjectMappingException e1) {
- throw new ActionProcessingException(e1);
- } catch (EvalError e) {
- throw new ActionProcessingException(e);
- }
- }
- }
- return message;
+ throw new ActionProcessingException(e1);
+ } catch (EvalError e) {
+ throw new ActionProcessingException(e);
+ }
+ }
+ }
+ return message;
}
}
More information about the jboss-svn-commits
mailing list