亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? simpleportletpostprocessor.java

?? spring framework 2.5.4源代碼
?? JAVA
字號(hào):
/*
 * Copyright 2002-2006 the original author or authors.
 *
 * Licensed 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.springframework.web.portlet.handler;

import java.util.Collections;
import java.util.Enumeration;
import java.util.Locale;
import java.util.ResourceBundle;

import javax.portlet.Portlet;
import javax.portlet.PortletConfig;
import javax.portlet.PortletContext;
import javax.portlet.PortletException;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanInitializationException;
import org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor;
import org.springframework.web.portlet.context.PortletConfigAware;
import org.springframework.web.portlet.context.PortletContextAware;

/**
 * Bean post-processor that applies initialization and destruction callbacks
 * to beans that implement the Portlet interface.
 *
 * <p>After initialization of the bean instance, the Portlet <code>init</code>
 * method will be called with a PortletConfig that contains the bean name
 * of the Portlet and the PortletContext that it is running in.
 *
 * <p>Before destruction of the bean instance, the Portlet <code>destroy</code>
 * will be called.
 *
 * <p><b>Note that this post-processor does not support Portlet initialization
 * parameters.</b> Bean instances that implement the Portlet interface are
 * supposed to be configured like any other Spring bean, that is, through
 * constructor arguments or bean properties.
 *
 * <p>For reuse of a Portlet implementation in a plain Portlet container and as
 * a bean in a Spring context, consider deriving from Spring's GenericPortletBean
 * base class that applies Portlet initialization parameters as bean properties,
 * supporting both initialization styles.
 *
 * <p><b>Alternatively, consider wrapping a Portlet with Spring's
 * PortletWrappingController.</b> This is particularly appropriate for
 * existing Portlet classes, allowing to specify Portlet initialization
 * parameters etc.
 *
 * @author Juergen Hoeller
 * @author John A. Lewis
 * @since 2.0
 * @see javax.portlet.Portlet
 * @see javax.portlet.PortletConfig
 * @see SimplePortletHandlerAdapter
 * @see org.springframework.web.portlet.GenericPortletBean
 * @see org.springframework.web.portlet.mvc.PortletWrappingController
 */
public class SimplePortletPostProcessor
	implements DestructionAwareBeanPostProcessor, PortletContextAware, PortletConfigAware {

	private boolean useSharedPortletConfig = true;

	private PortletContext portletContext;

	private PortletConfig portletConfig;


	/**
	 * Set whether to use the shared PortletConfig object passed in
	 * through <code>setPortletConfig</code>, if available.
	 * <p>Default is "true". Turn this setting to "false" to pass in
	 * a mock PortletConfig object with the bean name as portlet name,
	 * holding the current PortletContext.
	 * @see #setPortletConfig
	 */
	public void setUseSharedPortletConfig(boolean useSharedPortletConfig) {
		this.useSharedPortletConfig = useSharedPortletConfig;
	}

	public void setPortletContext(PortletContext portletContext) {
		this.portletContext = portletContext;
	}

	public void setPortletConfig(PortletConfig portletConfig) {
		this.portletConfig = portletConfig;
	}


	public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
		return bean;
	}

	public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
		if (bean instanceof Portlet) {
			PortletConfig config = this.portletConfig;
			if (config == null || !this.useSharedPortletConfig) {
				config = new DelegatingPortletConfig(beanName, this.portletContext, this.portletConfig);
			}
			try {
				((Portlet) bean).init(config);
			}
			catch (PortletException ex) {
				throw new BeanInitializationException("Portlet.init threw exception", ex);
			}
		}
		return bean;
	}

	public void postProcessBeforeDestruction(Object bean, String beanName) throws BeansException {
		if (bean instanceof Portlet) {
			((Portlet) bean).destroy();
		}
	}


	/**
	 * Internal implementation of the PortletConfig interface, to be passed
	 * to the wrapped servlet.
	 */
	private static class DelegatingPortletConfig implements PortletConfig {

		private final String portletName;

		private final PortletContext portletContext;

        private final PortletConfig portletConfig;

        public DelegatingPortletConfig(String portletName, PortletContext portletContext, PortletConfig portletConfig) {
			this.portletName = portletName;
			this.portletContext = portletContext;
            this.portletConfig = portletConfig;
		}

		public String getPortletName() {
			return portletName;
		}

		public PortletContext getPortletContext() {
			return portletContext;
		}

		public String getInitParameter(String paramName) {
			return null;
		}

		public Enumeration getInitParameterNames() {
			return Collections.enumeration(Collections.EMPTY_SET);
		}

		public ResourceBundle getResourceBundle(Locale locale) {
            return portletConfig == null ? null : portletConfig.getResourceBundle(locale);
		}
	}

}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本成人在线一区| 爽好多水快深点欧美视频| 麻豆精品在线看| 欧美精品一区视频| 国产白丝网站精品污在线入口| 国产精品天美传媒沈樵| 91蝌蚪porny九色| 国内国产精品久久| 亚洲欧美日韩国产成人精品影院| 欧美性videosxxxxx| 久久丁香综合五月国产三级网站| 欧美激情一区二区三区蜜桃视频| 91网站视频在线观看| 国产精品一区二区三区网站| 丁香亚洲综合激情啪啪综合| 色香蕉久久蜜桃| 91蜜桃在线免费视频| 国产sm精品调教视频网站| 一区二区三区免费在线观看| 国产精品久久久久aaaa| 喷水一区二区三区| 日韩一区二区三区三四区视频在线观看 | 久久99久久精品| 亚洲天堂av一区| 亚洲最大的成人av| 国产精品无人区| 一区二区三区丝袜| 国产精品美女一区二区三区| 69堂国产成人免费视频| 免费av成人在线| 91精品国产色综合久久ai换脸| 国产色婷婷亚洲99精品小说| 成人蜜臀av电影| 99久久国产综合精品色伊| 欧美日本精品一区二区三区| 久久久久久亚洲综合影院红桃 | 91精彩视频在线观看| 久久精品72免费观看| 香蕉久久夜色精品国产使用方法| 国产亚洲视频系列| 亚洲欧洲99久久| 亚洲精品国产无天堂网2021| 亚洲日本一区二区| 一区二区高清视频在线观看| 亚洲免费视频成人| 亚洲欧美激情一区二区| 自拍偷拍欧美激情| 亚洲婷婷国产精品电影人久久| 中国色在线观看另类| 玉足女爽爽91| 免费不卡在线视频| 国产精品一卡二卡| 色8久久人人97超碰香蕉987| 欧美日韩日本视频| 日韩欧美国产一二三区| 久久精品日产第一区二区三区高清版| 国产精品久久久久7777按摩| 亚洲免费视频成人| a在线播放不卡| 欧美极品xxx| 国产成人免费视频一区| 欧美精品一区二区在线观看| 国内偷窥港台综合视频在线播放| 欧美男女性生活在线直播观看| 国产亚洲欧美日韩在线一区| 韩国成人在线视频| 日韩欧美国产精品一区| 日韩精品一级中文字幕精品视频免费观看| 99精品欧美一区二区三区综合在线| 在线播放欧美女士性生活| 无码av免费一区二区三区试看 | 91精品在线麻豆| 日本不卡一区二区三区| 日韩精品一区二区三区在线播放| 美女脱光内衣内裤视频久久网站 | 国产精品99精品久久免费| 日韩一级大片在线观看| 国内成人免费视频| 中文字幕精品一区二区精品绿巨人 | 一区二区三区高清不卡| 国产精品青草综合久久久久99| 91黄色免费版| 91天堂素人约啪| 成人免费视频免费观看| 国产乱对白刺激视频不卡 | 欧美精品精品一区| 色香蕉成人二区免费| 亚洲精品久久久蜜桃| 欧美成人video| 在线亚洲欧美专区二区| 久草热8精品视频在线观看| 中文字幕日韩一区| 久久综合色综合88| 日韩三级视频中文字幕| 99精品视频在线播放观看| 中文字幕一区二区三中文字幕| 欧美日韩日日摸| 99re免费视频精品全部| 美国av一区二区| 一区二区三区蜜桃网| 国产日本欧洲亚洲| 91精选在线观看| 欧美丰满少妇xxxxx高潮对白| 成人app网站| 成人午夜av电影| 成人黄页在线观看| 波多野结衣中文一区| 北条麻妃国产九九精品视频| av电影在线观看不卡| av不卡在线播放| 一本一道久久a久久精品| 91网站在线播放| 欧美美女视频在线观看| 3751色影院一区二区三区| 欧美一区二区视频观看视频| 欧美一区二区在线视频| 久久九九全国免费| 亚洲日本成人在线观看| 美美哒免费高清在线观看视频一区二区| 日韩—二三区免费观看av| 成人激情动漫在线观看| 777奇米四色成人影色区| 久久久久99精品国产片| 一区二区三区丝袜| 国产精品一区久久久久| 色国产精品一区在线观看| 在线亚洲高清视频| 欧美男人的天堂一二区| 欧美精品一区二区三区在线播放 | 波多野结衣亚洲一区| 欧美性色综合网| 91精品国产综合久久福利软件| 99国产精品视频免费观看| 欧美视频完全免费看| 国产亚洲精品超碰| 日本不卡不码高清免费观看| 顶级嫩模精品视频在线看| 欧美日韩国产三级| 蜜桃av一区二区三区| 色婷婷av一区二区三区软件| 精品88久久久久88久久久| 免费美女久久99| 欧美三级三级三级爽爽爽| 亚洲精品国产精华液| 不卡欧美aaaaa| 日韩三区在线观看| 久国产精品韩国三级视频| 欧美一区二区日韩一区二区| 婷婷一区二区三区| 欧美日韩中文一区| 亚洲电影第三页| 91精品欧美综合在线观看最新| 亚洲美女偷拍久久| 在线看国产一区二区| 一区二区三区在线观看视频| 亚洲欧洲三级电影| 日本精品视频一区二区三区| 水野朝阳av一区二区三区| 欧美一区二区三区视频在线 | 成人黄色av网站在线| 一区二区三区高清在线| 精品国产露脸精彩对白| 成人av免费在线播放| 天堂精品中文字幕在线| 国产精品视频在线看| 亚洲欧美一区二区三区久本道91 | 国产激情一区二区三区| 午夜精品一区二区三区电影天堂 | 色婷婷激情久久| 一区二区三区中文字幕电影| 亚洲国产裸拍裸体视频在线观看乱了 | 欧美一区二区三级| 国产精品综合av一区二区国产馆| 国产欧美日韩亚州综合 | 中文一区一区三区高中清不卡| 成人av一区二区三区| 免费成人在线观看| 亚洲美女屁股眼交| 精品国产精品网麻豆系列| jizz一区二区| 国产一区二区在线观看免费| 亚洲精品国久久99热| 自拍av一区二区三区| 日韩一级成人av| 视频一区视频二区中文| 国产亚洲欧美中文| 欧美一区二区视频网站| 91农村精品一区二区在线| 国产精品综合网| 久久99这里只有精品| 婷婷综合五月天| 日韩在线一区二区| 亚洲国产精品天堂| 亚洲免费伊人电影| 国产欧美视频一区二区| 免费人成黄页网站在线一区二区| 亚洲六月丁香色婷婷综合久久| 国产91色综合久久免费分享| 麻豆视频一区二区| 日韩电影在线免费观看|