morgand     01/08/22 14:40:39

  Modified:    latka/src/java/org/apache/commons/latka Latka.java
               latka/src/java/org/apache/commons/latka/xml
                        SuiteHandler.java ValidationReflectionHandler.java
  Added:       latka/src/java/org/apache/commons/latka LatkaProperties.java
  Log:
  Latka no longer stores its configuration in System properties
  
  Revision  Changes    Path
  1.6       +4 -87     
jakarta-commons/latka/src/java/org/apache/commons/latka/Latka.java
  
  Index: Latka.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/latka/src/java/org/apache/commons/latka/Latka.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Latka.java        2001/08/20 21:45:02     1.5
  +++ Latka.java        2001/08/22 21:40:39     1.6
  @@ -168,107 +168,24 @@
       transformer.transform(xmlSource,result);
     }
   
  -  /**
  -   * For an array of URLs, return the status code
  -   * (200, 404, etc) for each at the same index.  If
  -   * a URL cannot be reached or processed, then a -1
  -   * statuc code is assigned.
  -   *
  -   * @param urls   array of URLs which will be processed with the HTTP
  -   *               GET method
  -   * @return array of status codes (-1 for unreachable URLs)
  -   * @exception IOException
  -  public int[] getStatusCodes(URL[] urls) {
  -
  -    int numUrls = urls.length;
  -
  -    int[] codes = new int[numUrls];
  -
  -    for (int i = 0; i < numUrls; ++i) {
  -      try {
  -        codes[i] = getStatusCode(urls[i]);
  -      } catch (IOException e) {
  -        e.printStackTrace();
  -        codes[i] = -1;
  -      }
  -    }
  -
  -    return codes;
  -  }
  -
  -  */
  -
  -  /**
  -   * Return the status code (200, 404, etc) for a given url
  -   *
  -   * @param url    URL to access and retrieve a status code for
  -   * @return status code
  -  public int getStatusCode(URL url) throws IOException {
  -
  -    log.info("Enter: Latka::getStatusCode(URL)");
  -
  -    HttpClient client = new HttpClient();
  -
  -    log.debug("Getting status code for " + url);
  -
  -    client.startSession(url);
  -
  -    GetMethod opmethod = new GetMethod(url.getPath());
  -
  -    try {
  -      client.executeMethod(opmethod);
  -    } catch (HttpException t) {
  -      throw new IOException(t.toString());
  -    }
  -
  -    int statusCode = opmethod.getStatusCode();
  -
  -    client.endSession();
  -
  -    log.info("Exit: Latka::getStatusCode(url)");
  -
  -    return statusCode;
  -  }
  -   */
  -
     public static void main (String args[]) {
       
       Latka latka = new Latka();
  -
  -    latka.loadDefaultProps();
       
       String uri = args[0];
   
  +    Properties props = LatkaProperties.getProperties();
  +
       if (args.length > 1) {
  -      System.setProperty("latka.defaultHost",args[1]);
  +      props.setProperty("latka.defaultHost",args[1]);
         if (args.length > 2) {
  -        System.setProperty("latka.defaultPort",args[2]);
  +        props.setProperty("latka.defaultPort",args[2]);
         }
       }
   
       Suite suite = new Suite(uri);
       latka.runTests(suite);
     }
  -
  -  public void loadDefaultProps() {
  -    Properties properties = new Properties();
  -
  -    try {
  -      properties.load(ClassLoader.getSystemResourceAsStream("latka.properties"));
  -
  -      Enumeration e = properties.propertyNames();
  -      while (e.hasMoreElements()) {
  -        String name = (String) e.nextElement();
  -        if (System.getProperty(name) == null) {
  -          log.debug("setting property " + name + " to " + 
properties.getProperty(name));
  -          System.setProperty(name,properties.getProperty(name));
  -        }
  -      }
  -    } catch (Exception e) {
  -      System.out.println("Couldn't find latka.properties file in the classpath");
  -    }
  -  }
  -
   
   
   }
  
  
  
  1.1                  
jakarta-commons/latka/src/java/org/apache/commons/latka/LatkaProperties.java
  
  Index: LatkaProperties.java
  ===================================================================
  package org.apache.commons.latka;
  
  import java.io.IOException;
  import java.util.Properties;
  
  /**
   * Stores properties for Latka.  Backed by a ThreadLocal 
   * variable.
   */
  public class LatkaProperties {
  
    protected static Properties _initProps = loadDefaultProps();
  
    /**
     * This ThreadLocal is automatically instantiated per thread
     * with a Properties object containing the default properties.
     */
    protected static ThreadLocal _propsThreadLocal =
      new LatkaThreadLocal(_initProps);
  
    public static Properties getProperties() {
      return(Properties) _propsThreadLocal.get();
    }
  
    protected static Properties loadDefaultProps() {
      Properties properties  = new Properties();
  
      try {
        properties.load(ClassLoader.getSystemResourceAsStream("latka.properties"));
      } catch (IOException e) {
        System.out.println("Couldn't find latka.properties file in the classpath");
      }
  
      return properties;
  
    }
  
    private static class LatkaThreadLocal extends ThreadLocal {
  
      protected Properties _initProps = null;
  
      public LatkaThreadLocal(Properties initProps) {
        _initProps = initProps;
      }
  
      protected Object initialValue() {
        return _initProps.clone();
      }
  
    }
  
  }
  
  
  
  1.8       +9 -5      
jakarta-commons/latka/src/java/org/apache/commons/latka/xml/SuiteHandler.java
  
  Index: SuiteHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/latka/src/java/org/apache/commons/latka/xml/SuiteHandler.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SuiteHandler.java 2001/08/21 15:42:58     1.7
  +++ SuiteHandler.java 2001/08/22 21:40:39     1.8
  @@ -1,13 +1,15 @@
   package org.apache.commons.latka.xml;
   
  +import java.io.IOException;
  +
  +import java.util.Properties;
  +
  +import org.apache.commons.latka.LatkaProperties;
   import org.apache.commons.latka.event.*;
   import org.apache.commons.latka.http.SessionImpl;
   
  -import java.io.IOException;
  -
   import org.apache.log4j.Category;
   
  -
   import org.xml.sax.Attributes;
   import org.xml.sax.InputSource;
   import org.xml.sax.SAXException;
  @@ -34,11 +36,13 @@
   
       if (localName.equals("suite")) {
   
  +      Properties props = LatkaProperties.getProperties();
  +
         // create the client object
         _defaultHost =
  -        System.getProperty("latka.defaultHost", atts.getValue("defaultHost"));
  +        props.getProperty("latka.defaultHost", atts.getValue("defaultHost"));
   
  -      String portString = System.getProperty("latka.defaultPort");
  +      String portString = props.getProperty("latka.defaultPort");
         if (portString == null) {
           portString = atts.getValue("defaultPort");
         }
  
  
  
  1.6       +12 -12    
jakarta-commons/latka/src/java/org/apache/commons/latka/xml/ValidationReflectionHandler.java
  
  Index: ValidationReflectionHandler.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-commons/latka/src/java/org/apache/commons/latka/xml/ValidationReflectionHandler.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- ValidationReflectionHandler.java  2001/08/20 21:45:03     1.5
  +++ ValidationReflectionHandler.java  2001/08/22 21:40:39     1.6
  @@ -1,15 +1,5 @@
   package org.apache.commons.latka.xml;
   
  -import org.apache.commons.latka.event.LatkaEventInfo;
  -import org.apache.commons.latka.http.Request;
  -import org.apache.commons.latka.http.Response;
  -import org.apache.commons.latka.xml.LatkaHandler;
  -import org.apache.commons.latka.xml.ValidationHandler;
  -
  -import org.xml.sax.Attributes;
  -import org.xml.sax.SAXException;
  -import org.xml.sax.XMLReader;
  -
   import java.beans.Beans;
   
   import java.io.IOException;
  @@ -17,8 +7,18 @@
   import java.util.Enumeration;
   import java.util.Properties;
   
  +import org.apache.commons.latka.LatkaProperties;
  +import org.apache.commons.latka.event.LatkaEventInfo;
  +import org.apache.commons.latka.http.Request;
  +import org.apache.commons.latka.http.Response;
  +import org.apache.commons.latka.xml.LatkaHandler;
  +import org.apache.commons.latka.xml.ValidationHandler;
  +
   import org.apache.log4j.Category;
   
  +import org.xml.sax.Attributes;
  +import org.xml.sax.SAXException;
  +import org.xml.sax.XMLReader;
   
   public class ValidationReflectionHandler extends LatkaHandler {
   
  @@ -76,7 +76,7 @@
     }
   
     protected String tagNameToClass(String localName) throws SAXException {
  -    Properties props = System.getProperties();
  +    Properties props = LatkaProperties.getProperties();
       Enumeration e = props.propertyNames();
       while (e.hasMoreElements()) {
         String name = (String) e.nextElement();
  @@ -84,7 +84,7 @@
           int index = name.indexOf(_latkaPrefix) + _latkaPrefix.length();
           String tagName = name.substring(index,name.length());
           if (localName.equals(tagName)) {
  -          return System.getProperty(name);
  +          return props.getProperty(name);
           }
         }
       }
  
  
  

Reply via email to