01: // The contents of this file are subject to the Mozilla Public License Version
02: // 1.1
03: //(the "License"); you may not use this file except in compliance with the
04: //License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
05: //
06: //Software distributed under the License is distributed on an "AS IS" basis,
07: //WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
08: //for the specific language governing rights and
09: //limitations under the License.
10: //
11: //The Original Code is "The Columba Project"
12: //
13: //The Initial Developers of the Original Code are Frederik Dietz and Timo
14: // Stich.
15: //Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
16: //
17: //All Rights Reserved.
18: package org.columba.calendar.model.api;
19:
20: import java.net.URL;
21:
22: /**
23: * Defines an iCalendar VTIMEZONE component.
24: * <p>
25: * <pre>
26: * 4.6.5 Time Zone Component
27: *
28: * Component Name: VTIMEZONE
29: *
30: * Purpose: Provide a grouping of component properties that defines a time zone.
31: *
32: * Formal Definition: A "VTIMEZONE" calendar component is defined by the
33: * following notation:
34: *
35: * timezonec = "BEGIN" ":" "VTIMEZONE" CRLF
36: *
37: * 2*(
38: * ; 'tzid' is required, but MUST NOT occur more ; than once
39: *
40: * tzid /
41: * ; 'last-mod' and 'tzurl' are optional, but MUST NOT occur more than once
42: *
43: * last-mod / tzurl /
44: * ; one of 'standardc' or 'daylightc' MUST occur ..; and each MAY occur more
45: * than once.
46: *
47: * standardc / daylightc /
48: * ; the following is optional, ; and MAY occur more than once
49: *
50: * x-prop
51: * )
52: *
53: * "END" ":" "VTIMEZONE" CRLF
54: *
55: * standardc = "BEGIN" ":" "STANDARD" CRLF
56: *
57: * tzprop
58: *
59: * "END" ":" "STANDARD" CRLF
60: *
61: * daylightc = "BEGIN" ":" "DAYLIGHT" CRLF
62: *
63: * tzprop
64: *
65: * "END" ":" "DAYLIGHT" CRLF
66: *
67: * tzprop = 3*(
68: * ; the following are each REQUIRED, ; but MUST NOT occur more than once
69: *
70: * dtstart / tzoffsetto / tzoffsetfrom /
71: * ; the following are optional, ; and MAY occur more than once
72: *
73: * comment / rdate / rrule / tzname / x-prop
74: * )
75: * </pre>
76: *
77: * @author fdietz
78: *
79: */
80: public interface ITimeZone extends IComponent {
81:
82: /**
83: * @return Returns the url.
84: */
85: public abstract URL getTZUrl();
86: }
|