oalexeev 02/01/31 08:57:45
Modified: services/src/java/org/apache/commons/services Event.java
EventModule.java EventRegistration.java Leaf.java
Queue.java QueueModule.java Service.java
ServiceManager.java ServiceModule.java
Log:
Change Digester related stuff.
Revision Changes Path
1.3 +6 -1
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Event.java
Index: Event.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Event.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Event.java 19 Dec 2001 16:21:28 -0000 1.2
+++ Event.java 31 Jan 2002 16:57:44 -0000 1.3
@@ -10,7 +10,7 @@
/** Base class for all Events.
*
- * @version $Id: Event.java,v 1.2 2001/12/19 16:21:28 oalexeev Exp $
+ * @version $Id: Event.java,v 1.3 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class Event extends Leaf {
@@ -28,6 +28,11 @@
public void destroy() {
super.destroy();
eventRegistration = null;
+ }
+
+ public String toString() {
+ return this.getClass().getName() + " [eventRegistration='" +
+ getEventRegistration() + "']";
}
}
1.6 +13 -8
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/EventModule.java
Index: EventModule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/EventModule.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- EventModule.java 30 Jan 2002 09:26:02 -0000 1.5
+++ EventModule.java 31 Jan 2002 16:57:44 -0000 1.6
@@ -16,7 +16,7 @@
/** Event module. Generate events.
*
- * @version $Id: EventModule.java,v 1.5 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: EventModule.java,v 1.6 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class EventModule extends Module {
@@ -43,7 +43,9 @@
}
protected EventRegistration createDefaultEventRegistration() {
- return new EventRegistration();
+ EventRegistration registration = new EventRegistration();
+ registration.setType( "org.apache.commons.services.Event" );
+ return registration;
}
public void addEventRegistration( EventRegistration eventRegistration ) {
@@ -61,6 +63,10 @@
pool.close();
}
+ public EventRegistration getDefaultEventRegistration() {
+ return defaultEventRegistration;
+ }
+
public EventRegistration getEventRegistration( String key ) {
EventRegistration eventRegistration =
(EventRegistration)eventRegistrations.get( key );
if( eventRegistration==null ) {
@@ -69,11 +75,11 @@
return eventRegistration;
}
- public Event getEvent( String name ) throws Exception {
+ public Event getEvent( String name ) {
return (Event)pool.borrowObject( name );
}
- public Event getDefaultEvent() throws Exception {
+ public Event getDefaultEvent() {
return (Event)pool.borrowObject( defaultEventRegistration.getName()
);
}
@@ -83,11 +89,10 @@
throw new IllegalArgumentException( "Module can not be used
alone. The path argument is mandatory." );
String eventPath =
- path + "event";
+ path + "/event";
- digester.addRule( eventPath,
- new ObjectCreateRule( digester,
- "org.apache.commons.services.EventRegistration", "type" ) );
+ digester.addObjectCreate( eventPath,
"org.apache.commons.services.EventRegistration",
+ "type" );
digester.addSetNext( eventPath, "addEventRegistration",
"org.apache.commons.services.EventRegistration" );
digester.addSetProperties( eventPath );
1.3 +6 -1
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/EventRegistration.java
Index: EventRegistration.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/EventRegistration.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- EventRegistration.java 30 Jan 2002 09:26:02 -0000 1.2
+++ EventRegistration.java 31 Jan 2002 16:57:44 -0000 1.3
@@ -10,7 +10,7 @@
/** Event registration.
*
- * @version $Id: EventRegistration.java,v 1.2 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: EventRegistration.java,v 1.3 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class EventRegistration {
@@ -33,6 +33,11 @@
public void setName( String name ) {
this.name = name;
+ }
+
+ public String toString() {
+ return this.getClass().getName() + "[name='" +
+ getName() + ", type='" + getType() + "']";
}
}
1.3 +3 -1
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Leaf.java
Index: Leaf.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Leaf.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Leaf.java 30 Jan 2002 09:26:02 -0000 1.2
+++ Leaf.java 31 Jan 2002 16:57:44 -0000 1.3
@@ -12,7 +12,7 @@
/** Base class for all 'leaf' classes - Event, Service, Queue.
*
- * @version $Id: Leaf.java,v 1.2 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: Leaf.java,v 1.3 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class Leaf implements Serializable {
@@ -39,10 +39,12 @@
public void init() {
parentModule = null;
+ name = null;
}
public void destroy() {
parentModule = null;
+ name = null;
}
}
1.3 +9 -1
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Queue.java
Index: Queue.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Queue.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Queue.java 30 Jan 2002 09:26:02 -0000 1.2
+++ Queue.java 31 Jan 2002 16:57:44 -0000 1.3
@@ -14,7 +14,7 @@
* walk throw all services in ServiceManager and pass event to
* every of them.
*
- * @version $Id: Queue.java,v 1.2 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: Queue.java,v 1.3 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class Queue extends Leaf {
@@ -32,6 +32,7 @@
public Object execute( Event event ) throws Exception {
int processed = 0;
Service service = null;
+ Object result = null;
Iterator iterator =
parentModule.getServiceManager().getServiceModule().getServices();
while( iterator.hasNext() ) {
@@ -46,12 +47,19 @@
processed++;
}
}
+
return new Integer( processed );
+
}
public void init() {
super.init();
strongCheck = false;
+ }
+
+ public String toString() {
+ return this.getClass().getName() + " [name='" + this.getName() +
+ "',strongCheck='" + (this.getStrongCheck()?"true":"false")
+ "']";
}
}
1.4 +5 -5
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/QueueModule.java
Index: QueueModule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/QueueModule.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- QueueModule.java 30 Jan 2002 09:26:02 -0000 1.3
+++ QueueModule.java 31 Jan 2002 16:57:44 -0000 1.4
@@ -15,7 +15,7 @@
/** QueueModule - manages queues.
*
- * @version $Id: QueueModule.java,v 1.3 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: QueueModule.java,v 1.4 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class QueueModule extends Module {
@@ -68,11 +68,11 @@
queues.remove( name );
}
- public Queue getQueue( String name ) throws Exception {
+ public Queue getQueue( String name ) {
Queue queue = (Queue)queues.get( name );
if( queue==null ) {
if( strongCheck ) {
- throw new Exception( "Can not find queue for name"
);
+ return null;
} else {
return getDefaultQueue();
}
@@ -91,15 +91,15 @@
throw new IllegalArgumentException( "Module can not be used
alone. The path argument is mandatory." );
String queuePath =
- path + "queue";
+ path + "/queue";
- //FIXIT - replace class name with configurable property
digester.addRule( queuePath,
new ConfigObjectCreateRule( digester,
"org.apache.commons.services.SequenceQueue", "type",
queuePath ) );
digester.addSetNext( queuePath, "addQueue",
"org.apache.commons.services.Queue" );
+ digester.addSetProperties( queuePath );
return digester;
1.2 +7 -1
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Service.java
Index: Service.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/Service.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Service.java 17 Dec 2001 16:38:18 -0000 1.1
+++ Service.java 31 Jan 2002 16:57:44 -0000 1.2
@@ -10,13 +10,19 @@
/** Base Service class.
*
- * @version $Id: Service.java,v 1.1 2001/12/17 16:38:18 oalexeev Exp $
+ * @version $Id: Service.java,v 1.2 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class Service extends Leaf {
public Object execute( Event event ) {
+ getParentModule().getServiceManager().getLog().debug( "Execute
service " +
+ this.toString() );
return this.getClass().getName();
+ }
+
+ public String toString() {
+ return this.getClass().getName() + " [name='" + this.getName() +
"']";
}
}
1.7 +21 -9
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/ServiceManager.java
Index: ServiceManager.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/ServiceManager.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ServiceManager.java 30 Jan 2002 09:26:02 -0000 1.6
+++ ServiceManager.java 31 Jan 2002 16:57:44 -0000 1.7
@@ -17,7 +17,7 @@
/**
* Core class in package.
*
- * @version $Id: ServiceManager.java,v 1.6 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: ServiceManager.java,v 1.7 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class ServiceManager implements Serializable, ConfigObject {
@@ -165,35 +165,47 @@
}
}
- public Object execute() throws Exception {
+ public Object execute() {
Event event = eventModule.getDefaultEvent();
return execute( event );
}
- public Object execute( String queueName ) throws Exception {
+ public Object execute( String queueName ) {
Event event = eventModule.getDefaultEvent();
return execute( queueName, event );
}
- public Object execute( Event event ) throws Exception {
+ public Object execute( Event event ) {
Queue queue = queueModule.getDefaultQueue();
return execute( queue, event );
}
- public Object execute( String queueName, Event event ) throws Exception {
+ public Object execute( String queueName, Event event ) {
Queue queue = queueModule.getQueue( queueName );
return execute( queue, event );
}
- protected Object execute( Queue queue, Event event ) throws Exception {
+ protected Object execute( Queue queue, Event event ) {
+ Object result = null;
try {
- return queue.execute( event );
+ if( log.isDebugEnabled() ) {
+ log.debug( "ServiceManager.execute() start" );
+ log.debug( " Queue=[" + queue + "]" );
+ log.debug( " Event=[" + event + "]" );
+ }
+
+ result = queue.execute( event );
+
+ if( log.isDebugEnabled() )
+ log.debug( "ServiceManager.execute() result = " +
result );
+
+ return result;
} catch ( Exception e ) {
- log.error( "Error at execute() call in ServiceManager.", e
);
- throw e;
+ log.error( "ServiceManager.execute() - error at call", e );
} finally {
eventModule.releaseEvent( event );
}
+ return null;
}
}
1.4 +4 -2
jakarta-commons-sandbox/services/src/java/org/apache/commons/services/ServiceModule.java
Index: ServiceModule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/services/src/java/org/apache/commons/services/ServiceModule.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ServiceModule.java 30 Jan 2002 09:26:02 -0000 1.3
+++ ServiceModule.java 31 Jan 2002 16:57:44 -0000 1.4
@@ -15,7 +15,7 @@
/** ServiceModule manages services.
*
- * @version $Id: ServiceModule.java,v 1.3 2002/01/30 09:26:02 oalexeev Exp $
+ * @version $Id: ServiceModule.java,v 1.4 2002/01/31 16:57:44 oalexeev Exp $
* @author Oleg V Alexeev
*/
public class ServiceModule extends Module {
@@ -52,6 +52,7 @@
public void addService( Service service ) {
services.put( service.getName(), service );
service.setParentModule( this );
+System.out.println( "------------- addService " + service + " with name = " +
service.getName() );
}
public void removeService( String name ) {
@@ -77,13 +78,14 @@
throw new IllegalArgumentException( "Module can not be used
alone. The path argument is mandatory." );
String servicePath =
- path + "service";
+ path + "/service";
// FIXIT!
digester.addRule( servicePath,
new ConfigObjectCreateRule( digester, "", "type",
servicePath ) );
digester.addSetNext( servicePath, "addService",
"org.apache.commons.services.Service" );
+ digester.addSetProperties( servicePath );
return digester;
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>