View Javadoc

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  	 *  header:
22  	 *  void setEvents(Vector eventsParam);
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  	 *  header:
37  	 *  Vector getEvents() const;
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  				//TODO
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 }