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