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.portlet.asset.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.jsonwebservice.JSONWebService;
022    import com.liferay.portal.kernel.transaction.Isolation;
023    import com.liferay.portal.kernel.transaction.Propagation;
024    import com.liferay.portal.kernel.transaction.Transactional;
025    import com.liferay.portal.security.ac.AccessControlled;
026    import com.liferay.portal.service.BaseService;
027    
028    /**
029     * Provides the remote service interface for AssetTagProperty. Methods of this
030     * service are expected to have security checks based on the propagated JAAS
031     * credentials because this service can be accessed remotely.
032     *
033     * @author Brian Wing Shun Chan
034     * @see AssetTagPropertyServiceUtil
035     * @see com.liferay.portlet.asset.service.base.AssetTagPropertyServiceBaseImpl
036     * @see com.liferay.portlet.asset.service.impl.AssetTagPropertyServiceImpl
037     * @generated
038     */
039    @AccessControlled
040    @JSONWebService
041    @ProviderType
042    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
043            PortalException.class, SystemException.class})
044    public interface AssetTagPropertyService extends BaseService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link AssetTagPropertyServiceUtil} to access the asset tag property remote service. Add custom service methods to {@link com.liferay.portlet.asset.service.impl.AssetTagPropertyServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050    
051            /**
052            * Adds an asset tag property.
053            *
054            * @param tagId the primary key of the tag
055            * @param key the key to be associated to the value
056            * @param value the value to which the key will refer
057            * @return the created asset tag property
058            * @throws PortalException if the user did not have permission to update the
059            asset tag, or if the key or value were invalid
060            */
061            public com.liferay.portlet.asset.model.AssetTagProperty addTagProperty(
062                    long tagId, java.lang.String key, java.lang.String value)
063                    throws com.liferay.portal.kernel.exception.PortalException;
064    
065            /**
066            * Deletes the asset tag property with the specified ID.
067            *
068            * @param tagPropertyId the primary key of the asset tag property instance
069            * @throws PortalException if an asset tag property with the primary key
070            could not be found or if the user did not have permission to
071            update the asset tag property
072            */
073            public void deleteTagProperty(long tagPropertyId)
074                    throws com.liferay.portal.kernel.exception.PortalException;
075    
076            /**
077            * Returns the Spring bean ID for this bean.
078            *
079            * @return the Spring bean ID for this bean
080            */
081            public java.lang.String getBeanIdentifier();
082    
083            /**
084            * Returns all the asset tag property instances with the specified tag ID.
085            *
086            * @param tagId the primary key of the tag
087            * @return the matching asset tag properties
088            */
089            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
090            public java.util.List<com.liferay.portlet.asset.model.AssetTagProperty> getTagProperties(
091                    long tagId);
092    
093            /**
094            * Returns asset tag properties with the specified group and key.
095            *
096            * @param companyId the primary key of the company
097            * @param key the key that refers to some value
098            * @return the matching asset tag properties
099            */
100            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
101            public java.util.List<com.liferay.portlet.asset.model.AssetTagProperty> getTagPropertyValues(
102                    long companyId, java.lang.String key);
103    
104            /**
105            * Sets the Spring bean ID for this bean.
106            *
107            * @param beanIdentifier the Spring bean ID for this bean
108            */
109            public void setBeanIdentifier(java.lang.String beanIdentifier);
110    
111            /**
112            * Updates the asset tag property.
113            *
114            * @param tagPropertyId the primary key of the asset tag property
115            * @param key the new key to be associated to the value
116            * @param value the new value to which the key will refer
117            * @return the updated asset tag property
118            * @throws PortalException if an asset tag property with the primary key
119            could not be found, if the user did not have permission to update
120            the asset tag, or if the key or value were invalid
121            */
122            public com.liferay.portlet.asset.model.AssetTagProperty updateTagProperty(
123                    long tagPropertyId, java.lang.String key, java.lang.String value)
124                    throws com.liferay.portal.kernel.exception.PortalException;
125    }