001    /**
002     * Copyright (c) 2000-present 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.blogs.kernel.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.blogs.kernel.model.BlogsEntry;
020    
021    import com.liferay.portal.kernel.exception.PortalException;
022    import com.liferay.portal.kernel.exception.SystemException;
023    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
024    import com.liferay.portal.kernel.security.access.control.AccessControlled;
025    import com.liferay.portal.kernel.service.BaseService;
026    import com.liferay.portal.kernel.service.ServiceContext;
027    import com.liferay.portal.kernel.servlet.taglib.ui.ImageSelector;
028    import com.liferay.portal.kernel.theme.ThemeDisplay;
029    import com.liferay.portal.kernel.transaction.Isolation;
030    import com.liferay.portal.kernel.transaction.Propagation;
031    import com.liferay.portal.kernel.transaction.Transactional;
032    import com.liferay.portal.kernel.util.OrderByComparator;
033    
034    import java.io.InputStream;
035    
036    import java.util.Date;
037    import java.util.List;
038    
039    /**
040     * Provides the remote service interface for BlogsEntry. Methods of this
041     * service are expected to have security checks based on the propagated JAAS
042     * credentials because this service can be accessed remotely.
043     *
044     * @author Brian Wing Shun Chan
045     * @see BlogsEntryServiceUtil
046     * @see com.liferay.portlet.blogs.service.base.BlogsEntryServiceBaseImpl
047     * @see com.liferay.portlet.blogs.service.impl.BlogsEntryServiceImpl
048     * @generated
049     */
050    @AccessControlled
051    @JSONWebService
052    @ProviderType
053    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
054            PortalException.class, SystemException.class})
055    public interface BlogsEntryService extends BaseService {
056            /*
057             * NOTE FOR DEVELOPERS:
058             *
059             * Never modify or reference this interface directly. Always use {@link BlogsEntryServiceUtil} to access the blogs entry remote service. Add custom service methods to {@link com.liferay.portlet.blogs.service.impl.BlogsEntryServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
060             */
061    
062            /**
063            * @deprecated As of 7.0.0, replaced by {@link #addEntry(String, String,
064            String, String, int, int, int, int, int, boolean, boolean,
065            String[], String, ImageSelector, ImageSelector,
066            ServiceContext)}
067            */
068            @java.lang.Deprecated
069            public BlogsEntry addEntry(java.lang.String title,
070                    java.lang.String description, java.lang.String content,
071                    int displayDateMonth, int displayDateDay, int displayDateYear,
072                    int displayDateHour, int displayDateMinute, boolean allowPingbacks,
073                    boolean allowTrackbacks, java.lang.String[] trackbacks,
074                    boolean smallImage, java.lang.String smallImageURL,
075                    java.lang.String smallImageFileName, InputStream smallImageInputStream,
076                    ServiceContext serviceContext) throws PortalException;
077    
078            public BlogsEntry addEntry(java.lang.String title,
079                    java.lang.String subtitle, java.lang.String description,
080                    java.lang.String content, int displayDateMonth, int displayDateDay,
081                    int displayDateYear, int displayDateHour, int displayDateMinute,
082                    boolean allowPingbacks, boolean allowTrackbacks,
083                    java.lang.String[] trackbacks, java.lang.String coverImageCaption,
084                    ImageSelector coverImageImageSelector,
085                    ImageSelector smallImageImageSelector, ServiceContext serviceContext)
086                    throws PortalException;
087    
088            public void deleteEntry(long entryId) throws PortalException;
089    
090            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
091            public List<BlogsEntry> getCompanyEntries(long companyId, Date displayDate,
092                    int status, int max) throws PortalException;
093    
094            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
095            public java.lang.String getCompanyEntriesRSS(long companyId,
096                    Date displayDate, int status, int max, java.lang.String type,
097                    double version, java.lang.String displayStyle,
098                    java.lang.String feedURL, java.lang.String entryURL,
099                    ThemeDisplay themeDisplay) throws PortalException;
100    
101            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
102            public BlogsEntry getEntry(long entryId) throws PortalException;
103    
104            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
105            public BlogsEntry getEntry(long groupId, java.lang.String urlTitle)
106                    throws PortalException;
107    
108            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
109            public List<BlogsEntry> getGroupEntries(long groupId, Date displayDate,
110                    int status, int max);
111    
112            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
113            public List<BlogsEntry> getGroupEntries(long groupId, Date displayDate,
114                    int status, int start, int end);
115    
116            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
117            public List<BlogsEntry> getGroupEntries(long groupId, int status, int max);
118    
119            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
120            public List<BlogsEntry> getGroupEntries(long groupId, int status,
121                    int start, int end);
122    
123            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
124            public List<BlogsEntry> getGroupEntries(long groupId, int status,
125                    int start, int end, OrderByComparator<BlogsEntry> obc);
126    
127            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
128            public int getGroupEntriesCount(long groupId, Date displayDate, int status);
129    
130            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
131            public int getGroupEntriesCount(long groupId, int status);
132    
133            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
134            public java.lang.String getGroupEntriesRSS(long groupId, Date displayDate,
135                    int status, int max, java.lang.String type, double version,
136                    java.lang.String displayStyle, java.lang.String feedURL,
137                    java.lang.String entryURL, ThemeDisplay themeDisplay)
138                    throws PortalException;
139    
140            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
141            public List<BlogsEntry> getGroupUserEntries(long groupId, long userId,
142                    int status, int start, int end, OrderByComparator<BlogsEntry> obc);
143    
144            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
145            public List<BlogsEntry> getGroupUserEntries(long groupId, long userId,
146                    int[] statuses, int start, int end, OrderByComparator<BlogsEntry> obc);
147    
148            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
149            public int getGroupUserEntriesCount(long groupId, long userId, int status);
150    
151            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
152            public int getGroupUserEntriesCount(long groupId, long userId,
153                    int[] statuses);
154    
155            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
156            public List<BlogsEntry> getGroupsEntries(long companyId, long groupId,
157                    Date displayDate, int status, int max) throws PortalException;
158    
159            /**
160            * Returns the OSGi service identifier.
161            *
162            * @return the OSGi service identifier
163            */
164            public java.lang.String getOSGiServiceIdentifier();
165    
166            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
167            public List<BlogsEntry> getOrganizationEntries(long organizationId,
168                    Date displayDate, int status, int max) throws PortalException;
169    
170            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
171            public java.lang.String getOrganizationEntriesRSS(long organizationId,
172                    Date displayDate, int status, int max, java.lang.String type,
173                    double version, java.lang.String displayStyle,
174                    java.lang.String feedURL, java.lang.String entryURL,
175                    ThemeDisplay themeDisplay) throws PortalException;
176    
177            public BlogsEntry moveEntryToTrash(long entryId) throws PortalException;
178    
179            public void restoreEntryFromTrash(long entryId) throws PortalException;
180    
181            public void subscribe(long groupId) throws PortalException;
182    
183            public void unsubscribe(long groupId) throws PortalException;
184    
185            /**
186            * @deprecated As of 7.0.0, replaced by {@link #updateEntry(long, String,
187            String, String, String, int, int, int, int, int, boolean,
188            boolean, String[], String, ImageSelector, ImageSelector,
189            ServiceContext)}
190            */
191            @java.lang.Deprecated
192            public BlogsEntry updateEntry(long entryId, java.lang.String title,
193                    java.lang.String description, java.lang.String content,
194                    int displayDateMonth, int displayDateDay, int displayDateYear,
195                    int displayDateHour, int displayDateMinute, boolean allowPingbacks,
196                    boolean allowTrackbacks, java.lang.String[] trackbacks,
197                    boolean smallImage, java.lang.String smallImageURL,
198                    java.lang.String smallImageFileName, InputStream smallImageInputStream,
199                    ServiceContext serviceContext) throws PortalException;
200    
201            public BlogsEntry updateEntry(long entryId, java.lang.String title,
202                    java.lang.String subtitle, java.lang.String description,
203                    java.lang.String content, int displayDateMonth, int displayDateDay,
204                    int displayDateYear, int displayDateHour, int displayDateMinute,
205                    boolean allowPingbacks, boolean allowTrackbacks,
206                    java.lang.String[] trackbacks, java.lang.String coverImageCaption,
207                    ImageSelector coverImageImageSelector,
208                    ImageSelector smallImageImageSelector, ServiceContext serviceContext)
209                    throws PortalException;
210    }