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

📄 sessiondesktopcacheprovider.java

📁 非常接近C/S操作方式的Java Ajax框架-ZK 用ZK框架使你的B/S应用程序更漂亮更易操作。 官网:www.zkoss.org
💻 JAVA
字号:
/* SessionDesktopCacheProvider.java{{IS_NOTE	Purpose:			Description:			History:		Tue Apr 18 11:52:51     2006, Created by tomyeh}}IS_NOTECopyright (C) 2006 Potix Corporation. All Rights Reserved.{{IS_RIGHT}}IS_RIGHT*/package org.zkoss.zk.ui.impl;import org.zkoss.zk.ui.WebApp;import org.zkoss.zk.ui.Session;import org.zkoss.zk.ui.sys.SessionCtrl;import org.zkoss.zk.ui.sys.DesktopCache;import org.zkoss.zk.ui.sys.DesktopCacheProvider;/** * A implementation of {@link DesktopCacheProvider} that stores all desktops * from the same session in one desktop cache. * * <p>Implementation Note: we don't store the desktop cache in the session's * attribute (rather, we use {@link SessionCtrl#setDesktopCache}. Reason: * the desktop cache is serialized only if the session is serializable. * * @author tomyeh * @see GlobalDesktopCacheProvider */public class SessionDesktopCacheProvider implements DesktopCacheProvider {	private WebApp _wapp;	//-- DesktopCacheProvider --//	public DesktopCache getDesktopCache(Session sess) {		final SessionCtrl sessCtrl = (SessionCtrl)sess;		DesktopCache dc = sessCtrl.getDesktopCache();		if (dc == null) {			synchronized (this) {				if (sessCtrl.getDesktopCache() == null) {					dc = new SimpleDesktopCache(_wapp.getConfiguration());					sessCtrl.setDesktopCache(dc);				}			}		}		return dc;	}	public void sessionDestroyed(Session sess) {		final SessionCtrl sessCtrl = (SessionCtrl)sess;		final DesktopCache dc = sessCtrl.getDesktopCache();		if (dc != null) {			sessCtrl.setDesktopCache(null);			dc.stop();		}	}	/** Invokes {@link #getDesktopCache}'s {@link DesktopCache#sessionWillPassivate}.	 */	public void sessionWillPassivate(Session sess) {		final DesktopCache dc = ((SessionCtrl)sess).getDesktopCache();		if (dc != null) dc.sessionWillPassivate(sess);	}	/** Invokes {@link #getDesktopCache}'s {@link DesktopCache#sessionDidActivate}.	 */	public void sessionDidActivate(Session sess) {		final DesktopCache dc = ((SessionCtrl)sess).getDesktopCache();		if (dc != null) dc.sessionDidActivate(sess);	}	public void start(WebApp wapp) {		_wapp = wapp;	}	public void stop(WebApp wapp) {		_wapp = null;	}}

⌨️ 快捷键说明

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