datasourcemodel.java

来自「一个eclipse插件源代码。用于web开发」· Java 代码 · 共 106 行

JAVA
106
字号
/*
 * $Header: /home/cvs/WEBPUMP2.0/WebPumpIDE_Src/WebPumpIDE/src/com/webpump/ui/datasource/data/DataSourceModel.java,v 1.2 2004/12/29 09:45:30 wang_j Exp $
 * $Revision: 1.2 $
 * $Date: 2004/12/29 09:45:30 $
 *
 * ====================================================================
 *
 * The NanJing HopeRun(IT-FOREST) Software License, Version 2.0.0
 *
 * Copyright 2003-2004 by NanJing HopeRun(IT-FOREST) Information System Co., Ltd, CHINA and
 *                        IT Forest Corporation
 * All rights reserved.
 *
 * This software is the confidential and proprietary information of
 * HopeRun(IT-FOREST) Information System Co., Ltd, CHINA and IT Forest Corporation.
 * You shall not disclose such Confidential Information and shall use it only in
 * accordance with the terms of the license agreement you entered into with
 * HopeRun(IT-FOREST) Information System Co., Ltd, CHINA and IT Forest Corporation.
 */
 
package com.webpump.ui.datasource.data;

import java.io.InputStream;
import java.util.Hashtable;

import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.pde.core.IModelChangedEvent;
import org.eclipse.pde.core.ModelChangedEvent;
import org.w3c.dom.*;
import com.webpump.ui.base.data.BaseModel;

/**
 * Class for model of datasources.
 * 
 * @author zhang_tx
 * @version 2.0.0 2004-2-24
 */
public class DataSourceModel extends BaseModel {
    
    
    public DataSourceModel()
    {
    	super();
    }
    
	public DataSourceModel(IFile file)
	{
		super(file);
	}

    /**
     * Process the document and  get the data model
     * 
     * @param doc the document which will to be processed
     * @param lineTable a Hashtable object
     */
    public void processDocument(Document doc, Hashtable lineTable) {
        Node rootNode = doc.getDocumentElement();
                
        m_objDataObject = new SourceList();
        m_objDataObject.setModel(this); 
        m_objDataObject.setInTheModel(true);

        ((SourceList) m_objDataObject).parse(rootNode, lineTable);     
    }
    
    /**
     * Get the string of SourceList object   
     * 
     * @return the string of the SourceList object
     */
    public String getDataSourceModelString() {
        
        return ((SourceList) m_objDataObject).getSourceListString();
        
    }
    
	/**
	 * reload the content of the model   
	 * 
	 * @param stream    the new stream for the model
	 * @param outOfSync   style of sync
	 */
	public void reload(InputStream stream, boolean outOfSync)
		throws CoreException {
		refresh();
		load(stream, outOfSync);
		fireModelChanged(
			new ModelChangedEvent(
				IModelChangedEvent.WORLD_CHANGED,
				new Object[] { m_objDataObject },
				null));
	}
	
	/**
	 * refresh the model's content data object   
	 * 
	 */
	public void refresh()
	{
		m_objDataObject = null;
	}
}

⌨️ 快捷键说明

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