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

📄 abstractapplication.java

📁 羽量级数据持久层开发框架
💻 JAVA
字号:
package org.speedframework.application;

import org.apache.log4j.Logger;

import org.speedframework.cache.IColumnInfoCache;
import org.speedframework.cache.IResultCache;
import org.speedframework.config.SpeedConfig;
import org.speedframework.db.executor.DBExecutor;
import org.speedframework.db.executor.IExecutor;
import org.speedframework.message.IMessage;
import org.speedframework.sql.ISQLBuilderFactory;

import java.util.List;

/**
 * Class AbstractApplication
 *
 * @author <a href="mailto:santafeng@gmail.com"> lizf </a>
 * @version $Revision:1.0.0, $Date: 2007-10-4 上午12:17:42 $
 */
public class AbstractApplication implements IApplication {

	protected static final Logger log = Logger
			.getLogger(AbstractApplication.class);
	
	protected boolean openTableSchema=false;

	protected String applicationID;

	protected IColumnInfoCache columnInfos;

	protected IExecutor executor;

	protected ISQLBuilderFactory factory;

	protected List filters;

	protected DBExecutor psHelper;

	protected IResultCache resultCache;

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#getApplicationID()
	 */
	public String getApplicationID() {
		return applicationID;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setApplicationID(java.lang.String)
	 */
	public void setApplicationID(String applicationID) {
		this.applicationID = applicationID;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#dealMessage(org.speedframework.message.IMessage)
	 */
	public void dealMessage(IMessage message) {

		// for (IFilter filter : filters) {
		// for(Iterator it=filters.iterator();it.hasNext();){
		// org.speedframework.filters.IFilter filter=(IFilter)it.next();
		// if (!filter.isPassed(message)) {
		// org.speedframework.message.state.IState errState = null;
		// message.setState(errState);
		// return;
		// }
		// }
		// check action
		executor.setConnection(message.getParamEntity().getConnectionAdaptor()
				.take());
		executor.setPsHelper(psHelper);
		executor.setFactory(factory);
		//设置是否打开TableSchema
		message.getParamEntity().setOpenTableSchema(this.openTableSchema);
		message.getAction().setColumnInfoCache(columnInfos);
		message.getAction().setExecutor(executor);
		message.getAction().setResultCache(resultCache);
		message.getAction().setISQLBuilderFactory(factory);
		message.getAction().setUseCache(
				message.getParamEntity().isUseCacheStatus()
						&& SpeedConfig.getGlobalCacheStatus());
		message.getAction().doAction(message);
		message.setReturnResults(message.getAction().getResult());
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setApplicationBuilderFactory(org.speedframework.application.IApplicationBuilderFactory)
	 */
	public void setApplicationBuilderFactory(
			ISourceBuilderFactory applicationBuilderFactory) {
		this.setFactory(applicationBuilderFactory.getSQLBuilderFactory());
		this.setColumnInfos(applicationBuilderFactory.getColumnInfoCache());
		this.setExecutor(applicationBuilderFactory.getExecutor());
		this.setPsHelper(applicationBuilderFactory.getDBExecutor());
		this.setResultCache(applicationBuilderFactory.getResultCache());
		this.setOpenTableSchema(applicationBuilderFactory.getOpenTableSchema());
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setColumnInfos(org.speedframework.cache.IColumnInfoCache)
	 */
	public void setColumnInfos(IColumnInfoCache columnInfos) {
		this.columnInfos = columnInfos;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setExecutor(org.speedframework.db.executor.IExecutor)
	 */
	public void setExecutor(IExecutor executor) {
		this.executor = executor;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setFactory(org.speedframework.sql.ISQLBuilderFactory)
	 */
	public void setFactory(ISQLBuilderFactory factory) {
		this.factory = factory;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setFilters(java.util.List)
	 */
	public void setFilters(List filters) {
		this.filters = filters;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setResultCache(org.speedframework.cache.IResultCache)
	 */
	public void setResultCache(IResultCache resultCache) {
		this.resultCache = resultCache;
	}

	/* (非 Javadoc)
	 * @see org.speedframework.application.IApplication#setPsHelper(org.speedframework.db.executor.DBExecutor)
	 */
	public void setPsHelper(DBExecutor psHelper) {
		this.psHelper = psHelper;
	}

	public void setOpenTableSchema(boolean openTableSchema) {
		this.openTableSchema = openTableSchema;
	}
}

⌨️ 快捷键说明

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