Package org.hotswap.agent.plugin.zk
Class ZkPlugin
- java.lang.Object
-
- org.hotswap.agent.plugin.zk.ZkPlugin
-
@Plugin(name="ZK", description="ZK Framework (http://www.zkoss.org/). Change library properties default values to disablecaches, maintains Label cache and bean resolver cache.", testedVersions="6.5.2", expectedVersions={"5x","6x","7x?"}) public class ZkPlugin extends java.lang.ObjectZK framework - http://www.zkoss.org/.Plugin:
- Plugin initialization is triggered after DHtmlLayoutServlet.init() method in servlet classloader
- Change default value for library properties of ZK caches (org.zkoss.web.classWebResource.cache=false, org.zkoss.zk.WPD.cache=false, org.zkoss.zk.WCS.cache=false, zk-dl.annotation.cache=false). App can override this setting by explicitly set value to true in zk.xml
- Clear Labels cache after change of any .properties file
- Clear org.zkoss.zel.BeanELResolver caches after any class change
- Author:
- Jiri Bubnik
-
-
Constructor Summary
Constructors Constructor Description ZkPlugin()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidbeanELResolverRegisterVariable(org.hotswap.agent.javassist.CtClass ctClass)BeanELResolver contains reflection cache (bean properites).static voidbinderImplRegisterVariable(org.hotswap.agent.javassist.CtClass ctClass)BeanELResolver contains reflection cache (bean properites).static voiddefaultDisableCaches(org.hotswap.agent.javassist.ClassPool classPool, org.hotswap.agent.javassist.CtClass ctClass)Default values of caches in development mode.voidinvalidateClassCache()static voidlayoutServletCallInitialized(org.hotswap.agent.javassist.CtClass ctClass)Initialize the plugin after DHtmlLayoutServlet.init() method.voidrefreshProperties()voidregisterBeanELResolver(java.lang.Object beanELResolver)voidregisterBinderImpl(java.lang.Object binderImpl)
-
-
-
Method Detail
-
layoutServletCallInitialized
@OnClassLoadEvent(classNameRegexp="org.zkoss.zk.ui.http.DHtmlLayoutServlet") public static void layoutServletCallInitialized(org.hotswap.agent.javassist.CtClass ctClass) throws org.hotswap.agent.javassist.NotFoundException, org.hotswap.agent.javassist.CannotCompileExceptionInitialize the plugin after DHtmlLayoutServlet.init() method.- Throws:
org.hotswap.agent.javassist.NotFoundExceptionorg.hotswap.agent.javassist.CannotCompileException
-
defaultDisableCaches
@OnClassLoadEvent(classNameRegexp="org.zkoss.lang.Library") public static void defaultDisableCaches(org.hotswap.agent.javassist.ClassPool classPool, org.hotswap.agent.javassist.CtClass ctClass) throws org.hotswap.agent.javassist.NotFoundException, org.hotswap.agent.javassist.CannotCompileExceptionDefault values of caches in development mode. Note, that this is a little bit aggressive, but the user may override this by providing explicit value in zk.xml- Throws:
org.hotswap.agent.javassist.NotFoundExceptionorg.hotswap.agent.javassist.CannotCompileException
-
refreshProperties
@OnResourceFileEvent(path="/", filter=".*.properties") public void refreshProperties()
-
beanELResolverRegisterVariable
@OnClassLoadEvent(classNameRegexp="org.zkoss.zel.BeanELResolver") public static void beanELResolverRegisterVariable(org.hotswap.agent.javassist.CtClass ctClass) throws org.hotswap.agent.javassist.CannotCompileExceptionBeanELResolver contains reflection cache (bean properites).- Throws:
org.hotswap.agent.javassist.CannotCompileException
-
registerBeanELResolver
public void registerBeanELResolver(java.lang.Object beanELResolver)
-
binderImplRegisterVariable
@OnClassLoadEvent(classNameRegexp="org.zkoss.bind.impl.BinderImpl") public static void binderImplRegisterVariable(org.hotswap.agent.javassist.CtClass ctClass) throws org.hotswap.agent.javassist.CannotCompileExceptionBeanELResolver contains reflection cache (bean properites).- Throws:
org.hotswap.agent.javassist.CannotCompileException
-
registerBinderImpl
public void registerBinderImpl(java.lang.Object binderImpl)
-
invalidateClassCache
@OnClassLoadEvent(classNameRegexp=".*", events=REDEFINE) public void invalidateClassCache() throws java.lang.Exception- Throws:
java.lang.Exception
-
-