speedframeworkutility.java

来自「羽量级数据持久层开发框架」· Java 代码 · 共 66 行

JAVA
66
字号
package org.speedframework.utilities;

//~--- non-JDK imports --------------------------------------------------------

import org.apache.log4j.Logger;

import org.speedframework.application.DefaultApplication;
import org.speedframework.application.IApplication;
import org.speedframework.exception.SpeedFrameworkException;
import org.speedframework.pool.ApplicationPoolSingleton;

/**
 * @author lizf
 */
public class SpeedFrameworkUtility
 {

    /** 属性描述信息 */
    private static final String DEFALUT_APPLICATION = "default_application";

    /** 属性描述信息 */
    private static final Logger log = Logger.getLogger(SpeedFrameworkUtility.class);

    /** 属性描述信息 */
    private static ApplicationPoolSingleton appPool = ApplicationPoolSingleton.getInstance();

    /**
     * 方法描述信息,
     * 描述方法是做什么的,
     * 如何调用,最好给出调用代码示例。
     *
     * @param applicationID
     * @param cl
     *
     * @return
     *
     * @throws SpeedFrameworkException
     */
    public IApplication getApplication(String applicationID, Class cl) throws SpeedFrameworkException {
        IApplication application = appPool.get(applicationID);

        try {
            if (cl.equals(DefaultApplication.class)) {
                application = appPool.get(DEFALUT_APPLICATION);

                if (application == null) {
                    application = (IApplication) cl.newInstance();
                    appPool.put(DEFALUT_APPLICATION, application);
                }

                application.setApplicationID(applicationID);
            } else {
                if (application == null) {
                    application = (IApplication) cl.newInstance();
                    application.setApplicationID(applicationID);
                    appPool.put(applicationID, application);
                }
            }
        } catch (Exception e) {
            throw new SpeedFrameworkException(e);
        }

        return application;
    }
}

⌨️ 快捷键说明

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