package org.infosec.ismp.applet.manager.task; import java.util.List; import javax.swing.JOptionPane; import javax.swing.SwingWorker; import org.infosec.ismp.applet.manager.model.DomainModel; import org.infosec.ismp.applet.manager.model.NodeModel; import org.infosec.ismp.applet.manager.utilities.ChangeModelUtil; import org.infosec.ismp.applet.manager.utilities.ServiceUtil; import org.infosec.ismp.applet.manager.utilities.TopoConst; import org.infosec.ismp.applet.manager.utilities.TypeUtil; import org.infosec.ismp.manager.rmi.tm.manager.model.DeviceEntity; public class GetAllNodeTask extends SwingWorker<List<DeviceEntity>,Object>{ @Override protected List<DeviceEntity> doInBackground() throws Exception { return ServiceUtil.newInstance().getWebDeviceService().getDeviceAll(); } protected void done() { try { List<DeviceEntity> devices = get(); for(DeviceEntity device:devices) { if(device.getNode().getDomain() != null) { //处理云图 DomainModel domain = new DomainModel(); domain = ChangeModelUtil.changeDomainModel(domain, device.getNode()); TopoConst.registerID(device.getNode().getNodeId(), domain.getID().toString()); TopoConst.registerID(TopoConst.DOMAIN_ID+domain.getId(), domain.getID().toString()); TopoConst.BOX.addElement(domain); } else { NodeModel node = null; String typeEnglish = ""; if(device.getNode() != null && device.getNode().getType()!=null && device.getNode().getType().getEnglishTag() != null) { typeEnglish = device.getNode().getType().getEnglishTag(); } node = TypeUtil.getType(typeEnglish); ChangeModelUtil.changeModel(node, device); TopoConst.registerID(device.getNode().getNodeId(), node.getID().toString()); if(node.getIsVisible() != null && node.getIsVisible() == 1 && node.getType() != null && node.getParentDomain() != null) { TopoConst.BOX.addElement(node); } } } new GetAllLinkTask().execute(); } catch (Exception e) { JOptionPane.showMessageDialog(null,"获取设备失败!" , "错误", JOptionPane.ERROR_MESSAGE); e.printStackTrace(); } } }