001    /**
002     * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
003     *
004     * The contents of this file are subject to the terms of the Liferay Enterprise
005     * Subscription License ("License"). You may not use this file except in
006     * compliance with the License. You can obtain a copy of the License by
007     * contacting Liferay, Inc. See the License for the specific language governing
008     * permissions and limitations under the License, including but not limited to
009     * distribution rights of the Software.
010     *
011     *
012     *
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.jsonwebservice.JSONWebService;
020    import com.liferay.portal.kernel.transaction.Isolation;
021    import com.liferay.portal.kernel.transaction.Propagation;
022    import com.liferay.portal.kernel.transaction.Transactional;
023    
024    /**
025     * The interface for the cal event remote service.
026     *
027     * <p>
028     * This is a remote service. Methods of this service are expected to have security checks based on the propagated JAAS credentials because this service can be accessed remotely.
029     * </p>
030     *
031     * @author Brian Wing Shun Chan
032     * @see CalEventServiceUtil
033     * @see com.liferay.portlet.calendar.service.base.CalEventServiceBaseImpl
034     * @see com.liferay.portlet.calendar.service.impl.CalEventServiceImpl
035     * @generated
036     */
037    @JSONWebService
038    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
039            PortalException.class, SystemException.class})
040    public interface CalEventService {
041            /*
042             * NOTE FOR DEVELOPERS:
043             *
044             * Never modify or reference this interface directly. Always use {@link CalEventServiceUtil} to access the cal event remote service. Add custom service methods to {@link com.liferay.portlet.calendar.service.impl.CalEventServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
045             */
046            public com.liferay.portlet.calendar.model.CalEvent addEvent(
047                    java.lang.String title, java.lang.String description,
048                    int startDateMonth, int startDateDay, int startDateYear,
049                    int startDateHour, int startDateMinute, int endDateMonth,
050                    int endDateDay, int endDateYear, int durationHour, int durationMinute,
051                    boolean allDay, boolean timeZoneSensitive, java.lang.String type,
052                    boolean repeating,
053                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
054                    int firstReminder, int secondReminder,
055                    com.liferay.portal.service.ServiceContext serviceContext)
056                    throws com.liferay.portal.kernel.exception.PortalException,
057                            com.liferay.portal.kernel.exception.SystemException;
058    
059            public void deleteEvent(long eventId)
060                    throws com.liferay.portal.kernel.exception.PortalException,
061                            com.liferay.portal.kernel.exception.SystemException;
062    
063            public java.io.File exportEvent(long eventId)
064                    throws com.liferay.portal.kernel.exception.PortalException,
065                            com.liferay.portal.kernel.exception.SystemException;
066    
067            public java.io.File exportGroupEvents(long groupId,
068                    java.lang.String fileName)
069                    throws com.liferay.portal.kernel.exception.PortalException,
070                            com.liferay.portal.kernel.exception.SystemException;
071    
072            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
073            public com.liferay.portlet.calendar.model.CalEvent getEvent(long eventId)
074                    throws com.liferay.portal.kernel.exception.PortalException,
075                            com.liferay.portal.kernel.exception.SystemException;
076    
077            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
078            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
079                    long groupId, java.util.Calendar cal, java.lang.String type)
080                    throws com.liferay.portal.kernel.exception.PortalException,
081                            com.liferay.portal.kernel.exception.SystemException;
082    
083            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
084            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
085                    long groupId, java.lang.String type, int start, int end)
086                    throws com.liferay.portal.kernel.exception.SystemException;
087    
088            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
089            public java.util.List<com.liferay.portlet.calendar.model.CalEvent> getEvents(
090                    long groupId, java.lang.String[] types, int start, int end)
091                    throws com.liferay.portal.kernel.exception.SystemException;
092    
093            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
094            public int getEventsCount(long groupId, java.lang.String type)
095                    throws com.liferay.portal.kernel.exception.SystemException;
096    
097            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
098            public int getEventsCount(long groupId, java.lang.String[] types)
099                    throws com.liferay.portal.kernel.exception.SystemException;
100    
101            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
102            public boolean hasEvents(long groupId, java.util.Calendar cal)
103                    throws com.liferay.portal.kernel.exception.PortalException,
104                            com.liferay.portal.kernel.exception.SystemException;
105    
106            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
107            public boolean hasEvents(long groupId, java.util.Calendar cal,
108                    java.lang.String type)
109                    throws com.liferay.portal.kernel.exception.PortalException,
110                            com.liferay.portal.kernel.exception.SystemException;
111    
112            public void importICal4j(long groupId, java.io.File file)
113                    throws com.liferay.portal.kernel.exception.PortalException,
114                            com.liferay.portal.kernel.exception.SystemException;
115    
116            public com.liferay.portlet.calendar.model.CalEvent updateEvent(
117                    long eventId, java.lang.String title, java.lang.String description,
118                    int startDateMonth, int startDateDay, int startDateYear,
119                    int startDateHour, int startDateMinute, int endDateMonth,
120                    int endDateDay, int endDateYear, int durationHour, int durationMinute,
121                    boolean allDay, boolean timeZoneSensitive, java.lang.String type,
122                    boolean repeating,
123                    com.liferay.portal.kernel.cal.TZSRecurrence recurrence, int remindBy,
124                    int firstReminder, int secondReminder,
125                    com.liferay.portal.service.ServiceContext serviceContext)
126                    throws com.liferay.portal.kernel.exception.PortalException,
127                            com.liferay.portal.kernel.exception.SystemException;
128    }