companylistmodel.java

来自「基于Struts的客户资料管理系统」· Java 代码 · 共 145 行

JAVA
145
字号
package net.robin.crm.ui;

import javax.swing.AbstractListModel;

import net.robin.crm.service.CRMService;
import net.robin.crm.service.CRMServiceEvent;
import net.robin.crm.service.CRMServiceObserver;
import net.robin.crm.service.Company;
import net.robin.crm.service.ConfigException;
import net.robin.crm.service.InstanceExeption;
import net.robin.crm.service.ServiceException;
import net.robin.crm.util.Util;

public class CompanyListModel 
	extends AbstractListModel 
	implements CRMServiceObserver {

	private CRMService service;
	
	public CompanyListModel()  {
		super();
		
		try {
			service = ServiceHandeler.getInstance().getService();
			
			service.addCRMServiceObserver(this);
			
		} catch (ConfigException e) {
			e.printStackTrace();
			Util.error("系统配置错误"+e.getMessage());
		} catch (InstanceExeption e) {
			e.printStackTrace();
			Util.error("不能实例化服务"+e.getMessage());
		} catch (ServiceException e) {
			e.printStackTrace();
			Util.error("服务异常"+e.getMessage());
		}
	}

	public int getSize() {
		if(service==null)
			return 0;
		
		try {
			int count = service.getCompanyCount();
			return count;
		} catch (ServiceException e) {
			e.printStackTrace();
			Util.error("服务异常"+e.getMessage());
		}
		
		return 0;

	}

	public Object getElementAt(int index) {
		if(service == null)
			return null;
		
		try {
			Company company = service.findCompany(index);
			return company;
		} catch (ServiceException e) {
			e.printStackTrace();
			Util.error("服务异常"+e.getMessage());
		}
		
		return null;
		
	}

	public Company getCompany(int index) {
		return (Company) getElementAt(index);
	}

	public void companyAdded(CRMServiceEvent event) {
		
		Company company = (Company) event.getNewValue();
		CRMService service = event.getService();
		
		try {
			int index = service.indexOf(company);
			fireIntervalAdded(this, index, index);
			
		} catch (ServiceException e) {
			e.printStackTrace();
			Util.error("Error");
		} 
				
	}

	public void companyChanged(CRMServiceEvent event) {
		Company company = (Company) event.getNewValue();
		CRMService service = event.getService();
		
		try {
			int index = service.indexOf(company);
			fireContentsChanged(this, index, index);
			
		} catch (ServiceException e) {
			e.printStackTrace();
			Util.error("Error");
		} 
	}

	public void companyRemoved(CRMServiceEvent event) {
		
		int index = event.getRemovedIndex();
		
		fireIntervalRemoved(this, index, index);
		
	}

	public void categoryAdded(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

	public void categoryChanged(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

	public void categoryRemoved(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

	public void clientAdded(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

	public void clientChanged(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

	public void clientRemoved(CRMServiceEvent event) {
		// TODO 自动生成方法存根
		
	}

}

⌨️ 快捷键说明

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