KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > calendar > model > EventInfo


1 // The contents of this file are subject to the Mozilla Public License Version
2
// 1.1
3
//(the "License"); you may not use this file except in compliance with the
4
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
5
//
6
//Software distributed under the License is distributed on an "AS IS" basis,
7
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
8
//for the specific language governing rights and
9
//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;
19
20 import org.columba.calendar.base.UUIDGenerator;
21 import org.columba.calendar.model.api.IEvent;
22 import org.columba.calendar.model.api.IEventInfo;
23 import org.columba.calendar.model.api.IComponent.TYPE;
24
25 public class EventInfo extends ComponentInfo implements IEventInfo {
26     
27     private IEvent event;
28     
29     public EventInfo(String JavaDoc id, String JavaDoc calendarId, IEvent event) {
30         super(id, TYPE.EVENT, calendarId, event);
31         this.event = event;
32     }
33     
34     public IEvent getEvent() {
35         return event;
36     }
37
38     /**
39      * @see java.lang.Object#clone()
40      */

41     @Override JavaDoc
42     protected Object JavaDoc clone() throws CloneNotSupportedException JavaDoc {
43         
44         // create new event with new UUID
45
String JavaDoc newId = new UUIDGenerator().newUUID();
46         
47         Event newEvent = new Event(newId);
48         // copy all attributes
49
newEvent.setDtStart(getEvent().getDtStart());
50         newEvent.setDtEnd(getEvent().getDtEnd());
51         newEvent.setDtStamp(getEvent().getDtStamp());
52         newEvent.setSummary(getEvent().getSummary());
53         newEvent.setLocation(getEvent().getLocation());
54         newEvent.setCalendar(getCalendar());
55
56         EventInfo eventInfo = new EventInfo(newId, getCalendar(), newEvent);
57
58         return eventInfo;
59     }
60     
61     /**
62      * @see org.columba.calendar.model.api.IEvent#createCopy()
63      */

64     public IEventInfo createCopy() {
65         try {
66             return (IEventInfo) clone();
67         } catch (CloneNotSupportedException JavaDoc e) {
68         }
69         return null;
70     }
71
72 }
73
Popular Tags