001    /**
002     * Copyright (c) 2000-2012 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 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    import com.liferay.portal.security.ac.AccessControlled;
024    import com.liferay.portal.service.BaseService;
025    
026    /**
027     * The interface for the asset tag property remote service.
028     *
029     * <p>
030     * 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.
031     * </p>
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    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
042            PortalException.class, SystemException.class})
043    public interface AssetTagPropertyService extends BaseService {
044            /*
045             * NOTE FOR DEVELOPERS:
046             *
047             * 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.
048             */
049    
050            /**
051            * Returns the Spring bean ID for this bean.
052            *
053            * @return the Spring bean ID for this bean
054            */
055            public java.lang.String getBeanIdentifier();
056    
057            /**
058            * Sets the Spring bean ID for this bean.
059            *
060            * @param beanIdentifier the Spring bean ID for this bean
061            */
062            public void setBeanIdentifier(java.lang.String beanIdentifier);
063    
064            /**
065            * Adds an asset tag property.
066            *
067            * @param tagId the primary key of the tag
068            * @param key the key to be associated to the value
069            * @param value the value to which the key will refer
070            * @return the created asset tag property
071            * @throws PortalException if the user did not have permission to update the
072            asset tag, or if the key or value were invalid
073            * @throws SystemException if a system exception occurred
074            */
075            public com.liferay.portlet.asset.model.AssetTagProperty addTagProperty(
076                    long tagId, java.lang.String key, java.lang.String value)
077                    throws com.liferay.portal.kernel.exception.PortalException,
078                            com.liferay.portal.kernel.exception.SystemException;
079    
080            /**
081            * Deletes the asset tag property with the specified ID.
082            *
083            * @param tagPropertyId the primary key of the asset tag property instance
084            * @throws PortalException if an asset tag property with the primary key
085            could not be found or if the user did not have permission to
086            update the asset tag property
087            * @throws SystemException if a system exception occurred
088            */
089            public void deleteTagProperty(long tagPropertyId)
090                    throws com.liferay.portal.kernel.exception.PortalException,
091                            com.liferay.portal.kernel.exception.SystemException;
092    
093            /**
094            * Returns all the asset tag property instances with the specified tag ID.
095            *
096            * @param tagId the primary key of the tag
097            * @return the matching asset tag properties
098            * @throws SystemException if a system exception occurred
099            */
100            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
101            public java.util.List<com.liferay.portlet.asset.model.AssetTagProperty> getTagProperties(
102                    long tagId) throws com.liferay.portal.kernel.exception.SystemException;
103    
104            /**
105            * Returns asset tag properties with the specified group and key.
106            *
107            * @param companyId the primary key of the company
108            * @param key the key that refers to some value
109            * @return the matching asset tag properties
110            * @throws SystemException if a system exception occurred
111            */
112            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
113            public java.util.List<com.liferay.portlet.asset.model.AssetTagProperty> getTagPropertyValues(
114                    long companyId, java.lang.String key)
115                    throws com.liferay.portal.kernel.exception.SystemException;
116    
117            /**
118            * Updates the asset tag property.
119            *
120            * @param tagPropertyId the primary key of the asset tag property
121            * @param key the new key to be associated to the value
122            * @param value the new value to which the key will refer
123            * @return the updated asset tag property
124            * @throws PortalException if an asset tag property with the primary key
125            could not be found, if the user did not have permission to update
126            the asset tag, or if the key or value were invalid
127            * @throws SystemException if a system exception occurred
128            */
129            public com.liferay.portlet.asset.model.AssetTagProperty updateTagProperty(
130                    long tagPropertyId, java.lang.String key, java.lang.String value)
131                    throws com.liferay.portal.kernel.exception.PortalException,
132                            com.liferay.portal.kernel.exception.SystemException;
133    }