[jboss-svn-commits] JBL Code SVN: r13948 - in labs/jbossesb/trunk/product/rosetta: tests/src/org/jboss/soa/esb/listeners/message and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Aug 2 02:23:17 EDT 2007
Author: beve
Date: 2007-08-02 02:23:17 -0400 (Thu, 02 Aug 2007)
New Revision: 13948
Added:
labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounterUnitTest.java
Modified:
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounter.java
Log:
Added a unit test for ServiceMessageCouter and also extracted and created the method getObjectName.
I had a minor issue where my configuration was causing an invalid ObjectName to be generated and
and exception thrown.
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounter.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounter.java 2007-08-02 01:30:09 UTC (rev 13947)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounter.java 2007-08-02 06:23:17 UTC (rev 13948)
@@ -263,42 +263,7 @@
return;
}
- ObjectName listObjectName = null;
- try {
- String categoryName = m_config.getAttribute(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG);
- String serviceName = m_config.getAttribute(ListenerTagNames.SERVICE_NAME_TAG);
- String listenerName = m_config.getName();
-
- StringBuffer objectName = new StringBuffer("category=MessageCounter,");
- if (categoryName != null) {
- objectName.append(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG + "=" + categoryName);
- }
-
- if (serviceName != null) {
- if (objectName.length() > 0) {
- objectName.append(",");
- }
- objectName.append(ListenerTagNames.SERVICE_NAME_TAG + "=" + serviceName);
- }
-
- if (listenerName != null) {
- if (objectName.length() > 0) {
- objectName.append(",");
- }
- if ("true".equals(m_config.getAttribute(ListenerTagNames.IS_GATEWAY_TAG))) {
- objectName.append("gateway-name=" + listenerName);
- } else {
- objectName.append("listener-name=" + listenerName);
- }
-
- }
-
- listObjectName = new ObjectName("jboss.esb:" + objectName.toString());
- } catch (MalformedObjectNameException e1) {
- e1.printStackTrace();
- } catch (NullPointerException e1) {
- e1.printStackTrace();
- }
+ ObjectName listObjectName = getObjectName();
if (mbeanServer.isRegistered(listObjectName)) {
try {
@@ -341,4 +306,45 @@
actionFailedCounterHash.put(actionName + " " + FAILED_MESSAGE_COUNTER, count);
}
}
+
+ protected ObjectName getObjectName()
+ {
+ ObjectName listObjectName = null;
+ try {
+ String categoryName = m_config.getAttribute(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG);
+ String serviceName = m_config.getAttribute(ListenerTagNames.SERVICE_NAME_TAG);
+ String listenerName = m_config.getName();
+
+ StringBuffer objectName = new StringBuffer("category=MessageCounter");
+ if (categoryName != null) {
+ objectName.append(",").append(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG).append("=").append(categoryName);
+ }
+
+ if (serviceName != null) {
+ if (objectName.length() > 0) {
+ objectName.append(",");
+ }
+ objectName.append(ListenerTagNames.SERVICE_NAME_TAG).append("=").append(serviceName);
+ }
+
+ if (listenerName != null) {
+ if (objectName.length() > 0) {
+ objectName.append(",");
+ }
+ if ("true".equals(m_config.getAttribute(ListenerTagNames.IS_GATEWAY_TAG))) {
+ objectName.append("gateway-name=").append(listenerName);
+ } else {
+ objectName.append("listener-name=").append(listenerName);
+ }
+
+ }
+
+ listObjectName = new ObjectName("jboss.esb:" + objectName.toString());
+ } catch (MalformedObjectNameException e1) {
+ e1.printStackTrace();
+ } catch (NullPointerException e1) {
+ e1.printStackTrace();
+ }
+ return listObjectName;
+ }
}
Added: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounterUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounterUnitTest.java (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/listeners/message/ServiceMessageCounterUnitTest.java 2007-08-02 06:23:17 UTC (rev 13948)
@@ -0,0 +1,70 @@
+/*
+ * JBoss, Home of Professional Open Source Copyright 2006, JBoss Inc., and
+ * individual contributors as indicated by the @authors tag. See the
+ * copyright.txt in the distribution for a full listing of individual
+ * contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU Lesser General Public License as published by the Free
+ * Software Foundation; either version 2.1 of the License, or (at your option)
+ * any later version.
+ *
+ * This software is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+ * details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this software; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
+ * site: http://www.fsf.org.
+ */
+package org.jboss.soa.esb.listeners.message;
+
+import javax.management.ObjectName;
+
+import junit.framework.JUnit4TestAdapter;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.junit.Test;
+
+/**
+ * Unit test for ServiceMessageCounter
+ *
+ * @author <a href="mailto:daniel.bevenius at redpill.se">Daniel Bevenius</a>
+ *
+ */
+public class ServiceMessageCounterUnitTest
+{
+ private Logger log = Logger.getLogger( ServiceMessageCounterUnitTest.class );
+
+ @Test
+ public void getObjectName()
+ {
+ ConfigTree config = createConfigTreeForScheduler();
+ log.debug( config );
+
+ ServiceMessageCounter counter = new ServiceMessageCounter( config );
+ ObjectName objectName = counter.getObjectName();
+ log.debug( objectName );
+ }
+
+ private ConfigTree createConfigTreeForScheduler()
+ {
+ ConfigTree config = new ConfigTree( "cronScheduleListener" );
+ config.setAttribute( "composer", "class");
+ config.setAttribute( "listenerClass", "org.jboss.soa.esb.listeners.ScheduleListener" );
+ config.setAttribute( "scheduleidref", "cronTrigger");
+ return config;
+ }
+
+ /*
+ * Just here to help Ant to find annotated test.
+ */
+ public static junit.framework.Test suite()
+ {
+ return new JUnit4TestAdapter( ServiceMessageCounterUnitTest.class );
+ }
+
+}
More information about the jboss-svn-commits
mailing list