commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From prick...@apache.org
Subject cvs commit: jakarta-commons-sandbox/periodicity/src/xml periodicity-schema.xml
Date Sun, 24 Feb 2002 04:34:21 GMT
prickett    02/02/23 20:34:21

  Modified:    periodicity/src/java/org/apache/commons/periodicity/parameters
                        TZIDParam.java
               periodicity/src/java/org/apache/commons/periodicity/test/altrep
                        ValidAltRepTest.java
  Added:       periodicity/src/java/org/apache/commons/periodicity/test/tzidparam
                        ValidTZIDParamTest.java
               periodicity/src/java/org/apache/commons/periodicity/util
                        ICalendarTZIDConstants.java TZIDbase.java
               periodicity/src/xml periodicity-schema.xml
  Log:
  Changes and contributions made by Mike George javajoe2975@comcast.net
  
  TZIDParam - Added comments to regarding internal representation of Time Zones
  ValidAltRepTest - Added code to test for more than one type of valid uri.
  ICalendarTZIDConstants - Time Zone constant values. New File
  ValidTZIDbase.java - A file with time zone information that will eventually
                       become an iCalendar Time Zone object. New File
  ValidTZIDParamTest - A unit test file that sets and tests a valid Time Zone ID.
                       New File.
  
  Changes and contributions made by Jeff Prickett
  
  periodicity-schema.xml - A torque database dtd that will be used to generate
  peer objects.
  
  Revision  Changes    Path
  1.2       +107 -92   jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/parameters/TZIDParam.java
  
  Index: TZIDParam.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/parameters/TZIDParam.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- TZIDParam.java	12 Feb 2002 23:03:50 -0000	1.1
  +++ TZIDParam.java	24 Feb 2002 04:34:21 -0000	1.2
  @@ -1,92 +1,107 @@
  -/* ====================================================================
  - * The Apache Software License, Version 1.1
  - *
  - * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
  - * reserved.
  - *
  - * Redistribution and use in source and binary forms, with or without
  - * modification, are permitted provided that the following conditions
  - * are met:
  - *
  - * 1. Redistributions of source code must retain the above copyright
  - *    notice, this list of conditions and the following disclaimer.
  - *
  - * 2. Redistributions in binary form must reproduce the above copyright
  - *    notice, this list of conditions and the following disclaimer in
  - *    the documentation and/or other materials provided with the
  - *    distribution.
  - *
  - * 3. The end-user documentation included with the redistribution,
  - *    if any, must include the following acknowledgment:
  - *       "This product includes software developed by the
  - *        Apache Software Foundation (http://www.apache.org/)."
  - *    Alternately, this acknowledgment may appear in the software itself,
  - *    if and wherever such third-party acknowledgments normally appear.
  - *
  - * 4. The names "Apache" and "Apache Software Foundation" and
  - *     "Apache Jetspeed" must not be used to endorse or promote products
  - *    derived from this software without prior written permission. For
  - *    written permission, please contact apache@apache.org.
  - *
  - * 5. Products derived from this software may not be called "Apache" or
  - *    "Apache Jetspeed", nor may "Apache" appear in their name, without
  - *    prior written permission of the Apache Software Foundation.
  - *
  - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  - * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  - * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  - * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  - * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  - * SUCH DAMAGE.
  - * ====================================================================
  - *
  - * This software consists of voluntary contributions made by many
  - * individuals on behalf of the Apache Software Foundation.  For more
  - * information on the Apache Software Foundation, please see
  - * <http://www.apache.org/>.
  - */
  -
  -package org.apache.commons.periodicity.parameters;
  -
  -import org.apache.commons.periodicity.util.ICalendarException;
  -
  -/**
  - * The purpose of this class is to define the Time Zone Identifier
  - * Parameter in the iCalendar protocol (rfc2445)
  - * @author Jeff Prickett - jeffprickett@mindspring.com
  - */
  -
  -public class TZIDParam extends SingleStringParameter
  -{
  -
  -    public static final String TZID_DESIGNATOR = "TZID";
  -
  -    /**
  -     * This is the default constructor. It is used by Castor. You should
  -     * probably use the constructor that takes a String argument in your
  -     * application code.
  -     */
  -    public TZIDParam(){}
  -    
  -    /**
  -     * The purpose of this method is to create a new Time Zone ID parameter
  -     * with the given initial value
  -     * @param newval The initial value of the Time Zone ID Parameter as a 
  -     *               string.
  -     */
  -    public TZIDParam(String newval) throws ICalendarException
  -    {
  -        super(newval);
  -    }
  -
  -    public String toICal() throws ICalendarException
  -    {
  -        return toICal(TZID_DESIGNATOR);
  -    }    
  -}    
  +/* ====================================================================
  + * The Apache Software License, Version 1.1
  + *
  + * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer.
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Apache" and "Apache Software Foundation" and
  + *     "Apache Jetspeed" must not be used to endorse or promote products
  + *    derived from this software without prior written permission. For
  + *    written permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache" or
  + *    "Apache Jetspeed", nor may "Apache" appear in their name, without
  + *    prior written permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
  +package org.apache.commons.periodicity.parameters;
  +
  +import org.apache.commons.periodicity.util.ICalendarException;
  +
  +/**
  + * The purpose of this class is to define the Time Zone Identifier
  + * Parameter in the iCalendar protocol (rfc2445).
  + 
  + //-------------------------------------------------------
  + Added by Mike:
  + 
  + * Although RFC2445 does not specify a format for the time zone,
  + * for consistency, you should use the single letter identifiers
  + * A-I and K-Z for interal representation of the the time zone.
  + * See ../util/TZIDbase for instantiate, and  get/set methods.  See 
  + * ../util/ICalendarTZIDConstants for a set of default values
  + * including short name, long name, sample locales and offset
  + * from GMT.
  + 
  + //-------------------------------------------------------
  + 
  + * @author Jeff Prickett - jeffprickett@mindspring.com
  + */
  +
  +public class TZIDParam extends SingleStringParameter
  +{
  +
  +    public static final String TZID_DESIGNATOR = "TZID";
  +
  +    /**
  +     * This is the default constructor. It is used by Castor. You should
  +     * probably use the constructor that takes a String argument in your
  +     * application code.
  +     */
  +    public TZIDParam(){}
  +    
  +    /**
  +     * The purpose of this method is to create a new Time Zone ID parameter
  +     * with the given initial value
  +     * 
  +     * @param newval The initial value of the Time Zone ID Parameter as a 
  +     *               string.
  +     */
  +    public TZIDParam(String newval) throws ICalendarException
  +    {
  +        super(newval);
  +    }
  +
  +    public String toICal() throws ICalendarException
  +    {
  +        return toICal(TZID_DESIGNATOR);
  +    }    
  +}    
  
  
  
  1.2       +35 -4     jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/test/altrep/ValidAltRepTest.java
  
  Index: ValidAltRepTest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/test/altrep/ValidAltRepTest.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ValidAltRepTest.java	15 Feb 2002 07:14:23 -0000	1.1
  +++ ValidAltRepTest.java	24 Feb 2002 04:34:21 -0000	1.2
  @@ -56,21 +56,47 @@
   import org.apache.commons.periodicity.parameters.AltRep;
   import org.apache.commons.periodicity.util.ICalendarException;
   import junit.framework.TestCase;
  +import java.lang.reflect.Array;
   
   /**
    * This class tests to ensure that a URI passed into
    * the AltRep class (org\apache\commons\periodicity\parameters\AltRep)
    * is stored correctly and is valid when retrieved.
  - * @author Mike George 
  + * Some of the sample URIs were selected from
  + * RFC1630 "Universal Resource Identifiers in WWW" located
  + * at http://www.faqs.org/rfcs/rfc1630.html
  + * and RFC1738 "Uniform Resource Locators located
  + * at http://www.w3.org/Addressing/rfc1738.txt.
  + * @author Mike George
    * <a href="mailto:javajoe2975@comcast.net">javajoe2975@comcast.net</a>
    */
  +
   public class ValidAltRepTest extends TestCase
   {
  -    private static final String URI_VALUE = "mailto:javajoe2975@comcast.net";
  +    private static final String[] URI_VALUES = new String[]
  +    {
  +        "mailto:javajoe2975@comcast.com",
  +        "http://jakarta.apache.org",
  +        "ftp://ftp.apache.org/",
  +        "news://news.grc.com",
  +        "nntp://nntp.perl.org",
  +        "telnet://ax4.ppp.smu.edu",
  +        "wais://www.ncsa.uiuc.edu:8001",
  +        "http://info.cern.ch/albert/bertram/marie-claude",
  +        "http://info.cern.ch/albert/bertram/marie%2Dclaude",
  +        "http://info.cern.ch/albert/bertram/marie-claude",
  +        "http://info.cern.ch/albert/bertram%2Fmarie-claude",
  +        "http://info.cern.ch:8000/imaginary/test",
  +        "http://www.myu.edu/org/admin/people#andy",
  +        "http://info.my.org/AboutUs/Index/Phonebook?dobbins",
  +        "http://www.amazon.com/obidos/ASIN/052/qid=10928/sr=8-1/ref=sr_8_71_1/103-5734792-5447027",
  +        "file://c:/somedirectory/somefile.htm"
  +    };
   
       /**
         * This public constructor passes a String to the TestCase
         * constructor.
  +      * @param A name that helps uniquely identify the test, i.e. a date, test#.
         */
       public ValidAltRepTest(String name) throws Throwable
       {
  @@ -86,9 +112,14 @@
         */
       protected void setValidAltRep() throws ICalendarException
       {
  +        final int length = Array.getLength(URI_VALUES);
           AltRep testAltRep = new AltRep();
  -        testAltRep.setValue(URI_VALUE);
  -        assertEquals(testAltRep.getValue(), URI_VALUE);
  +
  +        for (int i = 0; i < length; i++)
  +        {
  +            testAltRep.setValue(URI_VALUES[i]);
  +            assertEquals(testAltRep.getValue(), URI_VALUES[i]);
  +        }
       }
   
       /**
  
  
  
  1.1                  jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/test/tzidparam/ValidTZIDParamTest.java
  
  Index: ValidTZIDParamTest.java
  ===================================================================
  /* ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   *     "Apache Jetspeed" must not be used to endorse or promote products
   *    derived from this software without prior written permission. For
   *    written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache" or
   *    "Apache Jetspeed", nor may "Apache" appear in their name, without
   *    prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  package org.apache.commons.periodicity.test.tzidparam;
  
  import org.apache.commons.periodicity.parameters.TZIDParam;
  import org.apache.commons.periodicity.util.ICalendarException;
  import junit.framework.TestCase;
  import java.lang.reflect.Array;
  
  /**
    * This class tests to ensure that valid inputs to the 
    * TZIDParam class can be set and retrieved correctly.  It
    * also tests to ensure that if a NULL value is entered, a
    * NULL value is returned.
    * @author Mike George
    * <a href="mailto:javajoe2975@comcast.net">javajoe2975@comcast.net</a>
    */
  public class ValidTZIDParamTest extends TestCase
  {
      private static final String[] VALUES = new String[]
      {
      "A", "B", "C", "PST", "MST", "CST", "GMT" 
      };
  
      /**
        * This public constructor passes a String to the TestCase
        * constructor.
        * @param A name that helps uniquely identify the test, i.e. a date, test#.
        */
      public ValidTZIDParamTest(String name) throws Throwable
      {
          super("ValidTZIDParamTest:" + name);
          runTest();
      }
  
      /**
        * This method tests the no-arg and one-arg constructors. 
        * For the no-arg constructor it tests both NULL input and
        * input using get/set methods.
        */
      protected void setValidTZIDParam() throws ICalendarException
      {
          final int length = Array.getLength(VALUES);
          
          //Test the no arg constructor alone
          TZIDParam first = new TZIDParam();
          assertEquals(first.getValue(), null);
          
           //Test with no-arg constructor, get/set methods
          for (int i = 0; i < length; i++)
          {
              TZIDParam second = new TZIDParam();
              second.setValue( VALUES[i]);
              assertEquals(second.getValue(), VALUES[i]);            
          }
  
          //Test the one arg constructor using a NULL value
          String s = null;
          TZIDParam third = new TZIDParam(s);
          assertEquals(third.getValue(), null);
          
          //Test the one-arg constructor
          for (int i = 0; i < length; i++)
          {
              TZIDParam fourth = new TZIDParam(VALUES[i]);
              assertEquals(fourth.getValue(), VALUES[i]);
          }
      }
  
      /**
        * This method runs the test.
        */
      protected void runTest() throws Throwable
      {
          setValidTZIDParam();
      }
  }
  
  
  
  1.1                  jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/util/ICalendarTZIDConstants.java
  
  Index: ICalendarTZIDConstants.java
  ===================================================================
  /* ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   *     "Apache Jetspeed" must not be used to endorse or promote products
   *    derived from this software without prior written permission. For
   *    written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache" or
   *    "Apache Jetspeed", nor may "Apache" appear in their name, without
   *    prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  
  package org.apache.commons.periodicity.util;
  
  import org.apache.commons.periodicity.util.TZIDbase;
  
  /**
    * This class maintains the constant values for time zones
    * A through Z, excluding J which is not a time zone.  The
    * information used to populate these fields is from a 
    * number of web sites including: 
    * <a href="http://www.timeanddate.com">Time and Date.com</a>,  
    * <a href="http://aa.usno.navy.mil">U.S. Navy Astronomical Observations
    * Department</a>
    * and the Encyclopedia Britannica World Atlas, 1991 (in Spanish).
    * Please note that none of these values are fixed and can 
    * be customized using the get and set methods found in the
    * TZIDbase class.
    * TODO: These dates are not "Daylight Savings Time"-aware.  Because
    * DST varies from state to state, in the U.S., and country to
    * country in the world, a large amount of research would have to be
    * done in order to fully implement this feature.
    * SUGGESTED WORKAROUND: Use the setFromGMT method in the TZIDbase
    * class to adjust for DST when appropriate.
    * @author Mike George
    * <a href="mailto:javajoe2975@comcast.net">javajoe2975@comcast.net</a>
    */
  public class ICalendarTZIDConstants
  {
      /** 
        * This constructor builds an instance of TZIDbase for
        * every time zone.
        */
      public ICalendarTZIDConstants() throws ICalendarException
      {
  
          //------------------------------------------------Set Time Zone Alpha
          TZIDbase alpha = new TZIDbase('A');
          alpha.setFromGMT("+1");
          alpha.setShortDescription("CET");
          alpha.setLongDescription("Central Europe Time");
          String[] alphaPlaces = { 
              "Africa/Algiers",    "Africa/Bangui",   "Africa/Brazzaville", 
              "Africa/Ceuta",      "Africa/Douala",   "Africa/Kinshasa", 
              "Africa/Lagos",      "Africa/Libreville", "Africa/Luanda", 
              "Africa/Malabo",     "Africa/Ndjamena", "Africa/Niamey", 
              "Africa/Porto-Novo", "Africa/Tunis",    "Arctic/Longyearbyen", 
              "Atlantic/Jan_Mayen","Etc/GMT-1",       "Europe/Amsterdam", 
              "Europe/Andorra",    "Europe/Belgrade", "Europe/Berlin", 
              "Europe/Bratislava", "Europe/Brussels", "Europe/Budapest", 
              "Europe/Copenhagen", "Europe/Gibraltar", "Europe/Ljubljana", 
              "Europe/Luxembourg", "Europe/Madrid",   "Europe/Malta", 
              "Europe/Monaco",     "Europe/Oslo",     "Europe/Paris", 
              "Europe/Prague",     "Europe/Rome",     "Europe/San_Marino", 
              "Europe/Sarajevo",   "Europe/Skopje",   "Europe/Stockholm", 
              "Europe/Tirane",     "Europe/Vaduz",    "Europe/Vatican", 
              "Europe/Vienna",     "Europe/Warsaw",   "Europe/Zagreb", 
              "Europe/Zurich",     "Poland"
          };
          alpha.setPlaces(alphaPlaces);
  
          //------------------------------------------------Set Time Zone Beta       
          TZIDbase beta = new TZIDbase('B');
              beta.setFromGMT("+2");
              beta.setShortDescription("EET");
              beta.setLongDescription("Eastern European Time");
              String[] betaPlaces = {
                  "Africa/Blantyre",  "Africa/Bujumbura", "Africa/Cairo", 
                  "Africa/Gaborone",  "Africa/Harare",    "Africa/Johannesburg", 
                  "Africa/Kigali",    "Africa/Lubumbashi", "Africa/Lusaka", 
                  "Africa/Maputo",    "Africa/Maseru",    "Africa/Mbabane", 
                  "Africa/Tripoli",   "Asia/Amman",       "Asia/Beirut", 
                  "Asia/Damascus",    "Asia/Gaza",        "Asia/Istanbul", 
                  "Asia/Jerusalem",   "Asia/Nicosia",     "Asia/Tel_Aviv", 
                  "Egypt",            "Etc/GMT-2",        "Europe/Athens", 
                  "Europe/Bucharest", "Europe/Chisinau",  "Europe/Helsinki", 
                  "Europe/Istanbul",  "Europe/Kaliningrad", "Europe/Kiev", 
                  "Europe/Minsk",     "Europe/Nicosia",   "Europe/Riga", 
                  "Europe/Simferopol","Europe/Sofia",    "Europe/Tallinn", 
                  "Europe/Tiraspol",  "Europe/Uzhgorod",  "Europe/Vilnius", 
                  "Europe/Zaporozhye","Israel",           "Libya",  
                  "Turkey"
              };
              beta.setPlaces(betaPlaces);
          
          //------------------------------------------------Set Time Zone Charlie       
          TZIDbase charlie = new TZIDbase('C');
              charlie.setFromGMT("+3");
              charlie.setShortDescription("MSK");
              charlie.setLongDescription("Moscow Time");
              String[] charliePlaces = {
                  "Africa/Addis_Ababa","Africa/Asmera",   "Africa/Dar_es_Salaam", 
                  "Africa/Djibouti",   "Africa/Kampala",  "Africa/Khartoum", 
                  "Africa/Mogadishu",  "Africa/Nairobi",  "Antarctica/Syowa", 
                  "Asia/Aden",         "Asia/Baghdad",    "Asia/Bahrain", 
                  "Asia/Kuwait",       "Asia/Qatar",      "Asia/Riyadh", 
                  "Etc/GMT-3",         "Europe/Moscow",   "Indian/Antananarivo", 
                  "Indian/Comoro",     "Indian/Mayotte"
              };
              charlie.setPlaces(charliePlaces);
          
          //------------------------------------------------Set Time Zone Delta       
          TZIDbase delta = new TZIDbase('D');
              delta.setFromGMT("+4");
              //.setShortDescription("");
              //.setLongDescription("");
              String[] deltaPlaces = {
                  "Asia/Aqtau", "Asia/Baku", "Asia/Dubai", 
                  "Asia/Muscat", "Asia/Tbilisi", "Asia/Yerevan", 
                  "Etc/GMT-4", "Europe/Samara", "Indian/Mahe", 
                  "Indian/Mauritius", "Indian/Reunion"
              };
              delta.setPlaces(deltaPlaces);
          
          //------------------------------------------------Set Time Zone Echo       
          TZIDbase echo = new TZIDbase('E');
              echo.setFromGMT("+5");
              //.setShortDescription("");
              //.setLongDescription("");
              String[] echoPlaces = {
                  "Asia/Aqtobe",  "Asia/Ashgabat",    "Asia/Ashkhabad", 
                  "Asia/Bishkek", "Asia/Dushanbe",    "Asia/Karachi", 
                  "Asia/Samarkand","Asia/Tashkent",   "Asia/Yekaterinburg", 
                  "Etc/GMT-5",    "Indian/Kerguelen", "Indian/Maldives"          
              };
              echo.setPlaces(echoPlaces);
  
          //------------------------------------------------Set Time Zone Foxtrot       
          TZIDbase foxtrot = new TZIDbase('F');
              foxtrot.setFromGMT("+6");
              //foxtrot.setShortDescription("");
              //foxtrot.setLongDescription("");
              String[] foxtrotPlaces = {
                  "Antarctica/Mawson", "Antarctica/Vostok", "Asia/Almaty", 
                  "Asia/Colombo", "Asia/Dacca", "Asia/Dhaka",
                  "Asia/Novosibirsk", "Asia/Omsk", "Asia/Thimbu", 
                  "Asia/Thimphu", "Etc/GMT-6", "Indian/Chagos"     
              };
              foxtrot.setPlaces( foxtrotPlaces);
  
          //------------------------------------------------Set Time Zone Golf       
          TZIDbase golf = new TZIDbase('G');
              golf.setFromGMT("+7");
              //golf.setShortDescription("");
              //golf.setLongDescription("");
              String[] golfPlaces = {
                  "Antarctica/Davis", "Asia/Bangkok",     "Asia/Hovd", 
                  "Asia/Jakarta",     "Asia/Krasnoyarsk", "Asia/Phnom_Penh", 
                  "Asia/Pontianak",   "Asia/Saigon",      "Asia/Vientiane", 
                  "Etc/GMT-7",        "Indian/Christmas"        
              };
              golf.setPlaces( golfPlaces);
  
          //------------------------------------------------Set Time Zone Hotel        
          TZIDbase hotel = new TZIDbase('H');
              hotel.setFromGMT("+8");
              hotel.setShortDescription("AWST");
              hotel.setLongDescription("Australia Western Standard Time");
              String[] hotelPlaces = {
                  "Antarctica/Casey", "Asia/Brunei",      "Asia/Chongqing", 
                  "Asia/Chungking",   "Asia/Harbin",      "Asia/Hong_Kong", 
                  "Asia/Irkutsk",     "Asia/Kashgar",     "Asia/Kuala_Lumpur", 
                  "Asia/Kuching",     "Asia/Macao",       "Asia/Manila", 
                  "Asia/Shanghai",    "Asia/Singapore",   "Asia/Taipei", 
                  "Asia/Ujung_Pandang","Asia/Ulaanbaatar","Asia/Ulan_Bator", 
                  "Asia/Urumqi",      "Australia/Perth",  "Australia/West", 
                  "Etc/GMT-8",        "Hongkong",         "PRC", 
                  "ROC", "Singapore"  
              };
              hotel.setPlaces( hotelPlaces);
  
          //------------------------------------------------Set Time Zone India        
          TZIDbase india = new TZIDbase('I');
              india.setFromGMT("+9");
              india.setShortDescription("ACST");
              india.setLongDescription("Australia Central Standard Time");
              String[] indiaPlaces = {
                  "Asia/Choibalsan",  "Asia/Dili",    "Asia/Jayapura", 
                  "Asia/Pyongyang",   "Asia/Seoul",   "Asia/Tokyo", 
                  "Asia/Yakutsk",     "Etc/GMT-9",    "Japan", 
                  "Pacific/Palau",    "ROK"
              };
              india.setPlaces( indiaPlaces);
  
          //------------------------------------------------Set Time Zone Kilo       
          TZIDbase kilo = new TZIDbase('K');
              kilo.setFromGMT("+10");
              kilo.setShortDescription("AEST");
              kilo.setLongDescription("Australia Eastern Standard Time");
              String[] kiloPlaces = {
                  "Antarctica/DumontDUrville", "Asia/Sakhalin", "Asia/Vladivostok", 
                  "Australia/Brisbane",   "Australia/Lindeman", "Australia/Queensland", 
                  "Etc/GMT-10",           "Pacific/Guam",     "Pacific/Port_Moresby", 
                  "Pacific/Saipan",       "Pacific/Truk",     "Pacific/Yap"
              };
              kilo.setPlaces( kiloPlaces);
  
          //------------------------------------------------Set Time Zone Lima       
          TZIDbase lima = new TZIDbase('L');
              lima.setFromGMT("+11");
              //lima.setShortDescription("");
              //lima.setLongDescription("");
              String[] limaPlaces = {
                  "Asia/Magadan",         "Etc/GMT-11",       "Pacific/Efate", 
                  "Pacific/Guadalcanal",  "Pacific/Kosrae",   "Pacific/Noumea", 
                  "Pacific/Ponape"      
              };
              lima.setPlaces( limaPlaces);
  
          //------------------------------------------------Set Time Zone Mike        
          TZIDbase mike = new TZIDbase('M');
              mike.setFromGMT("+12");
              //mike.setShortDescription("");
              //mike.setLongDescription("");
              String[] mikePlaces = {
                  "Asia/Anadyr",      "Asia/Kamchatka",   "Etc/GMT-12", 
                  "Kwajalein",        "Pacific/Fiji",     "Pacific/Funafuti", 
                  "Pacific/Kwajalein","Pacific/Majuro",   "Pacific/Nauru", 
                  "Pacific/Tarawa",   "Pacific/Wake",     "Pacific/Wallis"         
              };
              mike.setPlaces( mikePlaces);
  
          //------------------------------------------------Set Time Zone November       
          TZIDbase november = new TZIDbase('N');
              november.setFromGMT("-1");
              //november.setShortDescription("");
              //november.setLongDescription("");
              String[] novemberPlaces = {
                  "America/Scoresbysund", 
                  "Atlantic/Azores",
                  "Atlantic/Cape_Verde",
                  "Etc/GMT-1"  
              };
              november.setPlaces( novemberPlaces);
  
          //------------------------------------------------Set Time Zone Oscar        
          TZIDbase oscar = new TZIDbase('O');
              oscar.setFromGMT("-2");
              //oscar.setShortDescription("");
              //oscar.setLongDescription("");
              String[] oscarPlaces = {
                  "America/Noronha", "Atlantic/South_Georgia", "Brazil/DeNoronha", 
                  "Etc/GMT-2"            
              };
              oscar.setPlaces( oscarPlaces);
  
          //------------------------------------------------Set Time Zone Papa        
          TZIDbase papa = new TZIDbase('P');
              papa.setFromGMT("-3");
              //papa.setShortDescription("");
              //papa.setLongDescription("");
              String[] papaPlaces = {
                  "America/Araguaina", "America/Belem",   "America/Buenos_Aires", 
                  "America/Catamarca", "America/Cayenne", "America/Cordoba", 
                  "America/Fortaleza", "America/Godthab", "America/Jujuy", 
                  "America/Maceio",    "America/Mendoza", "America/Miquelon",
                  "America/Montevideo","America/Paramaribo", "America/Recife",
                  "America/Rosario",   "America/Sao_Paulo", "Brazil/East",
                  "Etc/GMT-3"
             };
              papa.setPlaces( papaPlaces);
  
          //------------------------------------------------Set Time Zone Quebec       
          TZIDbase quebec = new TZIDbase('Q');
              quebec.setFromGMT("-4");
              quebec.setShortDescription("AST");
              quebec.setLongDescription("Atlantic Standard Time");
              String[] quebecPlaces = {
                  "America/Anguilla",     "America/Antigua",      "America/Aruba", 
                  "America/Barbados",     "America/Boa_Vista",    "America/Caracas", 
                  "America/Cuiaba",       "America/Curacao",      "America/Dominica", 
                  "America/Glace_Bay",    "America/Goose_Bay",    "America/Grenada", 
                  "America/Guadeloupe",   "America/Guyana",       "America/Halifax", 
                  "America/La_Paz",       "America/Manaus",       "America/Martinique", 
                  "America/Montserrat",   "America/Port_of_Spain", "America/Porto_Velho", 
                  "America/Puerto_Rico",  "America/Santo_Domingo", "America/St_Kitts", 
                  "America/St_Lucia",     "America/St_Thomas",    "America/St_Vincent", 
                  "America/Thule",        "America/Tortola",      "America/Virgin", 
                  "Atlantic/Bermuda",     "Brazil/West",          "Canada/Atlantic", 
                  "Etc/GMT-4" 
              };
              quebec.setPlaces( quebecPlaces);
  
          //------------------------------------------------Set Time Zone Romeo       
          TZIDbase romeo = new TZIDbase('R');
              romeo.setFromGMT("-5");
              romeo.setShortDescription("EST");
              romeo.setLongDescription("Eastern Standared Time");
              String[] romeoPlaces = {
                  "America/Bogota",       "America/Cayman",       "America/Detroit", 
                  "America/Eirunepe",     "America/Fort_Wayne",   "America/Grand_Turk", 
                  "America/Guayaquil",    "America/Havana",       "America/Indiana/Indianapolis",     "America/Indiana/Knox", "America/Indiana/Marengo",          "America/Indiana/Vevay", 
                  "America/Indianapolis", "America/Iqaluit",      "America/Jamaica", 
                  "America/Kentucky/Louisville", "America/Kentucky/Monticello",  
                  "America/Lima",         "America/Louisville",   "America/Montreal", 
                  "America/Nassau",       "America/New_York",     "America/Nipigon", 
                  "America/Panama",       "America/Pangnirtung",  "America/Port-au-Prince", 
                  "America/Porto_Acre",   "America/Rio_Branco",   "America/Thunder_Bay", 
                  "Brazil/Acre",          "Canada/Eastern",       "Cuba", 
                  "Etc/GMT-5",            "Jamaica",              "US/East-Indiana",      "America/Knox_IN",      "US/Indiana-Starke",    "US/Michigan"
              };
              romeo.setPlaces( romeoPlaces);
  
          //------------------------------------------------Set Time Zone Sierra       
          TZIDbase sierra = new TZIDbase('S');
              sierra.setFromGMT("-6");
              sierra.setShortDescription("CST");
              sierra.setLongDescription("Central Standard Time");
              String[] sierraPlaces = {
                  "America/Belize",       "America/Cancun",       "America/Chicago", 
                  "America/Costa_Rica",   "America/El_Salvador",  "America/Guatemala", 
                  "America/Managua",      "America/Menominee",    "America/Merida", 
                  "America/Mexico_City",  "America/Monterrey",    "America/North_Dakota/Center", 
                  "America/Rainy_River",  "America/Rankin_Inlet", "America/Regina", 
                  "America/Swift_Current","America/Tegucigalpa",  "America/Winnipeg", 
                  "Canada/Central",       "Canada/East-Saskatchewan", "Canada/Saskatchewan", 
                  "Etc/GMT-6",            "Mexico/General",       "Pacific/Galapagos", 
                  "US/Central"
              };
              sierra.setPlaces( sierraPlaces);
  
          //------------------------------------------------Set Time Zone Tango        
          TZIDbase tango = new TZIDbase('T');
              tango.setFromGMT("-7");
              tango.setShortDescription("MST");
              tango.setLongDescription("Mountain Standard Time");
              String[] tangoPlaces = {
                  "America/Boise",        "America/Cambridge_Bay","America/Chihuahua", 
                  "America/Dawson_Creek", "America/Denver",       "America/Edmonton", 
                  "America/Hermosillo",   "America/Inuvik",       "America/Mazatlan", 
                  "America/Phoenix",      "America/Shiprock",     "America/Yellowknife",            "Canada/Mountain",      "Etc/GMT+7",            "Mexico/BajaSur", 
                  "Navajo", "US/Arizona", "US/Mountain"
              };
              tango.setPlaces( tangoPlaces);
  
          //------------------------------------------------Set Time Zone Uniform       
          TZIDbase uniform = new TZIDbase('U');
              uniform.setFromGMT("-8");
              uniform.setShortDescription("PST");
              uniform.setLongDescription("Pacific Standard Time");
              String[] uniformPlaces = {
                  "America/Dawson",   "America/Ensenada",     "America/Los_Angeles", 
                  "America/Tijuana",  "America/Vancouver",    "America/Whitehorse", 
                  "Canada/Pacific",   "Canada/Yukon",         "Etc/GMT-8", 
                  "Mexico/BajaNorte", "Pacific/Pitcairn",     "US/Pacific" 
              };
              uniform.setPlaces( uniformPlaces);
  
          //------------------------------------------------Set Time Zone Victor       
          TZIDbase victor = new TZIDbase('V');
              victor.setFromGMT("-9");
              victor.setShortDescription("AKST");
              victor.setLongDescription("Alaska Standard Time");
              String[] victorPlaces = {
                  "America/Anchorage", "America/Juneau", "America/Nome", 
                  "America/Yakutat", "Etc/GMT-9", "Pacific/Gambier", 
                  "US/Alaska"
              };
              victor.setPlaces( victorPlaces);
       
          //------------------------------------------------Set Time Zone Whiskey       
          TZIDbase whiskey = new TZIDbase('W');
              whiskey.setFromGMT("-10");
              whiskey.setShortDescription("HST");
              whiskey.setLongDescription("Hawaiian Standard Time");
              String[] whiskeyPlaces = {
                  "America/Adak", "America/Atka",         "Etc/GMT-10", 
                  "HST",          "Pacific/Fakaofo",      "Pacific/Honolulu", 
                  "Pacific/Johnston", "Pacific/Rarotonga","Pacific/Tahiti", 
                  "US/Aleutian",  "US/Hawaii"
              };
              whiskey.setPlaces( whiskeyPlaces);
  
          //------------------------------------------------Set Time Zone Xray       
          TZIDbase xray = new TZIDbase('X');
              xray.setFromGMT("-11");
              //xray.setShortDescription("");
              //xray.setLongDescription("");
              String[] xrayPlaces = {
                  "Etc/GMT-11",   "Pacific/Apia",     "Pacific/Midway", 
                  "Pacific/Niue", "Pacific/Pago_Pago","Pacific/Samoa", 
                  "US/Samoa" 
              };
              xray.setPlaces( xrayPlaces);
  
          //------------------------------------------------Set Time Zone Yankee       
          TZIDbase yankee = new TZIDbase('Y');
              yankee.setFromGMT("-12");
              //yankee.setShortDescription("");
              //yankee.setLongDescription("");
              String[] yankeePlaces = {
                  "Etc/GMT-12"           
              };
              yankee.setPlaces( yankeePlaces);
         //------------------------------------------------Set Time Zone Zulu       
          TZIDbase zulu = new TZIDbase('Z');
              zulu.setFromGMT("-1");
              zulu.setShortDescription("GMT");
              zulu.setLongDescription("Greenwich Mean Time");
              String[] zuluPlaces = {
                  "Africa/Abidjan",   "Africa/Accra",     "Africa/Bamako", 
                  "Africa/Banjul",    "Africa/Bissau",    "Africa/Casablanca", 
                  "Africa/Conakry",   "Africa/Dakar",     "Africa/El_Aaiun", 
                  "Africa/Freetown",  "Africa/Lome",      "Africa/Monrovia", 
                  "Africa/Nouakchott", "Africa/Ouagadougou", "Africa/Sao_Tome", 
                  "Africa/Timbuktu",  "America/Danmarkshavn","Atlantic/Canary", 
                  "Atlantic/Faeroe",  "Atlantic/Madeira", "Atlantic/Reykjavik", 
                  "Atlantic/St_Helena", "Eire",           "Etc/GMT", 
                  "Europe/Belfast",   "Europe/Dublin",    "Europe/Lisbon", 
                  "Europe/London",    "Greenwich",        "Iceland", 
                  "Portugal" 
              };
              zulu.setPlaces( zuluPlaces);
      } //Close no-arg constructor
  }
  
  
  
  1.1                  jakarta-commons-sandbox/periodicity/src/java/org/apache/commons/periodicity/util/TZIDbase.java
  
  Index: TZIDbase.java
  ===================================================================
  /* ====================================================================
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2000-2002 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Apache" and "Apache Software Foundation" and
   *     "Apache Jetspeed" must not be used to endorse or promote products
   *    derived from this software without prior written permission. For
   *    written permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache" or
   *    "Apache Jetspeed", nor may "Apache" appear in their name, without
   *    prior written permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  
  package org.apache.commons.periodicity.util;
  
  import org.apache.commons.periodicity.util.ICalendarException;
  
  /**
   * This class creates Time Zone Identifier objects that are used
   * in the ../periodicity/util/ICalendarTZIDConstants class 
   * and in the ../periodicity/parameters/TZIDParam class.
   * @author Mike George
   * <a href="mailto:javajoe2975@comcast.net">javajoe2975@comcast.net</a>
   */
  public class TZIDbase
  {
      private String timeZone;
      private String fromGMT;
      private String shortDescription;
      private String longDescription;
      private String[] places;
  
      /** 
       * This no-arg constructor is for testing purposes.
       * You should use the one-arg constructor below.
       */
      public TZIDbase()
      {
          timeZone = "Z";
          fromGMT = "NOT SET";
          shortDescription = "NOT SET";
          longDescription = "NOT SET";
          String[] places = { "NOT SET" };
      }
      
      /**
       * This constructor uses the timeZoneLetter parameter
       * to initialize the time zone.  All other parameters
       * are set to "NOT SET" by default.  These must be changed
       * using the set/get methods.  Note that the char param is
       * converted to a String when it is assigned to the timeZone variable.
       * @param timeZoneLetter A single letter indicating the time zone. Note
       * that 'J' is not a valid time zone.  Valid time zones include
       * 'A'-'I' and 'K'- 'Z'.
       */
      public TZIDbase(char timeZoneLetter) throws ICalendarException
      {
          //Set input to uppercase
          timeZoneLetter = Character.toUpperCase(timeZoneLetter);
      
          //Test for valid input
          if ( (Character.isLetter(timeZoneLetter)) && (timeZoneLetter != 'J') )
          {
              //Note the conversion to String here.
              timeZone = "" + timeZoneLetter;
          }
          else 
          {
              throw new ICalendarException("TimeZone Value invalid.");
          }
          
          fromGMT = "NOT SET";
          shortDescription = "NOT SET";
          longDescription = "NOT SET";
          String[] places = { "NOT SET" };
      }
      
      /**
       * This method sets the value of the offset from GMT.
       * It should be a positive or negative number ranging
       * from -12 to +12. (Special cases are not yet included.)
       * @param A String indicating positive or negative offset 
       * in hours from GMT.
       */
      public void setFromGMT(String hours)
      {
          fromGMT = hours;
      }
      
      /** 
       * This method gets the time zone offset.
       * @return The offset from GMT for this time zone in hours.
       */
      public String getFromGMT()
      {
          return fromGMT;
      }
      
      /** 
       * This method sets the short description that
       * accompanies the the time zone.  For example,
       * time zone 'R' is also known as "EST"
       * @param A three or four letter abbreviation of the time zone 
       */
      public void setShortDescription(String shortDesc)
      {
          shortDescription = shortDesc;
      }
      
      /**
       * This method gets the short description of the 
       * time zone.
       * @return The short description of the time zone.
       */
      public String getShortDescription()
      {
          return shortDescription;
      }
      
      /** 
       * This method sets the long description that
       * accompanies the the time zone.  For example,
       * time zone 'R' is also known as "Eastern Standard Time"
       * @param A phrase that describes the time zone. 
       */
      public void setLongDescription(String longDesc)
      {
          longDescription = longDesc;
      }
      
      /**
       * This method gets the long description of the 
       * time zone.
       * @return The long description of the time zone.
       */
      public String getLongDescription()
      {
          return longDescription;
      }
      
      /**
       * This method sets the String[] array that holds the list
       * of places that are found in the time zone.
       * @param A String[] holding a list of cities, countries, and places
       * found in this time zone.
       */
      public void setPlaces(String[] somePlaces)
      {
          places = somePlaces;
      }
      
      /**
       * This method returns the list of places associated with
       * this time zone.
       */
      public String[] getPlaces()
      {
          return places;
      }
  }
      
      
      
   
  
  
  
  1.1                  jakarta-commons-sandbox/periodicity/src/xml/periodicity-schema.xml
  
  Index: periodicity-schema.xml
  ===================================================================
  <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
  <!DOCTYPE database SYSTEM
   "http://jakarta.apache.org/turbine/dtd/database.dtd">
  
  <database name="periodicity" defaultIdBroker="idbroker">
     <table name="periodicity_vevents" description="Events">
        <column name="id"
                required="true"
                primaryKey="true"
                type="INTEGER"
                description="Primary Key Field"/>
        <column name="classification"
                type="VARCHAR"
                size="15"
                description="Classification"/>
        <column name="date_created"
                type="BIGINT"
                description="Creation date"/>
        <column name="description"
                type="TEXT"
                description="Description"/>
        <column name="dtstart_date_time"
                type="BIGINT"
                description="Start Date and Time"/>
        <column name="dtstart_date"
                type="BIGINT"
                description="Start Date Only"/>
        <column name="geo_latitude"
                type="FLOAT"
                description="Latitude"/>
        <column name="geo_longitude"
                type="FLOAT"
                description="Longitude"/>
        <column name="last_modified"
                type="BIGINT"
                description="Date of the last modification of the event"/>
        <column name="location"
                type="TEXT"
                description="Description"/>
        <column name="organizer"
                type="VARCHAR"
                size="80"
                description="Organizer"/>
        <column name="priority"
                type="INTEGER"
                description="Priority"/>
        <column name="dtstamp"
                type="BIGINT"
                description="Date Time Stamp"/>
        <column name="sequence"
                type="INTEGER"
                description="Sequence"/>
        <column name="status"
                type="VARCHAR"
                size="15"
                description="Status"/>
        <column name="summary"
                type="VARCHAR"
                size="80"
                description="Summary"/>
        <column name="transparency"
                type="VARCHAR"
                size="14"
                description="Transparency"/>
        <column name="unique_id"
                type="VARCHAR"
                size="100"
                description="Unique ID"/>
        <column name="url"
                type="VARCHAR"
                size="80"
                description="URL"/>
        <column name="recur_id_date_time"
                type="BIGINT"
                description="Recurrence ID Date and Time"/>
        <column name="recur_id_date"
                type="BIGINT"
                description="Recurrence ID Date"/>
        <column name="dtend_date_time"
                type="BIGINT"
                description="End Date and Time"/>
        <column name="dtend_date"
                type="BIGINT"
                description="End Date"/>
        <column name="duration"
                type="INTEGER"
                description="Duration"/>
        <column name="desc_alt_rep"
                type="VARCHAR"
                size="80"
                description="An alternate represenation for the description"/>
        <column name="desc_lang"
                type="VARCHAR"
                size="10"
                description="Description Language"/>
        <column name="location_alt_rep"
                type="VARCHAR"
                size="80"
                description="An alternate represenation for the location"/>
        <column name="location_lang"
                type="VARCHAR"
                size="10"
                description="Location Language"/>
        <column name="dtstart_tzid"
                type="VARCHAR"
                size="80"
                description="The Time Zone ID for the Start Time"/>
        <column name="organizer_name"
                type="VARCHAR"
                size="80"
                description="Organizer's Name"/>
        <column name="organizer_dir"
                type="VARCHAR"
                size="80"
                description="Organizer's Directory"/>
        <column name="organizer_lang"
                type="VARCHAR"
                size="10"
                description="Organizer's Language"/>
        <column name="summary_alt_rep"
                type="VARCHAR"
                size="80"
                description="Alternate Represenation for the Summary"/>
        <column name="summary_lang"
                type="VARCHAR"
                size="10"
                description="The Language of the Summary"/>
        <column name="recur_id_tzid"
                type="BIGINT"
                description="Recurrence ID Time Zone ID"/>
        <column name="recur_id_range"
                type="VARCHAR"
                size="16"
                description="Recurrence ID Range"/>
        <column name="dtend_tzid"
                type="VARCHAR"
                size="80"
                description="End Time Time Zone ID"/>
     </table>
     <table name="periodicity_todos" defaultIdMethod="idbroker">
        <column name="id"
                required="true"
                primaryKey="true"
                type="INTEGER"
                description="Primary Key Field"/>
        <column name="classification"
                type="VARCHAR"
                size="15"
                description="Classification"/>
        <column name="date_created"
                type="BIGINT"
                description="Creation date"/>
        <column name="description"
                type="TEXT"
                description="Description"/>
        <column name="dtstart_date_time"
                type="BIGINT"
                description="Start Date and Time"/>
        <column name="dtstart_date"
                type="BIGINT"
                description="Start Date Only"/>
        <column name="geo_latitude"
                type="FLOAT"
                description="Latitude"/>
        <column name="geo_longitude"
                type="FLOAT"
                description="Longitude"/>
        <column name="last_modified"
                type="BIGINT"
                description="Date of the last modification of the event"/>
        <column name="location"
                type="TEXT"
                description="Description"/>
        <column name="organizer"
                type="VARCHAR"
                size="80"
                description="Organizer"/>
        <column name="priority"
                type="INTEGER"
                description="Priority"/>
        <column name="dtstamp"
                type="BIGINT"
                description="Date Time Stamp"/>
        <column name="sequence"
                type="INTEGER"
                description="Sequence"/>
        <column name="status"
                type="VARCHAR"
                size="15"
                description="Status"/>
        <column name="summary"
                type="VARCHAR"
                size="80"
                description="Summary"/>
        <column name="unique_id"
                type="VARCHAR"
                size="100"
                description="Unique ID"/>
        <column name="url"
                type="VARCHAR"
                size="80"
                description="URL"/>
        <column name="recur_id_date_time"
                type="BIGINT"
                description="Recurrence ID Date and Time"/>
        <column name="recur_id_date"
                type="BIGINT"
                description="Recurrence ID Date"/>
        <column name="due_date_time"
                type="BIGINT"
                description="Due Date and Time"/>
        <column name="due_date"
                type="BIGINT"
                description="Due End Date"/>
        <column name="duration"
                type="INTEGER"
                description="Duration"/>
        <column name="desc_alt_rep"
                type="VARCHAR"
                size="80"
                description="An alternate represenation for the description"/>
        <column name="desc_lang"
                type="VARCHAR"
                size="10"
                description="Description Language"/>
        <column name="location_alt_rep"
                type="VARCHAR"
                size="80"
                description="An alternate represenation for the location"/>
        <column name="location_lang"
                type="VARCHAR"
                size="10"
                description="Location Language"/>
        <column name="dtstart_tzid"
                type="VARCHAR"
                size="80"
                description="The Time Zone ID for the Start Time"/>
        <column name="organizer_name"
                type="VARCHAR"
                size="80"
                description="Organizer's Name"/>
        <column name="organizer_dir"
                type="VARCHAR"
                size="80"
                description="Organizer's Directory"/>
        <column name="organizer_lang"
                type="VARCHAR"
                size="10"
                description="Organizer's Language"/>
        <column name="summary_alt_rep"
                type="VARCHAR"
                size="80"
                description="Alternate Represenation for the Summary"/>
        <column name="summary_lang"
                type="VARCHAR"
                size="10"
                description="The Language of the Summary"/>
        <column name="recur_id_tzid"
                type="BIGINT"
                description="Recurrence ID Time Zone ID"/>
        <column name="recur_id_range"
                type="VARCHAR"
                size="16"
                description="Recurrence ID Range"/>
        <column name="due_tzid"
                type="VARCHAR"
                size="80"
                description="End Time Time Zone ID"/>
        <column name="percent"
                type="INTEGER"
                description="Percent Complete"/>
        <column name="date_completed"
                type="BIGINT"
                description="Date Completed"/>
     </table>
  </database>   
  
  
  

--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@jakarta.apache.org>


Mime
View raw message