PolicyServiceImpl.java |
1 /** 2 * Copyright (c) 2000-2009 Liferay, Inc. All rights reserved. 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a copy 5 * of this software and associated documentation files (the "Software"), to deal 6 * in the Software without restriction, including without limitation the rights 7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8 * copies of the Software, and to permit persons to whom the Software is 9 * furnished to do so, subject to the following conditions: 10 * 11 * The above copyright notice and this permission notice shall be included in 12 * all copies or substantial portions of the Software. 13 * 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 20 * SOFTWARE. 21 */ 22 23 /** 24 * The contents of this file are subject to the terms of the Common Development 25 * and Distribution License (the License). You may not use this file except in 26 * compliance with the License. 27 * 28 * You can obtain a copy of the License at http://www.sun.com/cddl/cddl.html and 29 * legal/CDDLv1.0.txt. See the License for the specific language governing 30 * permission and limitations under the License. 31 * 32 * When distributing Covered Code, include this CDDL Header Notice in each file 33 * and include the License file at legal/CDDLv1.0.txt. 34 * 35 * If applicable, add the following below the CDDL Header, with the fields 36 * enclosed by brackets [] replaced by your own identifying information: 37 * "Portions Copyrighted [year] [name of copyright owner]" 38 * 39 * Copyright 2009 Sun Microsystems Inc. All rights reserved. 40 */ 41 42 package com.liferay.portal.portletcontainer; 43 44 import com.liferay.portal.util.WebKeys; 45 46 import com.sun.portal.container.service.ServiceAdapter; 47 import com.sun.portal.container.service.policy.ContainerEventPolicy; 48 import com.sun.portal.container.service.policy.EventPolicy; 49 import com.sun.portal.container.service.policy.PolicyService; 50 import com.sun.portal.container.service.policy.PublicRenderParameterPolicy; 51 52 import javax.servlet.ServletContext; 53 import javax.servlet.http.HttpServletRequest; 54 55 /** 56 * <a href="PolicyServiceImpl.java.html"><b><i>View Source</i></b></a> 57 * 58 * @author Deepak Gothe 59 * 60 */ 61 public class PolicyServiceImpl extends ServiceAdapter implements PolicyService { 62 63 public void destroy() { 64 _eventPolicy = null; 65 _publicRenderParameterPolicy = null; 66 _containerEventPolicy = null; 67 } 68 69 public ContainerEventPolicy getContainerEventPolicy() { 70 return _containerEventPolicy; 71 } 72 73 public String getDescription() { 74 return _DESCRIPTION; 75 } 76 77 public EventPolicy getEventPolicy() { 78 return _eventPolicy; 79 } 80 81 public String getName() { 82 return POLICY_SERVICE; 83 } 84 85 public PublicRenderParameterPolicy getPublicRenderParameterPolicy() { 86 return _publicRenderParameterPolicy; 87 } 88 89 public void init(ServletContext context) { 90 _eventPolicy = new EventPolicyImpl(); 91 _containerEventPolicy = new ContainerEventPolicyImpl(); 92 _publicRenderParameterPolicy = new PublicRenderParameterPolicyImpl(); 93 } 94 95 public boolean renderPortletsInParallel(HttpServletRequest request) { 96 Boolean portletParallelRender = (Boolean)request.getAttribute( 97 WebKeys.PORTLET_PARALLEL_RENDER); 98 99 if (portletParallelRender != null) { 100 return portletParallelRender.booleanValue(); 101 } 102 103 return false; 104 } 105 106 private static final String _DESCRIPTION = 107 "Provide policy information for events and public render parameters " + 108 "that are in effect"; 109 110 private EventPolicy _eventPolicy; 111 private ContainerEventPolicy _containerEventPolicy; 112 private PublicRenderParameterPolicy _publicRenderParameterPolicy; 113 114 }