001    /**
002     * Copyright (c) 2000-2010 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.calendar.service;
016    
017    import com.liferay.portal.kernel.annotation.Isolation;
018    import com.liferay.portal.kernel.annotation.Propagation;
019    import com.liferay.portal.kernel.annotation.Transactional;
020    import com.liferay.portal.kernel.exception.PortalException;
021    import com.liferay.portal.kernel.exception.SystemException;
022    
023    /**
024     * The interface for the cal event local service.
025     *
026     * <p>
027     * Never modify or reference this interface directly. Always use {@link CalEventLocalServiceUtil} to access the cal event local service. Add custom service methods to {@link com.liferay.portlet.calendar.service.impl.CalEventLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
028     * </p>
029     *
030     * <p>
031     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
032     * </p>
033     *
034     * @author Brian Wing Shun Chan
035     * @see CalEventLocalServiceUtil
036     * @see com.liferay.portlet.calendar.service.base.CalEventLocalServiceBaseImpl
037     * @see com.liferay.portlet.calendar.service.impl.CalEventLocalServiceImpl
038     * @generated
039     */
040    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
041            PortalException.class, SystemException.class})
042    public interface CalEventLocalService {
043            /**
044            * Adds the cal event to the database. Also notifies the appropriate model listeners.
045            *
046            * @param calEvent the cal event to add
047            * @return the cal event that was added
048            * @throws SystemException if a system exception occurred
049            */
050            public com.liferay.portlet.calendar.model.CalEvent addCalEvent(
051                    com.liferay.portlet.calendar.model.CalEvent calEvent)
052                    throws com.liferay.portal.kernel.exception.SystemException;
053    
054            /**
055            * Creates a new cal event with the primary key. Does not add the cal event to the database.
056            *
057            * @param eventId the primary key for the new cal event
058            * @return the new cal event
059            */
060            public com.liferay.portlet.calendar.model.CalEvent createCalEvent(
061                    long eventId);
062    
063            /**
064            * Deletes the cal event with the primary key from the database. Also notifies the appropriate model listeners.
065            *
066            * @param eventId the primary key of the cal event to delete
067            * @throws PortalException if a cal event with the primary key could not be found
068            * @throws SystemException if a system exception occurred
069            */
070            public void deleteCalEvent(long eventId)
071                    throws com.liferay.portal.kernel.exception.PortalException,
072                            com.liferay.portal.kernel.exception.SystemException;
073    
074            /**
075            * Deletes the cal event from the database. Also notifies the appropriate model listeners.
076            *
077            * @param calEvent the cal event to delete
078            * @throws SystemException if a system exception occurred
079            */
080            public void deleteCalEvent(
081                    com.liferay.portlet.calendar.model.CalEvent calEvent)
082                    throws com.liferay.portal.kernel.exception.SystemException;
083    
084            /**
085            * Performs a dynamic query on the database and returns the matching rows.
086            *
087            * @param dynamicQuery the dynamic query to search with
088            * @return the matching rows
089            * @throws SystemException if a system exception occurred
090            */
091            @SuppressWarnings("rawtypes")
092            public java.util.List dynamicQuery(
093                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
094                    throws com.liferay.portal.kernel.exception.SystemException;
095    
096            /**
097            * Performs a dynamic query on the database and returns a range of the matching rows.
098            *
099            * <p>
100            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
101            * </p>
102            *
103            * @param dynamicQuery the dynamic query to search with
104            * @param start the lower bound of the range of model instances to return
105            * @param end the upper bound of the range of model instances to return (not inclusive)
106            * @return the range of matching rows
107            * @throws SystemException if a system exception occurred
108            */
109            @SuppressWarnings("rawtypes")
110            public java.util.List dynamicQuery(
111                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
112                    int end) throws com.liferay.portal.kernel.exception.SystemException;
113    
114            /**
115            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
116            *
117            * <p>
118            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
119            * </p>
120            *
121            * @param dynamicQuery the dynamic query to search with
122            * @param start the lower bound of the range of model instances to return
123            * @param end the upper bound of the range of model instances to return (not inclusive)
124            * @param orderByComparator the comparator to order the results by
125            * @return the ordered range of matching rows
126            * @throws SystemException if a system exception occurred
127            */
128            @SuppressWarnings("rawtypes")
129            public java.util.List dynamicQuery(
130                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
131                    int end,
132                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
133                    throws com.liferay.portal.kernel.exception.SystemException;
134    
135            /**
136            * Counts the number of rows that match the dynamic query.
137            *
138            * @param dynamicQuery the dynamic query to search with
139            * @return the number of rows that match the dynamic query
140            * @throws SystemException if a system exception occurred
141            */
142            public long dynamicQueryCount(
143                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
144                    throws com.liferay.portal.kernel.exception.SystemException;
145    
146            /**
147            * Gets the cal event with the primary key.
148            *
149            * @param eventId the primary key of the cal event to get
150            * @return the cal event
151            * @throws PortalException if a cal event with the primary key could not be found
152            * @throws SystemException if a system exception occurred
153            */
154            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
155            public com.liferay.portlet.calendar.model.CalEvent getCalEvent(long eventId)
156                    throws com.liferay.portal.kernel.exception.PortalException,
157                            com.liferay.portal.kernel.exception.SystemException;
158    
159            /**
160            * Gets the cal event with the UUID and group id.
161            *
162            * @param uuid the UUID of cal event to get
163            * @param groupId the group id of the cal event to get
164            * @return the cal event
165            * @throws PortalException if a cal event with the UUID and group id could not be found
166            * @throws SystemException if a system exception occurred
167            */
168            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
169            public com.liferay.portlet.calendar.model.CalEvent getCalEventByUuidAndGroupId(
170                    java.lang.String uuid, long groupId)
171                    throws com.liferay.portal.kernel.exception.PortalException,
172                            com.liferay.portal.kernel.exception.SystemException;
173    
174            /**
175            * Gets a range of all the cal events.
176            *
177            * <p>
178            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
179            * </p>
180            *
181            * @param start the lower bound of the range of cal events to return
182            * @param end the upper bound of the range of cal events to return (not inclusive)
183            * @return the range of cal events
184            * @throws SystemException if a system exception occurred
185            */
186            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
187            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCalEvents(
188                    int start, int end)
189                    throws com.liferay.portal.kernel.exception.SystemException;
190    
191            /**
192            * Gets the number of cal events.
193            *
194            * @return the number of cal events
195            * @throws SystemException if a system exception occurred
196            */
197            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
198            public int getCalEventsCount()
199                    throws com.liferay.portal.kernel.exception.SystemException;
200    
201            /**
202            * Updates the cal event in the database. Also notifies the appropriate model listeners.
203            *
204            * @param calEvent the cal event to update
205            * @return the cal event that was updated
206            * @throws SystemException if a system exception occurred
207            */
208            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
209                    com.liferay.portlet.calendar.model.CalEvent calEvent)
210                    throws com.liferay.portal.kernel.exception.SystemException;
211    
212            /**
213            * Updates the cal event in the database. Also notifies the appropriate model listeners.
214            *
215            * @param calEvent the cal event to update
216            * @param merge whether to merge the cal event with the current session. See {@link com.liferay.portal.service.persistence.BatchSession#update(com.liferay.portal.kernel.dao.orm.Session, com.liferay.portal.model.BaseModel, boolean)} for an explanation.
217            * @return the cal event that was updated
218            * @throws SystemException if a system exception occurred
219            */
220            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
221                    com.liferay.portlet.calendar.model.CalEvent calEvent, boolean merge)
222                    throws com.liferay.portal.kernel.exception.SystemException;
223    
224            public com.liferay.portlet.calendar.model.CalEvent addEvent(long userId,
225                    java.lang.String title, java.lang.String description,
226                    int startDateMonth, int startDateDay, int startDateYear,
227                    int startDateHour, int startDateMinute, int endDateMonth,
228                    int endDateDay, int endDateYear, int durationHour, int durationMinute,
229                    boolean allDay, boolean timeZoneSensitive, java.lang.String type,
230                    boolean repeating,
231                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
232                    int firstReminder, int secondReminder,
233                    com.liferay.portal.service.ServiceContext serviceContext)
234                    throws com.liferay.portal.kernel.exception.PortalException,
235                            com.liferay.portal.kernel.exception.SystemException;
236    
237            public void addEventResources(
238                    com.liferay.portlet.calendar.model.CalEvent event,
239                    boolean addCommunityPermissions, boolean addGuestPermissions)
240                    throws com.liferay.portal.kernel.exception.PortalException,
241                            com.liferay.portal.kernel.exception.SystemException;
242    
243            public void addEventResources(
244                    com.liferay.portlet.calendar.model.CalEvent event,
245                    java.lang.String[] communityPermissions,
246                    java.lang.String[] guestPermissions)
247                    throws com.liferay.portal.kernel.exception.PortalException,
248                            com.liferay.portal.kernel.exception.SystemException;
249    
250            public void addEventResources(long eventId,
251                    boolean addCommunityPermissions, boolean addGuestPermissions)
252                    throws com.liferay.portal.kernel.exception.PortalException,
253                            com.liferay.portal.kernel.exception.SystemException;
254    
255            public void addEventResources(long eventId,
256                    java.lang.String[] communityPermissions,
257                    java.lang.String[] guestPermissions)
258                    throws com.liferay.portal.kernel.exception.PortalException,
259                            com.liferay.portal.kernel.exception.SystemException;
260    
261            public void checkEvents()
262                    throws com.liferay.portal.kernel.exception.PortalException,
263                            com.liferay.portal.kernel.exception.SystemException;
264    
265            public void deleteEvent(com.liferay.portlet.calendar.model.CalEvent event)
266                    throws com.liferay.portal.kernel.exception.PortalException,
267                            com.liferay.portal.kernel.exception.SystemException;
268    
269            public void deleteEvent(long eventId)
270                    throws com.liferay.portal.kernel.exception.PortalException,
271                            com.liferay.portal.kernel.exception.SystemException;
272    
273            public void deleteEvents(long groupId)
274                    throws com.liferay.portal.kernel.exception.PortalException,
275                            com.liferay.portal.kernel.exception.SystemException;
276    
277            public java.io.File exportEvent(long userId, long eventId)
278                    throws com.liferay.portal.kernel.exception.PortalException,
279                            com.liferay.portal.kernel.exception.SystemException;
280    
281            public java.io.File exportGroupEvents(long userId, long groupId,
282                    java.lang.String fileName)
283                    throws com.liferay.portal.kernel.exception.PortalException,
284                            com.liferay.portal.kernel.exception.SystemException;
285    
286            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
287            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCompanyEvents(
288                    long companyId, int start, int end)
289                    throws com.liferay.portal.kernel.exception.SystemException;
290    
291            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
292            public int getCompanyEventsCount(long companyId)
293                    throws com.liferay.portal.kernel.exception.SystemException;
294    
295            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
296            public com.liferay.portlet.calendar.model.CalEvent getEvent(long eventId)
297                    throws com.liferay.portal.kernel.exception.PortalException,
298                            com.liferay.portal.kernel.exception.SystemException;
299    
300            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
301            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
302                    long groupId, java.util.Calendar cal)
303                    throws com.liferay.portal.kernel.exception.SystemException;
304    
305            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
306            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
307                    long groupId, java.util.Calendar cal, java.lang.String type)
308                    throws com.liferay.portal.kernel.exception.SystemException;
309    
310            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
311            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
312                    long groupId, java.lang.String type, int start, int end)
313                    throws com.liferay.portal.kernel.exception.SystemException;
314    
315            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
316            public int getEventsCount(long groupId, java.lang.String type)
317                    throws com.liferay.portal.kernel.exception.SystemException;
318    
319            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
320            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getNoAssetEvents()
321                    throws com.liferay.portal.kernel.exception.SystemException;
322    
323            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
324            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getRepeatingEvents(
325                    long groupId)
326                    throws com.liferay.portal.kernel.exception.SystemException;
327    
328            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
329            public boolean hasEvents(long groupId, java.util.Calendar cal)
330                    throws com.liferay.portal.kernel.exception.SystemException;
331    
332            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
333            public boolean hasEvents(long groupId, java.util.Calendar cal,
334                    java.lang.String type)
335                    throws com.liferay.portal.kernel.exception.SystemException;
336    
337            public void importICal4j(long userId, long groupId, java.io.File file)
338                    throws com.liferay.portal.kernel.exception.PortalException,
339                            com.liferay.portal.kernel.exception.SystemException;
340    
341            public void updateAsset(long userId,
342                    com.liferay.portlet.calendar.model.CalEvent event,
343                    long[] assetCategoryIds, java.lang.String[] assetTagNames)
344                    throws com.liferay.portal.kernel.exception.PortalException,
345                            com.liferay.portal.kernel.exception.SystemException;
346    
347            public com.liferay.portlet.calendar.model.CalEvent updateEvent(
348                    long userId, long eventId, java.lang.String title,
349                    java.lang.String description, int startDateMonth, int startDateDay,
350                    int startDateYear, int startDateHour, int startDateMinute,
351                    int endDateMonth, int endDateDay, int endDateYear, int durationHour,
352                    int durationMinute, boolean allDay, boolean timeZoneSensitive,
353                    java.lang.String type, boolean repeating,
354                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
355                    int firstReminder, int secondReminder,
356                    com.liferay.portal.service.ServiceContext serviceContext)
357                    throws com.liferay.portal.kernel.exception.PortalException,
358                            com.liferay.portal.kernel.exception.SystemException;
359    }