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.portal.kernel.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.model.LayoutSet; 023 import com.liferay.portal.kernel.security.access.control.AccessControlled; 024 import com.liferay.portal.kernel.transaction.Isolation; 025 import com.liferay.portal.kernel.transaction.Transactional; 026 027 import java.io.File; 028 import java.io.InputStream; 029 030 /** 031 * Provides the remote service interface for LayoutSet. Methods of this 032 * service are expected to have security checks based on the propagated JAAS 033 * credentials because this service can be accessed remotely. 034 * 035 * @author Brian Wing Shun Chan 036 * @see LayoutSetServiceUtil 037 * @see com.liferay.portal.service.base.LayoutSetServiceBaseImpl 038 * @see com.liferay.portal.service.impl.LayoutSetServiceImpl 039 * @generated 040 */ 041 @AccessControlled 042 @JSONWebService 043 @ProviderType 044 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 045 PortalException.class, SystemException.class}) 046 public interface LayoutSetService extends BaseService { 047 /* 048 * NOTE FOR DEVELOPERS: 049 * 050 * Never modify or reference this interface directly. Always use {@link LayoutSetServiceUtil} to access the layout set remote service. Add custom service methods to {@link com.liferay.portal.service.impl.LayoutSetServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 051 */ 052 public LayoutSet updateLookAndFeel(long groupId, boolean privateLayout, 053 java.lang.String themeId, java.lang.String colorSchemeId, 054 java.lang.String css) throws PortalException; 055 056 public LayoutSet updateSettings(long groupId, boolean privateLayout, 057 java.lang.String settings) throws PortalException; 058 059 public LayoutSet updateVirtualHost(long groupId, boolean privateLayout, 060 java.lang.String virtualHost) throws PortalException; 061 062 /** 063 * Returns the OSGi service identifier. 064 * 065 * @return the OSGi service identifier 066 */ 067 public java.lang.String getOSGiServiceIdentifier(); 068 069 /** 070 * Updates the state of the layout set prototype link. 071 * 072 * <p> 073 * <strong>Important:</strong> Setting 074 * <code>layoutSetPrototypeLinkEnabled</code> to <code>true</code> and 075 * <code>layoutSetPrototypeUuid</code> to <code>null</code> when the layout 076 * set prototype's current uuid is <code>null</code> will result in an 077 * <code>IllegalStateException</code>. 078 * </p> 079 * 080 * @param groupId the primary key of the group 081 * @param privateLayout whether the layout set is private to the group 082 * @param layoutSetPrototypeLinkEnabled whether the layout set prototype is 083 link enabled 084 * @param layoutSetPrototypeUuid the uuid of the layout set prototype to 085 link with 086 */ 087 public void updateLayoutSetPrototypeLinkEnabled(long groupId, 088 boolean privateLayout, boolean layoutSetPrototypeLinkEnabled, 089 java.lang.String layoutSetPrototypeUuid) throws PortalException; 090 091 public void updateLogo(long groupId, boolean privateLayout, boolean logo, 092 byte[] bytes) throws PortalException; 093 094 public void updateLogo(long groupId, boolean privateLayout, boolean logo, 095 File file) throws PortalException; 096 097 public void updateLogo(long groupId, boolean privateLayout, boolean logo, 098 InputStream inputStream) throws PortalException; 099 100 public void updateLogo(long groupId, boolean privateLayout, boolean logo, 101 InputStream inputStream, boolean cleanUpStream) 102 throws PortalException; 103 }