001: // The contents of this file are subject to the Mozilla Public License Version
002: // 1.1
003: //(the "License"); you may not use this file except in compliance with the
004: //License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
005: //
006: //Software distributed under the License is distributed on an "AS IS" basis,
007: //WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
008: //for the specific language governing rights and
009: //limitations under the License.
010: //
011: //The Original Code is "The Columba Project"
012: //
013: //The Initial Developers of the Original Code are Frederik Dietz and Timo
014: // Stich.
015: //Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
016: //
017: //All Rights Reserved.
018: package org.columba.calendar.model.api;
019:
020: import java.net.URL;
021: import java.util.Calendar;
022:
023: /**
024: * Defines an iCalendar VEVENT component.
025: * <p>
026: *
027: * <pre>
028: * 4.6.1 Event Component
029: *
030: * Component Name: "VEVENT"
031: *
032: * Purpose: Provide a grouping of component properties that describe an event.
033: *
034: * Format Definition: A "VEVENT" calendar component is defined by the following
035: * notation:
036: *
037: * eventc = "BEGIN" ":" "VEVENT" CRLF eventprop *alarmc "END" ":" "VEVENT" CRLF
038: *
039: * eventprop = *( ; the following are optional, ; but MUST NOT occur more than
040: * once
041: *
042: * class / created / description / dtstart / geo / last-mod / location /
043: * organizer / priority / dtstamp / seq / status / summary / transp / uid / url /
044: * recurid / ; either 'dtend' or 'duration' may appear in ; a 'eventprop', but
045: * 'dtend' and 'duration' ; MUST NOT occur in the same 'eventprop'
046: *
047: * dtend / duration / ; the following are optional, ; and MAY occur more than
048: * once
049: *
050: * attach / attendee / categories / comment / contact / exdate / exrule /
051: * rstatus / related / resources / rdate / rrule / x-prop )
052: * </pre>
053: *
054: * @author fdietz
055: *
056: */
057: public interface IEvent extends IComponent, ICategoryList,
058: IAttachmentList {
059:
060: /**
061: * @return Returns the dtEnd.
062: */
063: public abstract Calendar getDtEnd();
064:
065: public abstract void setDtEnd(Calendar dtEnd);
066:
067: /**
068: * @return Returns the location.
069: */
070: public abstract String getLocation();
071:
072: public abstract void setLocation(String location);
073:
074: /**
075: * @return Returns the transsp.
076: */
077: public abstract String getTranssp();
078:
079: public abstract void setTranssp(String transsp);
080:
081: /**
082: * @return Returns the dtStart.
083: */
084: public abstract Calendar getDtStart();
085:
086: public abstract void setDtStart(Calendar dtStart);
087:
088: /**
089: * @return Returns the priority.
090: */
091: public abstract String getPriority();
092:
093: public abstract void setPriority(String priority);
094:
095: /**
096: * @return Returns the summary.
097: */
098: public abstract String getSummary();
099:
100: public abstract void setSummary(String summary);
101:
102: /**
103: * @return Returns the description.
104: */
105: public abstract String getDescription();
106:
107: public abstract void setDescription(String description);
108:
109: /**
110: * @return Returns the url.
111: */
112: public abstract URL getUrl();
113:
114: public abstract void setUrl(URL url);
115:
116: /**
117: * @return Returns the eventClass.
118: */
119: public abstract String getEventClass();
120:
121: public abstract void setEventClass(String eventClass);
122:
123: /**
124: * @return Returns the allDayEvent flag
125: */
126: public abstract boolean isAllDayEvent();
127:
128: public abstract void setAllDayEvent(boolean allDayEventFlag);
129:
130: /**
131: * @return Returns the status
132: */
133: public abstract String getStatus();
134:
135: public abstract void setStatus(String status);
136:
137: public abstract IRecurrence getRecurrence();
138:
139: public abstract void setRecurrence(IRecurrence recurrence);
140:
141: }
|