You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by pr...@apache.org on 2002/11/22 17:23:21 UTC

cvs commit: jakarta-commons-sandbox/periodicity/src/plugins-build/database/src/java/org/apache/commons/periodicity/database PeriodicityDriverService.java

prickett    2002/11/22 08:23:21

  Modified:    periodicity/src/plugins-build/database/src/java/org/apache/commons/periodicity/database
                        PeriodicityDriverService.java
  Log:
  Added implementations of the addDriver method and the initDrivers method in
  PeriodicityDriverService.java
  
  Revision  Changes    Path
  1.3       +88 -4     jakarta-commons-sandbox/periodicity/src/plugins-build/database/src/java/org/apache/commons/periodicity/database/PeriodicityDriverService.java
  
  Index: PeriodicityDriverService.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/periodicity/src/plugins-build/database/src/java/org/apache/commons/periodicity/database/PeriodicityDriverService.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- PeriodicityDriverService.java	25 Oct 2002 22:29:34 -0000	1.2
  +++ PeriodicityDriverService.java	22 Nov 2002 16:23:21 -0000	1.3
  @@ -64,6 +64,13 @@
   
   
   import java.io.File;
  +import java.io.FileInputStream;
  +import java.io.BufferedInputStream;
  +import java.util.Map;
  +import java.util.HashMap;
  +import javax.xml.parsers.SAXParserFactory;
  +import javax.xml.parsers.SAXParser;
  +import org.xml.sax.InputSource;
   import org.apache.velocity.VelocityContext;
   import org.apache.fulcrum.BaseService;
   import org.apache.fulcrum.InitializationException;
  @@ -74,6 +81,8 @@
   
       public static final String DATABASE_META_DATA_FILE_KEY = 
              "periodicity.db.meta.data.file";
  +    
  +    private Map drivers = null;
   
       public void init() throws InitializationException
       {
  @@ -138,12 +147,87 @@
        * uninitialized.
        * @param newDriver The new driver to add to the service.
        */
  -    void addDriver(DriverMetaData newDriver)
  +    void addDriver(DriverMetaData newDriver) 
  +           throws InitializationException
       {
  +        if(newDriver != null && newDriver.getName() != null && isInitialized())
  +        {
  +            if(drivers == null)
  +            {
  +                drivers = new HashMap();
  +            }
  +            drivers.put(newDriver.getName(), newDriver);
  +        }
  +        else if(newDriver == null)
  +        {
  +            throw new InitializationException("newDriver == null");
  +        }
  +        else if(newDriver.getName() == null)
  +        {
  +            throw new InitializationException("newDriver.getName() == null");
  +        }
  +        else if(!isInitialized())
  +        {
  +            throw new InitializationException("Service already initialized.");
  +        }
  +        else
  +        {
  +            throw new InitializationException("UNEXPECTED EXCEPTION");
  +        }    
       }
   
       private void initDrivers(File dbFile) throws InitializationException
       {
  +        if(dbFile != null)
  +        {
  +            SAXParserFactory factory = SAXParserFactory.newInstance();
  +            if(factory != null)
  +            {
  +                try
  +                {
  +                    SAXParser parser = factory.newSAXParser();
  +                    if(parser != null)
  +                    {
  +                        FileInputStream fin = new FileInputStream(
  +                        dbFile.getAbsolutePath());
  +                        BufferedInputStream fbin = new BufferedInputStream(fin);
  +                        InputSource isource = new InputSource(fbin);
  +                        DriverContentHandler dhandler = 
  +                               new DriverContentHandler();
  +                        parser.parse(isource, dhandler);
  +                    }
  +                    else if(parser == null)
  +                    {
  +                        throw new InitializationException("parser == null");
  +                    }
  +                    else
  +                    {
  +                        throw new InitializationException(
  +                               "UNEXPECTED EXCEPTION");
  +                    }
  +                }
  +                catch(Exception e)
  +                {
  +                    throw new InitializationException(e.toString());
  +                }    
  +            }
  +            else if(factory == null)
  +            {
  +                throw new InitializationException("factory == null");
  +            }
  +            else
  +            {
  +                throw new InitializationException("UNEXPECTED EXCEPTION");
  +            }
  +        }
  +        else if(dbFile == null)
  +        {
  +            throw new InitializationException("dbFile == null");
  +        }
  +        else
  +        {
  +            throw new InitializationException("UNEXPECTED EXCEPTION");
  +        }    
       } 
   
       public DriverMetaData getMetaData(String driverName) throws Exception
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>