KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > ivata > groupware > business > calendar > Calendar


1 /*
2  * Copyright (c) 2001 - 2005 ivata limited.
3  * All rights reserved.
4  * -----------------------------------------------------------------------------
5  * ivata groupware may be redistributed under the GNU General Public
6  * License as published by the Free Software Foundation;
7  * version 2 of the License.
8  *
9  * These programs are free software; you can redistribute them and/or
10  * modify them under the terms of the GNU General Public License
11  * as published by the Free Software Foundation; version 2 of the License.
12  *
13  * These programs are distributed in the hope that they will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
16  *
17  * See the GNU General Public License in the file LICENSE.txt for more
18  * details.
19  *
20  * If you would like a copy of the GNU General Public License write to
21  *
22  * Free Software Foundation, Inc.
23  * 59 Temple Place - Suite 330
24  * Boston, MA 02111-1307, USA.
25  *
26  *
27  * To arrange commercial support and licensing, contact ivata at
28  * http://www.ivata.com/contact.jsp
29  * -----------------------------------------------------------------------------
30  * $Log: Calendar.java,v $
31  * Revision 1.3 2005/04/10 20:09:40 colinmacleod
32  * Added new themes.
33  * Changed id type to String.
34  * Changed i tag to em and b tag to strong.
35  * Improved PicoContainerFactory with NanoContainer scripts.
36  *
37  * Revision 1.2 2005/04/09 17:19:16 colinmacleod
38  * Changed copyright text to GPL v2 explicitly.
39  *
40  * Revision 1.1.1.1 2005/03/10 17:47:40 colinmacleod
41  * Restructured ivata op around Hibernate/PicoContainer.
42  * Renamed ivata groupware.
43  *
44  * Revision 1.4 2004/11/12 18:17:26 colinmacleod
45  * Ordered imports.
46  *
47  * Revision 1.3 2004/11/12 16:08:08 colinmacleod
48  * Removed dependencies on SSLEXT.
49  * Moved Persistence classes to ivata masks.
50  *
51  * Revision 1.2 2004/07/13 19:42:12 colinmacleod
52  * Moved project to POJOs from EJBs.
53  * Applied PicoContainer to services layer (replacing session EJBs).
54  * Applied Hibernate to persistence layer (replacing entity EJBs).
55  *
56  * Revision 1.1 2004/03/27 10:31:25 colinmacleod
57  * Split off business logic from remote facades to POJOs.
58  * -----------------------------------------------------------------------------
59  */

60 package com.ivata.groupware.business.calendar;
61
62 import java.util.Collection JavaDoc;
63
64 import com.ivata.groupware.admin.security.server.SecuritySession;
65 import com.ivata.groupware.business.calendar.event.EventDO;
66 import com.ivata.groupware.business.calendar.event.meeting.MeetingDO;
67 import com.ivata.mask.util.SystemException;
68 import com.ivata.mask.validation.ValidationErrors;
69
70 /**
71  * @author Colin MacLeod
72  * <a HREF='mailto:colin.macleod@ivata.com'>colin.macleod@ivata.com</a>
73  * @since 24-Mar-2004
74  * @version $Revision: 1.3 $
75  */

76 public interface Calendar {
77     public final static String JavaDoc BUNDLE_PATH = "calendar";
78
79     /** <p>method using to add NEW event</p>
80      *
81      * @param eventDO event to ADD
82      * @return added event
83      *
84      * @ejb.interface-method
85      * view-type = "remote"
86      */

87     public EventDO addEvent(final SecuritySession securitySession,
88             final EventDO eventDO)
89         throws SystemException;
90
91     /**
92      * <p>method using to modifi event</p>
93      *
94      * @param eventDO event to AMEND
95      * @return amend event
96      *
97      * @ejb.interface-method
98      * view-type = "remote"
99      */

100     public EventDO amendEvent(final SecuritySession securitySession,
101             final EventDO eventDO)
102         throws SystemException;
103
104     /**
105      * <p>find eventDO for that id</p>
106      *
107      *
108      * @param day evens for this DAY
109      * @return Vector of events
110      *
111      * @ejb.interface-method
112      * view-type = "remote"
113      */

114     public EventDO findEventByPrimaryKey(final SecuritySession securitySession,
115             final String JavaDoc id)
116             throws SystemException;
117
118     /**
119      * <p>this method giving Events for DAY. DAY has to be initial at clients site
120      * with DAY, MOUTH, YEAR</p>
121      *
122      * @param day evens for this DAY
123      * @return Vector of events
124      *
125      * @ejb.interface-method
126      * view-type = "remote"
127      */

128     public Collection JavaDoc findEventsForDay(final SecuritySession securitySession,
129             final java.util.Calendar JavaDoc day)
130             throws SystemException;
131
132     /**
133      * <p>method usig to remove event</p>
134      *
135      * @param eventDO event to REMOVE
136      *
137      * @ejb.interface-method
138      * view-type = "remote"
139      */

140     public void removeEvent(final SecuritySession securitySession,
141             final EventDO event)
142             throws SystemException;
143
144     /**
145      * <p>Confirm all of the elements of the event are present and valid.</p>
146      *
147      * @param eventDO data object to check for consistency and
148      * completeness.
149      * @return a collection of validation errors if any of the
150      * mandatory fields are missing, or if fields contain invalid values.
151      *
152      * @ejb.interface-method
153      * view-type = "remote"
154      */

155     public ValidationErrors validate(final SecuritySession securitySession,
156             final EventDO eventDO)
157             throws SystemException;
158
159     /**
160      * <p>Confirm all of the elements of the meeting and associated event are
161      * present and valid.</p>
162      *
163      * @param meetingDO data object to check for consistency and
164      * completeness.
165      * @param locale locale to show field errors for.
166      * @return a collection of validation errors if any of the
167      * mandatory fields are missing, or if fields contain invalid values.
168      *
169      * @ejb.interface-method
170      * view-type = "remote"
171      */

172     public ValidationErrors validate(final SecuritySession securitySession,
173             final MeetingDO meetingDO)
174             throws SystemException;
175 }
Popular Tags