001    /**
002     * Copyright (c) 2000-2012 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            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
150            public com.liferay.portlet.calendar.model.CalEvent fetchCalEvent(
151                    long eventId)
152                    throws com.liferay.portal.kernel.exception.SystemException;
153    
154            /**
155            * Returns the cal event with the primary key.
156            *
157            * @param eventId the primary key of the cal event
158            * @return the cal event
159            * @throws PortalException if a cal event with the primary key could not be found
160            * @throws SystemException if a system exception occurred
161            */
162            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
163            public com.liferay.portlet.calendar.model.CalEvent getCalEvent(long eventId)
164                    throws com.liferay.portal.kernel.exception.PortalException,
165                            com.liferay.portal.kernel.exception.SystemException;
166    
167            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
168            public com.liferay.portal.model.PersistedModel getPersistedModel(
169                    java.io.Serializable primaryKeyObj)
170                    throws com.liferay.portal.kernel.exception.PortalException,
171                            com.liferay.portal.kernel.exception.SystemException;
172    
173            /**
174            * Returns the cal event with the UUID in the group.
175            *
176            * @param uuid the UUID of cal event
177            * @param groupId the group id of the cal event
178            * @return the cal event
179            * @throws PortalException if a cal event with the UUID in the group could not be found
180            * @throws SystemException if a system exception occurred
181            */
182            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
183            public com.liferay.portlet.calendar.model.CalEvent getCalEventByUuidAndGroupId(
184                    java.lang.String uuid, long groupId)
185                    throws com.liferay.portal.kernel.exception.PortalException,
186                            com.liferay.portal.kernel.exception.SystemException;
187    
188            /**
189            * Returns a range of all the cal events.
190            *
191            * <p>
192            * 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.
193            * </p>
194            *
195            * @param start the lower bound of the range of cal events
196            * @param end the upper bound of the range of cal events (not inclusive)
197            * @return the range of cal events
198            * @throws SystemException if a system exception occurred
199            */
200            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
201            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCalEvents(
202                    int start, int end)
203                    throws com.liferay.portal.kernel.exception.SystemException;
204    
205            /**
206            * Returns the number of cal events.
207            *
208            * @return the number of cal events
209            * @throws SystemException if a system exception occurred
210            */
211            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
212            public int getCalEventsCount()
213                    throws com.liferay.portal.kernel.exception.SystemException;
214    
215            /**
216            * Updates the cal event in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
217            *
218            * @param calEvent the cal event
219            * @return the cal event that was updated
220            * @throws SystemException if a system exception occurred
221            */
222            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
223                    com.liferay.portlet.calendar.model.CalEvent calEvent)
224                    throws com.liferay.portal.kernel.exception.SystemException;
225    
226            /**
227            * Updates the cal event in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
228            *
229            * @param calEvent the cal event
230            * @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.
231            * @return the cal event that was updated
232            * @throws SystemException if a system exception occurred
233            */
234            public com.liferay.portlet.calendar.model.CalEvent updateCalEvent(
235                    com.liferay.portlet.calendar.model.CalEvent calEvent, boolean merge)
236                    throws com.liferay.portal.kernel.exception.SystemException;
237    
238            /**
239            * Returns the Spring bean ID for this bean.
240            *
241            * @return the Spring bean ID for this bean
242            */
243            public java.lang.String getBeanIdentifier();
244    
245            /**
246            * Sets the Spring bean ID for this bean.
247            *
248            * @param beanIdentifier the Spring bean ID for this bean
249            */
250            public void setBeanIdentifier(java.lang.String beanIdentifier);
251    
252            public com.liferay.portlet.calendar.model.CalEvent addEvent(long userId,
253                    java.lang.String title, java.lang.String description,
254                    java.lang.String location, int startDateMonth, int startDateDay,
255                    int startDateYear, int startDateHour, int startDateMinute,
256                    int endDateMonth, int endDateDay, int endDateYear, int durationHour,
257                    int durationMinute, boolean allDay, boolean timeZoneSensitive,
258                    java.lang.String type, boolean repeating,
259                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
260                    int firstReminder, int secondReminder,
261                    com.liferay.portal.service.ServiceContext serviceContext)
262                    throws com.liferay.portal.kernel.exception.PortalException,
263                            com.liferay.portal.kernel.exception.SystemException;
264    
265            public void addEventResources(
266                    com.liferay.portlet.calendar.model.CalEvent event,
267                    boolean addGroupPermissions, boolean addGuestPermissions)
268                    throws com.liferay.portal.kernel.exception.PortalException,
269                            com.liferay.portal.kernel.exception.SystemException;
270    
271            public void addEventResources(
272                    com.liferay.portlet.calendar.model.CalEvent event,
273                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
274                    throws com.liferay.portal.kernel.exception.PortalException,
275                            com.liferay.portal.kernel.exception.SystemException;
276    
277            public void addEventResources(long eventId, boolean addGroupPermissions,
278                    boolean addGuestPermissions)
279                    throws com.liferay.portal.kernel.exception.PortalException,
280                            com.liferay.portal.kernel.exception.SystemException;
281    
282            public void addEventResources(long eventId,
283                    java.lang.String[] groupPermissions, java.lang.String[] guestPermissions)
284                    throws com.liferay.portal.kernel.exception.PortalException,
285                            com.liferay.portal.kernel.exception.SystemException;
286    
287            public void checkEvents()
288                    throws com.liferay.portal.kernel.exception.PortalException,
289                            com.liferay.portal.kernel.exception.SystemException;
290    
291            public void deleteEvent(com.liferay.portlet.calendar.model.CalEvent event)
292                    throws com.liferay.portal.kernel.exception.PortalException,
293                            com.liferay.portal.kernel.exception.SystemException;
294    
295            public void deleteEvent(long eventId)
296                    throws com.liferay.portal.kernel.exception.PortalException,
297                            com.liferay.portal.kernel.exception.SystemException;
298    
299            public void deleteEvents(long groupId)
300                    throws com.liferay.portal.kernel.exception.PortalException,
301                            com.liferay.portal.kernel.exception.SystemException;
302    
303            public java.io.File exportEvent(long userId, long eventId)
304                    throws com.liferay.portal.kernel.exception.PortalException,
305                            com.liferay.portal.kernel.exception.SystemException;
306    
307            public java.io.File exportGroupEvents(long userId, long groupId,
308                    java.lang.String fileName)
309                    throws com.liferay.portal.kernel.exception.PortalException,
310                            com.liferay.portal.kernel.exception.SystemException;
311    
312            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
313            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getCompanyEvents(
314                    long companyId, int start, int end)
315                    throws com.liferay.portal.kernel.exception.SystemException;
316    
317            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
318            public int getCompanyEventsCount(long companyId)
319                    throws com.liferay.portal.kernel.exception.SystemException;
320    
321            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
322            public com.liferay.portlet.calendar.model.CalEvent getEvent(long eventId)
323                    throws com.liferay.portal.kernel.exception.PortalException,
324                            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)
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 type)
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.util.Calendar cal, java.lang.String[] types)
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 type, int start, int end)
344                    throws com.liferay.portal.kernel.exception.SystemException;
345    
346            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
347            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
348                    long groupId, java.lang.String[] types, int start, int end)
349                    throws com.liferay.portal.kernel.exception.SystemException;
350    
351            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
352            public int getEventsCount(long groupId, java.lang.String type)
353                    throws com.liferay.portal.kernel.exception.SystemException;
354    
355            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
356            public int getEventsCount(long groupId, java.lang.String[] types)
357                    throws com.liferay.portal.kernel.exception.SystemException;
358    
359            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
360            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getNoAssetEvents()
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)
366                    throws com.liferay.portal.kernel.exception.SystemException;
367    
368            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
369            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getRepeatingEvents(
370                    long groupId, java.util.Calendar cal, java.lang.String[] types)
371                    throws com.liferay.portal.kernel.exception.SystemException;
372    
373            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
374            public boolean hasEvents(long groupId, java.util.Calendar cal)
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 type)
380                    throws com.liferay.portal.kernel.exception.SystemException;
381    
382            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
383            public boolean hasEvents(long groupId, java.util.Calendar cal,
384                    java.lang.String[] types)
385                    throws com.liferay.portal.kernel.exception.SystemException;
386    
387            public void importICal4j(long userId, long groupId,
388                    java.io.InputStream inputStream)
389                    throws com.liferay.portal.kernel.exception.PortalException,
390                            com.liferay.portal.kernel.exception.SystemException;
391    
392            public void updateAsset(long userId,
393                    com.liferay.portlet.calendar.model.CalEvent event,
394                    long[] assetCategoryIds, java.lang.String[] assetTagNames,
395                    long[] assetLinkEntryIds)
396                    throws com.liferay.portal.kernel.exception.PortalException,
397                            com.liferay.portal.kernel.exception.SystemException;
398    
399            public com.liferay.portlet.calendar.model.CalEvent updateEvent(
400                    long userId, long eventId, java.lang.String title,
401                    java.lang.String description, java.lang.String location,
402                    int startDateMonth, int startDateDay, int startDateYear,
403                    int startDateHour, int startDateMinute, int endDateMonth,
404                    int endDateDay, int endDateYear, int durationHour, int durationMinute,
405                    boolean allDay, boolean timeZoneSensitive, java.lang.String type,
406                    boolean repeating,
407                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
408                    int firstReminder, int secondReminder,
409                    com.liferay.portal.service.ServiceContext serviceContext)
410                    throws com.liferay.portal.kernel.exception.PortalException,
411                            com.liferay.portal.kernel.exception.SystemException;
412    }