001    /**
002     * Copyright (c) 2000-2011 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.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.transaction.Isolation;
020    import com.liferay.portal.kernel.transaction.Propagation;
021    import com.liferay.portal.kernel.transaction.Transactional;
022    import com.liferay.portal.service.PersistedModelLocalService;
023    
024    /**
025     * The interface for the cal event local service.
026     *
027     * <p>
028     * 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.
029     * </p>
030     *
031     * @author Brian Wing Shun Chan
032     * @see CalEventLocalServiceUtil
033     * @see com.liferay.portlet.calendar.service.base.CalEventLocalServiceBaseImpl
034     * @see com.liferay.portlet.calendar.service.impl.CalEventLocalServiceImpl
035     * @generated
036     */
037    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
038            PortalException.class, SystemException.class})
039    public interface CalEventLocalService extends PersistedModelLocalService {
040            /*
041             * NOTE FOR DEVELOPERS:
042             *
043             * 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.
044             */
045    
046            /**
047            * Adds the cal event to the database. Also notifies the appropriate model listeners.
048            *
049            * @param calEvent the cal event
050            * @return the cal event that was added
051            * @throws SystemException if a system exception occurred
052            */
053            public com.liferay.portlet.calendar.model.CalEvent addCalEvent(
054                    com.liferay.portlet.calendar.model.CalEvent calEvent)
055                    throws com.liferay.portal.kernel.exception.SystemException;
056    
057            /**
058            * Creates a new cal event with the primary key. Does not add the cal event to the database.
059            *
060            * @param eventId the primary key for the new cal event
061            * @return the new cal event
062            */
063            public com.liferay.portlet.calendar.model.CalEvent createCalEvent(
064                    long eventId);
065    
066            /**
067            * Deletes the cal event with the primary key from the database. Also notifies the appropriate model listeners.
068            *
069            * @param eventId the primary key of the cal event
070            * @throws PortalException if a cal event with the primary key could not be found
071            * @throws SystemException if a system exception occurred
072            */
073            public void deleteCalEvent(long eventId)
074                    throws com.liferay.portal.kernel.exception.PortalException,
075                            com.liferay.portal.kernel.exception.SystemException;
076    
077            /**
078            * Deletes the cal event from the database. Also notifies the appropriate model listeners.
079            *
080            * @param calEvent the cal event
081            * @throws SystemException if a system exception occurred
082            */
083            public void deleteCalEvent(
084                    com.liferay.portlet.calendar.model.CalEvent calEvent)
085                    throws com.liferay.portal.kernel.exception.SystemException;
086    
087            /**
088            * Performs a dynamic query on the database and returns the matching rows.
089            *
090            * @param dynamicQuery the dynamic query
091            * @return the matching rows
092            * @throws SystemException if a system exception occurred
093            */
094            @SuppressWarnings("rawtypes")
095            public java.util.List dynamicQuery(
096                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
097                    throws com.liferay.portal.kernel.exception.SystemException;
098    
099            /**
100            * Performs a dynamic query on the database and returns a range of the matching rows.
101            *
102            * <p>
103            * 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.
104            * </p>
105            *
106            * @param dynamicQuery the dynamic query
107            * @param start the lower bound of the range of model instances
108            * @param end the upper bound of the range of model instances (not inclusive)
109            * @return the range of matching rows
110            * @throws SystemException if a system exception occurred
111            */
112            @SuppressWarnings("rawtypes")
113            public java.util.List dynamicQuery(
114                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
115                    int end) throws com.liferay.portal.kernel.exception.SystemException;
116    
117            /**
118            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
119            *
120            * <p>
121            * 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.
122            * </p>
123            *
124            * @param dynamicQuery the dynamic query
125            * @param start the lower bound of the range of model instances
126            * @param end the upper bound of the range of model instances (not inclusive)
127            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
128            * @return the ordered range of matching rows
129            * @throws SystemException if a system exception occurred
130            */
131            @SuppressWarnings("rawtypes")
132            public java.util.List dynamicQuery(
133                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
134                    int end,
135                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
136                    throws com.liferay.portal.kernel.exception.SystemException;
137    
138            /**
139            * Returns the number of rows that match the dynamic query.
140            *
141            * @param dynamicQuery the dynamic query
142            * @return the number of rows that match the dynamic query
143            * @throws SystemException if a system exception occurred
144            */
145            public long dynamicQueryCount(
146                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
147                    throws com.liferay.portal.kernel.exception.SystemException;
148    
149            /**
150            * Returns the cal event with the primary key.
151            *
152            * @param eventId the primary key of the cal event
153            * @return the cal event
154            * @throws PortalException if a cal event with the primary key could not be found
155            * @throws SystemException if a system exception occurred
156            */
157            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
158            public com.liferay.portlet.calendar.model.CalEvent getCalEvent(long eventId)
159                    throws com.liferay.portal.kernel.exception.PortalException,
160                            com.liferay.portal.kernel.exception.SystemException;
161    
162            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
163            public com.liferay.portal.model.PersistedModel getPersistedModel(
164                    java.io.Serializable primaryKeyObj)
165                    throws com.liferay.portal.kernel.exception.PortalException,
166                            com.liferay.portal.kernel.exception.SystemException;
167    
168            /**
169            * Returns the cal event with the UUID in the group.
170            *
171            * @param uuid the UUID of cal event
172            * @param groupId the group id of the cal event
173            * @return the cal event
174            * @throws PortalException if a cal event with the UUID in the group could not be found
175            * @throws SystemException if a system exception occurred
176            */
177            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
178            public com.liferay.portlet.calendar.model.CalEvent getCalEventByUuidAndGroupId(
179                    java.lang.String uuid, long groupId)
180                    throws com.liferay.portal.kernel.exception.PortalException,
181                            com.liferay.portal.kernel.exception.SystemException;
182    
183            /**
184            * Returns a range of all the cal events.
185            *
186            * <p>
187            * 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.
188            * </p>
189            *
190            * @param start the lower bound of the range of cal events
191            * @param end the upper bound of the range of cal events (not inclusive)
192            * @return the range of cal events
193            * @throws SystemException if a system exception occurred
194            */
195            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
196            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCalEvents(
197                    int start, int end)
198                    throws com.liferay.portal.kernel.exception.SystemException;
199    
200            /**
201            * Returns the number of cal events.
202            *
203            * @return the number of cal events
204            * @throws SystemException if a system exception occurred
205            */
206            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
207            public int getCalEventsCount()
208                    throws com.liferay.portal.kernel.exception.SystemException;
209    
210            /**
211            * Updates the cal event in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
212            *
213            * @param calEvent the cal event
214            * @return the cal event that was updated
215            * @throws SystemException if a system exception occurred
216            */
217            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
218                    com.liferay.portlet.calendar.model.CalEvent calEvent)
219                    throws com.liferay.portal.kernel.exception.SystemException;
220    
221            /**
222            * Updates the cal event in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
223            *
224            * @param calEvent the cal event
225            * @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.
226            * @return the cal event that was updated
227            * @throws SystemException if a system exception occurred
228            */
229            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
230                    com.liferay.portlet.calendar.model.CalEvent calEvent, boolean merge)
231                    throws com.liferay.portal.kernel.exception.SystemException;
232    
233            /**
234            * Returns the Spring bean ID for this bean.
235            *
236            * @return the Spring bean ID for this bean
237            */
238            public java.lang.String getBeanIdentifier();
239    
240            /**
241            * Sets the Spring bean ID for this bean.
242            *
243            * @param beanIdentifier the Spring bean ID for this bean
244            */
245            public void setBeanIdentifier(java.lang.String beanIdentifier);
246    
247            public com.liferay.portlet.calendar.model.CalEvent addEvent(long userId,
248                    java.lang.String title, java.lang.String description,
249                    java.lang.String location, int startDateMonth, int startDateDay,
250                    int startDateYear, int startDateHour, int startDateMinute,
251                    int endDateMonth, int endDateDay, int endDateYear, int durationHour,
252                    int durationMinute, boolean allDay, boolean timeZoneSensitive,
253                    java.lang.String type, boolean repeating,
254                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
255                    int firstReminder, int secondReminder,
256                    com.liferay.portal.service.ServiceContext serviceContext)
257                    throws com.liferay.portal.kernel.exception.PortalException,
258                            com.liferay.portal.kernel.exception.SystemException;
259    
260            public void addEventResources(
261                    com.liferay.portlet.calendar.model.CalEvent event,
262                    boolean addGroupPermissions, boolean addGuestPermissions)
263                    throws com.liferay.portal.kernel.exception.PortalException,
264                            com.liferay.portal.kernel.exception.SystemException;
265    
266            public void addEventResources(
267                    com.liferay.portlet.calendar.model.CalEvent event,
268                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
269                    throws com.liferay.portal.kernel.exception.PortalException,
270                            com.liferay.portal.kernel.exception.SystemException;
271    
272            public void addEventResources(long eventId, boolean addGroupPermissions,
273                    boolean addGuestPermissions)
274                    throws com.liferay.portal.kernel.exception.PortalException,
275                            com.liferay.portal.kernel.exception.SystemException;
276    
277            public void addEventResources(long eventId,
278                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
279                    throws com.liferay.portal.kernel.exception.PortalException,
280                            com.liferay.portal.kernel.exception.SystemException;
281    
282            public void checkEvents()
283                    throws com.liferay.portal.kernel.exception.PortalException,
284                            com.liferay.portal.kernel.exception.SystemException;
285    
286            public void deleteEvent(com.liferay.portlet.calendar.model.CalEvent event)
287                    throws com.liferay.portal.kernel.exception.PortalException,
288                            com.liferay.portal.kernel.exception.SystemException;
289    
290            public void deleteEvent(long eventId)
291                    throws com.liferay.portal.kernel.exception.PortalException,
292                            com.liferay.portal.kernel.exception.SystemException;
293    
294            public void deleteEvents(long groupId)
295                    throws com.liferay.portal.kernel.exception.PortalException,
296                            com.liferay.portal.kernel.exception.SystemException;
297    
298            public java.io.File exportEvent(long userId, long eventId)
299                    throws com.liferay.portal.kernel.exception.PortalException,
300                            com.liferay.portal.kernel.exception.SystemException;
301    
302            public java.io.File exportGroupEvents(long userId, long groupId,
303                    java.lang.String fileName)
304                    throws com.liferay.portal.kernel.exception.PortalException,
305                            com.liferay.portal.kernel.exception.SystemException;
306    
307            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
308            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCompanyEvents(
309                    long companyId, int start, int end)
310                    throws com.liferay.portal.kernel.exception.SystemException;
311    
312            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
313            public int getCompanyEventsCount(long companyId)
314                    throws com.liferay.portal.kernel.exception.SystemException;
315    
316            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
317            public com.liferay.portlet.calendar.model.CalEvent getEvent(long eventId)
318                    throws com.liferay.portal.kernel.exception.PortalException,
319                            com.liferay.portal.kernel.exception.SystemException;
320    
321            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
322            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
323                    long groupId, java.util.Calendar cal)
324                    throws com.liferay.portal.kernel.exception.SystemException;
325    
326            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
327            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
328                    long groupId, java.util.Calendar cal, java.lang.String type)
329                    throws com.liferay.portal.kernel.exception.SystemException;
330    
331            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
332            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
333                    long groupId, java.util.Calendar cal, java.lang.String[] types)
334                    throws com.liferay.portal.kernel.exception.SystemException;
335    
336            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
337            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
338                    long groupId, java.lang.String type, int start, int end)
339                    throws com.liferay.portal.kernel.exception.SystemException;
340    
341            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
342            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
343                    long groupId, java.lang.String[] types, int start, int end)
344                    throws com.liferay.portal.kernel.exception.SystemException;
345    
346            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
347            public int getEventsCount(long groupId, java.lang.String type)
348                    throws com.liferay.portal.kernel.exception.SystemException;
349    
350            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
351            public int getEventsCount(long groupId, java.lang.String[] types)
352                    throws com.liferay.portal.kernel.exception.SystemException;
353    
354            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
355            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getNoAssetEvents()
356                    throws com.liferay.portal.kernel.exception.SystemException;
357    
358            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
359            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getRepeatingEvents(
360                    long groupId)
361                    throws com.liferay.portal.kernel.exception.SystemException;
362    
363            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
364            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getRepeatingEvents(
365                    long groupId, java.util.Calendar cal, java.lang.String[] types)
366                    throws com.liferay.portal.kernel.exception.SystemException;
367    
368            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
369            public boolean hasEvents(long groupId, java.util.Calendar cal)
370                    throws com.liferay.portal.kernel.exception.SystemException;
371    
372            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
373            public boolean hasEvents(long groupId, java.util.Calendar cal,
374                    java.lang.String type)
375                    throws com.liferay.portal.kernel.exception.SystemException;
376    
377            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
378            public boolean hasEvents(long groupId, java.util.Calendar cal,
379                    java.lang.String[] types)
380                    throws com.liferay.portal.kernel.exception.SystemException;
381    
382            public void importICal4j(long userId, long groupId,
383                    java.io.InputStream inputStream)
384                    throws com.liferay.portal.kernel.exception.PortalException,
385                            com.liferay.portal.kernel.exception.SystemException;
386    
387            public void updateAsset(long userId,
388                    com.liferay.portlet.calendar.model.CalEvent event,
389                    long[] assetCategoryIds, java.lang.String[] assetTagNames,
390                    long[] assetLinkEntryIds)
391                    throws com.liferay.portal.kernel.exception.PortalException,
392                            com.liferay.portal.kernel.exception.SystemException;
393    
394            public com.liferay.portlet.calendar.model.CalEvent updateEvent(
395                    long userId, long eventId, java.lang.String title,
396                    java.lang.String description, java.lang.String location,
397                    int startDateMonth, int startDateDay, int startDateYear,
398                    int startDateHour, int startDateMinute, int endDateMonth,
399                    int endDateDay, int endDateYear, int durationHour, int durationMinute,
400                    boolean allDay, boolean timeZoneSensitive, java.lang.String type,
401                    boolean repeating,
402                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
403                    int firstReminder, int secondReminder,
404                    com.liferay.portal.service.ServiceContext serviceContext)
405                    throws com.liferay.portal.kernel.exception.PortalException,
406                            com.liferay.portal.kernel.exception.SystemException;
407    }