Changeset 4152 for trunk


Ignore:
Timestamp:
2003-04-15T12:32:24+12:00 (21 years ago)
Author:
kjdon
Message:

there are now two optional init-params for the servlet: receptionist and messagerouter. These specify the class name of a recept or MR subclass to use instead of the normal ones

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl3/src/java/org/greenstone/gsdl3/LibraryServlet.java

    r3964 r4152  
    6868    config_vars.createXML();
    6969   
     70    converter_ = new XMLConverter();
     71    doc_ = converter_.newDOM();
     72
     73    // now try and create MR and recpt
    7074    // new message router - create it and pass reference to recept.
    7175    // the servlet wont use this directly
    72     MessageRouter message_router = new MessageRouter();
     76    String mr_name = (String)config.getInitParameter("messagerouter");
     77    MessageRouter message_router = null;
     78    if (mr_name == null) { // just use the normal MR
     79        message_router = new MessageRouter();
     80    } else { // try the specified one
     81        try {
     82        message_router = (MessageRouter)Class.forName("org.greenstone.gsdl3.core."+mr_name).newInstance();
     83        } catch (Exception e) { // cant use this new one, so use normal one
     84        System.out.println("LibraryServlet configure exception when trying to use a new MessageRouter "+mr_name+": "+e.getMessage());
     85        e.printStackTrace();
     86        message_router = new MessageRouter();
     87        }
     88       
     89    }
    7390    message_router.setSiteHome(GSFile.siteHome(config_vars.gsdl3_home_,
    74                             config_vars.site_name_));
     91                           config_vars.site_name_));
    7592    message_router.configure();
    76 
     93   
    7794    // the receptionist -the servlet will talk to this
    78     recept_ = new Receptionist();
     95    String recept_name = (String)config.getInitParameter("receptionist");
     96    if (recept_name == null) {
     97        recept_ = new Receptionist();
     98    } else {
     99        try {
     100        recept_ = (Receptionist)Class.forName("org.greenstone.gsdl3.core."+recept_name).newInstance();
     101        } catch (Exception e) { // cant use this new one, so use normal one
     102        System.out.println("LibraryServlet configure exception when trying to use a new Receptionist "+recept_name+": "+e.getMessage());
     103        e.printStackTrace();
     104        recept_ = new Receptionist();
     105        }
     106    }
    79107    recept_.setConfigVars(config_vars);
    80108    recept_.setMessageRouter(message_router);
    81109    recept_.configure();
    82 
    83     converter_ = new XMLConverter();
    84     doc_ = converter_.newDOM();
    85 
     110   
    86111    }
    87112   
Note: See TracChangeset for help on using the changeset viewer.