⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 portletwindowconfig.java.svn-base

📁 portal越来越流行了
💻 SVN-BASE
字号:
/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *      http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.apache.pluto.driver.services.portal;/** * Configuration of a portlet window on the portal page. */public class PortletWindowConfig {		// Private Member Variables ------------------------------------------------	    /** The context path of the associated portlet. */    private String contextPath;    /** The portlet name. */    private String portletName;    /** The metaInfo that provides uniqueness across window ids. */    private String metaInfo;    // Constructor -------------------------------------------------------------        /**     * No-arg constructor.     */    public PortletWindowConfig() {    	// Do nothing.    }    private PortletWindowConfig(String contextPath, String portletName, String metaInfo) {        this.contextPath = contextPath;        this.portletName = portletName;        this.metaInfo = metaInfo;    }    // Public Methods ----------------------------------------------------------        public String getId() {    	return createPortletId(contextPath, portletName, metaInfo);    }    public String getContextPath() {        return contextPath;    }   public void setContextPath(String contextPath) {        this.contextPath = contextPath;    }    public String getPortletName() {        return portletName;    }    public void setPortletName(String portletName) {        this.portletName = portletName;    }    public String getMetaInfo() {        return metaInfo;    }    public void setMetaInfo(String metaInfo) {        this.metaInfo = metaInfo;    }    // Public Static Methods ---------------------------------------------------        /**     * Creates the portlet ID from context path and portlet name. The portlet ID     * is constructed by concatinating the context path and the portlet name     * using a dot ('.').     *      * The method checks that the portlet name parameter does not have a dot. This check     * is not done for the portlet ID.     *      * @param contextPath  the portlet context path.     * @param portletName  the portlet name.     * @throws IllegalArgumentException if the portletName has a dot     * @throws NullPointerException if the portlet Name or context path is null.     */    public static String createPortletId(String contextPath, String portletName, String metaInfo)    	throws NullPointerException, IllegalArgumentException {    	if (contextPath == null) {    		throw new NullPointerException("Context path must not be null.");    	}    	if (portletName == null) {    		throw new NullPointerException("Portlet name must not be null.");    	}    	if (portletName.indexOf('.') != -1) {    		throw new IllegalArgumentException("Portlet name must not have a dot(period). Please remove the dot from the value of the portlet-name element ("+ portletName + ") in portlet.xml");    	}        if(metaInfo == null) {            metaInfo = "";        }        if (contextPath.charAt(0) == '/')        {            contextPath = contextPath.substring(1);        }        return contextPath + "." + portletName + "!" + metaInfo;    }        /**     * Parses out the portlet context path from the portlet ID.     * @param portletId  the portlet ID to parse.     * @return the portlet context path.     */    public static String parseContextPath(String portletId) {    	int index = getSeparatorIndex(portletId);    	if (portletId.charAt(0) != '/')    	{            return "/" + portletId.substring(0, index);    	}    	else    	{            return portletId.substring(0, index);    	}    }        /**     * Parses out the portlet context path from the portlet ID.     * @param portletId  the portlet ID to parse.     * @return the portlet context path.     */    public static String parsePortletName(String portletId) {    	int index = getSeparatorIndex(portletId);        String postfix = portletId.substring(index + 1);        index = postfix.indexOf("!");        if(index > -1) {            return postfix.substring(0, index);        }        return postfix;    }    public static String parseMetaInfo(String portletId) {        int index = portletId.indexOf("!");        if(index > -1) {            return portletId.substring(index+1);        }        return "";    }    // Private Static Method ---------------------------------------------------        /**     * Parses the portlet ID and returns the separator (".") index. The portlet     * ID passed in should be a valid ID: not null and contains ".". The portlet      * ID can have more than one dot, but the last one is taken to be the separator.     *     * @param portletId  the portlet ID to parse.     * @return the separator index.     * @throws IllegalArgumentException if portlet ID does not contain a dot.     * @throws NullPointerException if the portlet ID is null     */    private static int getSeparatorIndex(String portletId)    	throws NullPointerException, IllegalArgumentException {    	if (portletId == null) {    		throw new NullPointerException("Portlet ID is null");    	}        int index = portletId.lastIndexOf(".");        if (index < 0 || index == (portletId.length() - 1)) {        	throw new IllegalArgumentException("Portlet ID '" + portletId + "' does not contain a dot");        }    	return index;    }   public static PortletWindowConfig fromId(String portletWindowId) {       String contextPath = parseContextPath(portletWindowId);       String portletName = parsePortletName(portletWindowId);       String metaInfo = parseMetaInfo(portletWindowId);       return new PortletWindowConfig(contextPath, portletName, metaInfo);   }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -