001    /**
002     * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
003     *
004     * The contents of this file are subject to the terms of the Liferay Enterprise
005     * Subscription License ("License"). You may not use this file except in
006     * compliance with the License. You can obtain a copy of the License by
007     * contacting Liferay, Inc. See the License for the specific language governing
008     * permissions and limitations under the License, including but not limited to
009     * distribution rights of the Software.
010     *
011     *
012     *
013     */
014    
015    package com.liferay.portal.service.impl;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.model.LayoutRevision;
020    import com.liferay.portal.model.LayoutSetBranch;
021    import com.liferay.portal.security.permission.ActionKeys;
022    import com.liferay.portal.service.ServiceContext;
023    import com.liferay.portal.service.base.LayoutRevisionServiceBaseImpl;
024    import com.liferay.portal.service.permission.GroupPermissionUtil;
025    
026    /**
027     * @author Raymond Augé
028     * @author Julio Camarero
029     */
030    public class LayoutRevisionServiceImpl extends LayoutRevisionServiceBaseImpl {
031    
032            public LayoutRevision addLayoutRevision(
033                            long userId, long layoutSetBranchId, long layoutBranchId,
034                            long parentLayoutRevisionId, boolean head, long plid,
035                            boolean privateLayout, String name, String title,
036                            String description, String keywords, String robots,
037                            String typeSettings, boolean iconImage, long iconImageId,
038                            String themeId, String colorSchemeId, String wapThemeId,
039                            String wapColorSchemeId, String css, ServiceContext serviceContext)
040                    throws PortalException, SystemException {
041    
042                    LayoutSetBranch layoutSetBranch =
043                            layoutSetBranchPersistence.findByPrimaryKey(layoutSetBranchId);
044    
045                    GroupPermissionUtil.check(
046                            getPermissionChecker(), layoutSetBranch.getGroupId(),
047                            ActionKeys.ADD_LAYOUT_BRANCH);
048    
049                    return layoutRevisionLocalService.addLayoutRevision(
050                            userId, layoutSetBranchId, layoutBranchId,
051                            parentLayoutRevisionId, head, plid, privateLayout, name, title,
052                            description, keywords, robots, typeSettings, iconImage, iconImageId,
053                            themeId, colorSchemeId, wapThemeId, wapColorSchemeId, css,
054                            serviceContext);
055            }
056    
057    }