/** * Դ�������ƣ�SequenceScriptWrapImpl.java * �������Ȩ���������ӹɷ����޹�˾ ��Ȩ���� * ϵͳ���ƣ�JRES Studio * ģ�����ƣ�com.hundsun.ares.studio.jres.database.ui * ����˵����$desc * ����ĵ��� * ���ߣ� */ package com.hundsun.ares.studio.jres.clearinghouse.core.script.impl; import java.util.ArrayList; import java.util.Collections; import java.util.List; import org.apache.commons.lang.StringUtils; import com.hundsun.ares.studio.core.ARESModelException; import com.hundsun.ares.studio.core.IARESResource; import com.hundsun.ares.studio.core.model.RevisionHistory; import com.hundsun.ares.studio.jres.model.chouse.util.RevHistoryCompator; import com.hundsun.ares.studio.jres.model.database.oracle.SequenceResourceData; import com.hundsun.ares.studio.jres.script.api.database.ISequenceScriptWrap; import com.hundsun.ares.studio.jres.script.api.wrap.IRevHistoryScriptWrap; import com.hundsun.ares.studio.jres.script.tool.HistoryCommentCompator; /** * @author yanwj06282 * */ public class SequenceScriptWrapImpl extends DatabaseResScriptWrapImpl implements ISequenceScriptWrap{ private SequenceResourceData sequence; public SequenceScriptWrapImpl(IARESResource resource) { super(resource); } public String getCache(){ return getOriginalInfo().getCache(); } public boolean isCycle(){ return getOriginalInfo().isCycle(); } public boolean isUseCache(){ return getOriginalInfo().isUseCache(); } public String getObjectId(){ return getOriginalInfo().getObjectId(); } public String getChineseName(){ return getOriginalInfo().getChineseName(); } public String getStart(){ return getOriginalInfo().getStart(); } public String getTableName(){ return getOriginalInfo().getTableName(); } public String getIncrement(){ return getOriginalInfo().getIncrement(); } public String getMaxValue(){ return getOriginalInfo().getMaxValue(); } public String getMinValue(){ return getOriginalInfo().getMinValue(); } public IRevHistoryScriptWrap[] getHistories(){ List<IRevHistoryScriptWrap> hisWraps = new ArrayList<IRevHistoryScriptWrap>(); List<RevisionHistory> histories = new ArrayList<RevisionHistory>(); for (RevisionHistory his : getOriginalInfo().getHistories()){ try { if (HistoryCommentCompator.compareVersion(his.getVersion(), resource.getARESProject().getProjectProperty().getVersion())) { histories.add(his); } } catch (ARESModelException e) { e.printStackTrace(); } } //����,��ǰ���� Collections.sort(histories, new RevHistoryCompator()); for (RevisionHistory his : histories){ hisWraps.add(new RevHistoryScriptWrapImpl(his, resource)); } return hisWraps.toArray(new IRevHistoryScriptWrap[0]); } @Override public SequenceResourceData getOriginalInfo() { if (sequence == null) { try { sequence = resource.getInfo(SequenceResourceData.class); } catch (ARESModelException e) { e.printStackTrace(); } } return sequence; } @Override public String getSeqName() { return getOriginalInfo().getName(); } @Override public boolean isGenHisTable() { return getOriginalInfo().isIsHistory(); } @Override public String getTableSpace() { return StringUtils.defaultString(getExtendsValue("Oracle_space")); } @Override public void setObjectId(String objectId) { getOriginalInfo().setObjectId(objectId); } }