mmlclienthandlerfactory.java.svn-base

来自「java实现的socket连接池,使用了apache的objectpool」· SVN-BASE 代码 · 共 77 行

SVN-BASE
77
字号
// $dateCreated:2006-8-20-12:03:42 userCreated:pippo
package com.vms.ts.simulator.mmlserver;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.pool.BasePoolableObjectFactory;
import org.quickserver.net.server.ClientHandler;

/**
 * @author pippo
 */
public class MMLClientHandlerFactory extends BasePoolableObjectFactory {

    private static Log logger = LogFactory.getLog(MMLClientHandlerFactory.class);

    public MMLClientHandlerFactory() {
        super();
    }

    /*
     * (非 Javadoc)
     *
     * @see org.apache.commons.pool.BasePoolableObjectFactory#makeObject()
     */
    public Object makeObject() throws Exception {
        return new MMLClientHandler();
    }

    /*
     * (非 Javadoc)
     *
     * @see org.apache.commons.pool.BasePoolableObjectFactory#activateObject(java.lang.Object)
     */
    public void activateObject(Object obj) throws Exception {
        if (logger.isDebugEnabled())
            logger.debug("activate object:" + obj);
    }

    /*
     * (非 Javadoc)
     *
     * @see org.apache.commons.pool.BasePoolableObjectFactory#destroyObject(java.lang.Object)
     */
    public void destroyObject(Object obj) throws Exception {
        if (logger.isDebugEnabled())
            logger.debug("destory object:" + obj);
        if (obj == null)
            return;
        passivateObject(obj);
        obj = null;
    }

    /*
     * (非 Javadoc)
     *
     * @see org.apache.commons.pool.BasePoolableObjectFactory#passivateObject(java.lang.Object)
     */
    public void passivateObject(Object obj) throws Exception {
        if (logger.isDebugEnabled())
            logger.debug("passivate object:" + obj);
        ClientHandler ch = (ClientHandler) obj;
        ch.clean();
    }

    /*
     * (非 Javadoc)
     *
     * @see org.apache.commons.pool.BasePoolableObjectFactory#validateObject(java.lang.Object)
     */
    public boolean validateObject(Object obj) {
        if (logger.isDebugEnabled())
            logger.debug("validate object:" + obj);
        return obj == null ? false : true;
    }

}

⌨️ 快捷键说明

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