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]>

Reply via email to