Changeset 246

Show
Ignore:
Timestamp:
03/01/06 23:04:29
Author:
douglm
Message:

Change restore to ensure date/time values have zero seconds

Change schema to set shorter lengths for dates and times.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/calendar3/calCore/resources/hbms/Event.hbm.xml

    r235 r246  
    4040                not-null="true" /> 
    4141      <property name="tzid" column="start_tzid" type="string" /> 
    42       <property name="dtval" column="start_dtval" type="string" 
     42      <property name="dtval" column="start_dtval" type="string" length="16" 
    4343                not-null="true" /> 
    44       <property name="date" column="start_date" type="string" 
     44      <property name="date" column="start_date" type="string" length="16" 
    4545                not-null="true" 
    4646                index="idx_event_start" /> 
     
    5353      <property name="dateType" column="end_date_type" type="true_false" /> 
    5454      <property name="tzid" column="end_tzid" type="string" /> 
    55       <property name="dtval" column="end_dtval" type="string" /> 
    56       <property name="date" column="end_date" type="string" 
     55      <property name="dtval" column="end_dtval" type="string" length="16" /> 
     56      <property name="date" column="end_date" type="string" length="16" 
    5757                index="idx_event_end" /> 
    5858    </component> 
     
    9696 
    9797    <property name="lastmod" type="string" > 
    98       <column name="lastmod" not-null="true" /> 
     98      <column name="lastmod" length="16" not-null="true" /> 
    9999    </property> 
    100100 
    101101    <property name="created" type="string"> 
    102       <column name="created" not-null="true" /> 
     102      <column name="created" length="16" not-null="true" /> 
    103103    </property> 
    104104 
  • trunk/calendar3/calCore/resources/hbms/EventAnnotation.hbm.xml

    r235 r246  
    4646                /> 
    4747      <property name="tzid" column="start_tzid" type="string" /> 
    48       <property name="dtval" column="start_dtval" type="string" 
     48      <property name="dtval" column="start_dtval" type="string" length="16" 
    4949                /> 
    50       <property name="date" column="start_date" type="string" 
     50      <property name="date" column="start_date" type="string" length="16" 
    5151                index="idx_eventann_start" /> 
    5252    </component> 
     
    5858      <property name="dateType" column="end_date_type" type="true_false" /> 
    5959      <property name="tzid" column="end_tzid" type="string" /> 
    60       <property name="dtval" column="end_dtval" type="string" /> 
    61       <property name="date" column="end_date" type="string" 
     60      <property name="dtval" column="end_dtval" type="string" length="16" /> 
     61      <property name="date" column="end_date" type="string" length="16" 
    6262                index="idx_eventann_end" /> 
    6363    </component> 
     
    9797 
    9898    <property name="lastmod" type="string" > 
    99       <column name="lastmod" /> 
     99      <column name="lastmod" length="16" /> 
    100100    </property> 
    101101 
    102102    <property name="created" type="string"> 
    103       <column name="created" /> 
     103      <column name="created" length="16" /> 
    104104    </property> 
    105105 
  • trunk/calendar3/dumprestore/src/org/bedework/dumprestore/restore/rules/EntityFieldRule.java

    r59 r246  
    250250    field(name); 
    251251  } 
     252   
     253  protected String fixedDateTimeFld() throws Exception { 
     254    String dtVal = stringFld(); 
     255    if ((dtVal.length() == 8) ||  
     256          ((dtVal.charAt(13) == '0') && (dtVal.charAt(14) == '0'))) { 
     257      return dtVal; 
     258    } 
     259     
     260    String prefix = dtVal.substring(0, 13); 
     261     
     262    if (dtVal.length() == 16) {  
     263       return prefix + "00Z";  
     264     } 
     265     
     266    return prefix + "00";  
     267  } 
    252268 
    253269  /** prehib to hib */ 
     
    300316 
    301317      String tmval = "T" + fldval.substring(0, 2) + fldval.substring(3, 5) + 
    302       fldval.substring(6, 8); 
     318      //fldval.substring(6, 8); 
     319      "00"; // seconds always 0 
    303320 
    304321      /* XXX We need to handle timezones here as well */ 
  • trunk/calendar3/dumprestore/src/org/bedework/dumprestore/restore/rules/EventFieldRule.java

    r59 r246  
    133133      tzid = stringFld(); 
    134134    } else if (name.equals("start-dtval")) { 
    135       dtVal = stringFld(); 
     135      dtVal = fixedDateTimeFld(); 
    136136    } else if (name.equals("start-date")) { 
    137137      // Could compare given UTC time 
     
    145145      tzid = stringFld(); 
    146146    } else if (name.equals("end-dtval")) { 
    147       dtVal = stringFld(); 
     147      dtVal = fixedDateTimeFld(); 
    148148    } else if (name.equals("end-date")) { 
    149149      // Could compare given UTC time