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