1 package net.stff.ical.beans;
2
3 import java.util.Date;
4 import java.util.HashSet;
5 import java.util.Iterator;
6 import java.util.Set;
7 import java.util.TreeSet;
8
9 /***
10 * Description of the Class
11 *
12 *@author buntekuh
13 *@created 1. März 2004
14 */
15 public class VCal{
16 Set events = new HashSet();
17
18
19 public VCal(){}
20
21
22
23
24
25 /***
26 * Sets the events attribute of the ICalendar object
27 *
28 *@param eventsParam The new events value
29 */
30 public void setEvents(Set events){
31 this.events = new HashSet();
32 this.events.addAll(events);
33 }
34
35
36
37
38
39
40 /***
41 * Gets the events attribute of the ICalendar object
42 *
43 *@return The events value
44 */
45 public Set getEvents(){
46 return events;
47 }
48
49 public void addEvent(VEvent event){
50 events.add(event);
51 }
52 public void removeEvent(VEvent event){
53 events.remove(event);
54 }
55
56 public Set getEventsForDate(Date start, Date end){
57 TreeSet dates = new TreeSet();
58 Iterator i = dates.iterator();
59
60 while (i.hasNext()){
61 VEvent event = (VEvent) i.next();
62
63 if ((event.getDtstart().compareTo(start) >= 0) && (event.getDtend().compareTo(end) <= 0)){
64
65 ;
66 }
67
68 dates.add(event);
69 }
70
71 return dates;
72 }
73
74 /***
75 * Description of the Method
76 *
77 *@return returns an Iterator for the list that stores the events
78 */
79 Iterator iterator(){
80 return events.iterator();
81 }
82
83 public String toString(){
84 StringBuffer buff = new StringBuffer();
85
86 buff.append("BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//stoffwechsel-dev.net/NONSGML Calendar V1.0\r\nX-WR-TIMEZONE:Europe/Berlin\r\nCALSCALE:GREGORIAN\r\nMETHOD:PUBLISH\r\n");
87
88 Iterator i = iterator();
89
90 while (i.hasNext()){
91 VEvent event = (VEvent) i.next();
92
93 buff.append(event.toString());
94 }
95
96 buff.append("END:VCALENDAR");
97
98 return buff.toString();
99 }
100 }