001    /**
002     * Copyright (c) 2000-2013 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.social.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.transaction.Isolation;
022    import com.liferay.portal.kernel.transaction.Transactional;
023    import com.liferay.portal.service.BaseLocalService;
024    
025    /**
026     * Provides the local service interface for SocialRequestInterpreter. Methods of this
027     * service will not have security checks based on the propagated JAAS
028     * credentials because this service can only be accessed from within the same
029     * VM.
030     *
031     * @author Brian Wing Shun Chan
032     * @see SocialRequestInterpreterLocalServiceUtil
033     * @see com.liferay.portlet.social.service.base.SocialRequestInterpreterLocalServiceBaseImpl
034     * @see com.liferay.portlet.social.service.impl.SocialRequestInterpreterLocalServiceImpl
035     * @generated
036     */
037    @ProviderType
038    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
039            PortalException.class, SystemException.class})
040    public interface SocialRequestInterpreterLocalService extends BaseLocalService {
041            /*
042             * NOTE FOR DEVELOPERS:
043             *
044             * Never modify or reference this interface directly. Always use {@link SocialRequestInterpreterLocalServiceUtil} to access the social request interpreter local service. Add custom service methods to {@link com.liferay.portlet.social.service.impl.SocialRequestInterpreterLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
045             */
046    
047            /**
048            * Returns the Spring bean ID for this bean.
049            *
050            * @return the Spring bean ID for this bean
051            */
052            public java.lang.String getBeanIdentifier();
053    
054            /**
055            * Sets the Spring bean ID for this bean.
056            *
057            * @param beanIdentifier the Spring bean ID for this bean
058            */
059            public void setBeanIdentifier(java.lang.String beanIdentifier);
060    
061            /**
062            * Adds the social request interpreter to the list of available
063            * interpreters.
064            *
065            * @param requestInterpreter the social request interpreter
066            */
067            public void addRequestInterpreter(
068                    com.liferay.portlet.social.model.SocialRequestInterpreter requestInterpreter);
069    
070            /**
071            * Removes the social request interpreter from the list of available
072            * interpreters.
073            *
074            * @param requestInterpreter the social request interpreter
075            */
076            public void deleteRequestInterpreter(
077                    com.liferay.portlet.social.model.SocialRequestInterpreter requestInterpreter);
078    
079            /**
080            * Creates a human readable request feed entry for the social request using
081            * an available compatible request interpreter.
082            *
083            * <p>
084            * This method finds the appropriate interpreter for the request by going
085            * through the available interpreters to find one that can handle the asset
086            * type of the request.
087            * </p>
088            *
089            * @param request the social request to be translated to human readable
090            form
091            * @param themeDisplay the theme display needed by interpreters to create
092            links and get localized text fragments
093            * @return the social request feed entry
094            */
095            public com.liferay.portlet.social.model.SocialRequestFeedEntry interpret(
096                    com.liferay.portlet.social.model.SocialRequest request,
097                    com.liferay.portal.theme.ThemeDisplay themeDisplay);
098    
099            /**
100            * Processes the confirmation of the social request.
101            *
102            * <p>
103            * Confirmations are handled by finding the appropriate social request
104            * interpreter and calling its processConfirmation() method. To find the
105            * appropriate interpreter this method goes through the available
106            * interpreters to find one that can handle the asset type of the request.
107            * </p>
108            *
109            * @param request the social request being confirmed
110            * @param themeDisplay the theme display needed by interpreters to create
111            links and get localized text fragments
112            */
113            public void processConfirmation(
114                    com.liferay.portlet.social.model.SocialRequest request,
115                    com.liferay.portal.theme.ThemeDisplay themeDisplay);
116    
117            /**
118            * Processes the rejection of the social request.
119            *
120            * <p>
121            * Rejections are handled by finding the appropriate social request
122            * interpreters and calling their processRejection() methods. To find the
123            * appropriate interpreters this method goes through the available
124            * interpreters and asks them if they can handle the asset type of the
125            * request.
126            * </p>
127            *
128            * @param request the social request being rejected
129            * @param themeDisplay the theme display needed by interpreters to create
130            links and get localized text fragments
131            */
132            public void processRejection(
133                    com.liferay.portlet.social.model.SocialRequest request,
134                    com.liferay.portal.theme.ThemeDisplay themeDisplay);
135    }