Coverage Report - org.apache.commons.messenger.MessengerDigester
 
Classes in this File Line Coverage Branch Coverage Complexity
MessengerDigester
0%
0/43
0%
0/2
1.667
 
 1  
 /*
 2  
  * Copyright (C) The Apache Software Foundation. All rights reserved.
 3  
  *
 4  
  * This software is published under the terms of the Apache Software License
 5  
  * version 1.1, a copy of which has been included with this distribution in
 6  
  * the LICENSE file.
 7  
  * 
 8  
  * $Id: MessengerDigester.java 155459 2005-02-26 13:24:44Z dirkv $
 9  
  */
 10  
 package org.apache.commons.messenger;
 11  
 
 12  
 import org.apache.commons.digester.Digester;
 13  
 
 14  
 /** <p><code>MessengerDigester</code> is a digester of Messenger objects so 
 15  
   * that JMS Messengers can be created from an XML config file.</p>
 16  
   *
 17  
   * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
 18  
   * @version $Revision: 155459 $
 19  
   */
 20  
 public class MessengerDigester extends Digester {
 21  
 
 22  
     // default implementation classes
 23  0
     private String messengerManagerClass = "org.apache.commons.messenger.MessengerManager";
 24  0
     private String messengerClass = "org.apache.commons.messenger.DefaultMessenger";
 25  0
     private String xaMessengerClass = "org.apache.commons.messenger.XAMessenger";
 26  0
     private String sessionFactory = "org.apache.commons.messenger.SessionFactory";
 27  0
     private String connectionFactory = "org.apache.commons.messenger.DummyConnectionFactory";
 28  0
     private String jndiSessionFactory = "org.apache.commons.messenger.JNDISessionFactory";
 29  
 
 30  
     
 31  0
     public MessengerDigester() {
 32  0
     }
 33  
     
 34  
     // Implementation methods
 35  
     //-------------------------------------------------------------------------    
 36  
 
 37  
     /** Configure the parsing rules that will be used to process 
 38  
      * the cache config file
 39  
      */
 40  
     protected void configure() {
 41  0
         if (configured) {
 42  0
             return;
 43  
         }
 44  
         else {
 45  0
             configured = true;
 46  
         }
 47  
         
 48  0
         addObjectCreate( "manager", messengerManagerClass, "className" );
 49  0
         addSetProperties( "manager" );
 50  
 
 51  0
                 String path = "manager/messenger";    
 52  0
         addObjectCreate( path, messengerClass, "className" );
 53  0
         addSetProperties( path );
 54  
         
 55  0
         addSetNext( path, "addMessenger",
 56  
            "org.apache.commons.messenger.Messenger"
 57  
         );        
 58  
 
 59  0
                 addMessengerPaths(path);
 60  
                 
 61  0
                 path = "manager/xaMessenger";    
 62  0
         addObjectCreate( path, xaMessengerClass, "className" );
 63  0
         addSetProperties( path );
 64  
         
 65  0
         addSetNext( path, "addMessenger",
 66  
            "org.apache.commons.messenger.Messenger"
 67  
         );        
 68  
 
 69  0
                 addMessengerPaths(path);
 70  0
     }
 71  
     
 72  
     protected void addMessengerPaths(String root) {
 73  
 
 74  0
                 String path = root + "/factory";        
 75  0
         addObjectCreate( path, sessionFactory, "className" );
 76  0
         addSetProperties( path );
 77  0
         addSetNext( path, "setSessionFactory",
 78  
            "org.apache.commons.messenger.SessionFactory"
 79  
         );
 80  0
         addCallMethod( path + "/property", "addProperty", 2);
 81  0
         addCallParam( path + "/property/name", 0 );
 82  0
         addCallParam( path + "/property/value", 1 );
 83  
         
 84  0
         path = root + "/factory/connectionFactory";       
 85  0
         addObjectCreate( path, connectionFactory, "className" );
 86  0
         addSetProperties( path );
 87  0
         addSetNext( path, "setConnectionFactory",
 88  
            "javax.jms.ConnectionFactory"
 89  
         );
 90  
 
 91  0
         path = root + "/jndi";        
 92  0
         addObjectCreate( path, jndiSessionFactory, "className" );
 93  0
         addSetProperties( path );
 94  
         
 95  0
         addSetNext( path, "setSessionFactory",
 96  
            "org.apache.commons.messenger.SessionFactory"
 97  
         );
 98  
                 
 99  0
         addCallMethod( path + "/property", "addProperty", 2);
 100  0
         addCallParam( path + "/property/name", 0 );
 101  0
         addCallParam( path + "/property/value", 1 );
 102  0
     }
 103  
 }