topologydatafactory.java
来自「全面实现ilog地功能,没有使用第三方lib.」· Java 代码 · 共 322 行
JAVA
322 行
/* * This source code is part of TWaver 1.3.1 * * SERVA Software PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * Copyright 2000-2005 SERVA Software, Inc. All rights reserved. */package demo.network.topology;
import java.awt.*;
import twaver.*;
import twaver.base.*;
import twaver.network.ui.*;
public class TopologyDataFactory {
public static void createData(TDataBox box) {
Node tw130 = new Node();
tw130.setLocation(356, 139);
tw130.setImage("/demo/resource/topology/tw130.png");
tw130.setName("TWaver Router");
tw130.putClientProperty("label.yoffset", new Integer( -75));
tw130.putClientProperty("label.font",
new Font("Arial", Font.BOLD, 12));
box.addElement(tw130);
Node cloudData = new Node();
cloudData.setLocation(246, 145);
cloudData.setImage("/demo/resource/topology/Cloud.png");
cloudData.setName("DATA");
cloudData.putClientProperty("label.yoffset", new Integer( -30));
cloudData.putClientProperty("label.font",
new Font("Arial", Font.BOLD, 12));
cloudData.putClientProperty("label.color", Color.white);
box.addElement(cloudData);
Node cloudNode1 = new Node();
cloudNode1.setLocation(276, 115);
box.addElement(cloudNode1);
Node cloudNode2 = new Node();
cloudNode2.setLocation(286, 120);
box.addElement(cloudNode2);
cloudNode2.setName("Application Servers");
cloudNode2.putClientProperty("label.yoffset", new Integer( -60));
Link link = new Link(cloudData, tw130);
link.putClientProperty("link.width", new Integer(6));
box.addElement(link);
Node cloudPSTN = new Node();
cloudPSTN.setLocation(246, 209);
cloudPSTN.setImage("/demo/resource/topology/Cloud.png");
cloudPSTN.setName("PSTN");
cloudPSTN.putClientProperty("label.yoffset", new Integer( -30));
cloudPSTN.putClientProperty("label.font",
new Font("Arial", Font.BOLD, 12));
cloudPSTN.putClientProperty("label.color", Color.white);
box.addElement(cloudPSTN);
OrthogonalLink orlink = new OrthogonalLink(cloudPSTN, tw130);
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
orlink.putClientProperty("link.width", new Integer(6));
box.addElement(orlink);
Node scrambler = new Node();
scrambler.setLocation(175, 157);
scrambler.setImage("/demo/resource/topology/router.png");
scrambler.setName("Scrambler");
box.addElement(scrambler);
link = new Link(scrambler, cloudData);
link.putClientProperty("link.width", new Integer(4));
link.putClientProperty("link.flowing", Boolean.TRUE);
link.putClientProperty("link.flowing.width", new Integer(4));
link.putClientProperty("link.flowing.color", Color.black);
link.putClientProperty("link.color", Color.white);
link.putClientProperty("link.outline.color", Color.black);
box.addElement(link);
for (int i = 0; i < 7; i++) {
Node node = new Node();
if (i < 5) {
node.setLocation(106, 95 + i * 12);
} else {
node.setLocation(106, 122 + i * 20);
}
node.setImage("/demo/resource/topology/router.png");
box.addElement(node);
if (i == 4) {
node.setName("Encoder");
}
orlink = new OrthogonalLink(node, scrambler);
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
orlink.putClientProperty("link.width", new Integer(1));
box.addElement(orlink);
}
Node node = new Node();
node.setImage("/demo/resource/topology/satellite_antenna.png");
node.setLocation(31, 90);
node.setName("Satellite Feed");
box.addElement(node);
node = new Node();
node.setImage("/demo/resource/topology/antenna.png");
node.setLocation(33, 183);
node.setName("Off Air");
box.addElement(node);
node = new Node();
node.setImage("/demo/resource/topology/msc.png");
node.setLocation(33, 291);
node.setName("Programming");
box.addElement(node);
Node preAmp = new Node();
preAmp.setImage("/demo/resource/topology/cartridge_system.png");
preAmp.setLocation(191, 292);
preAmp.setName("Pre-Amp");
preAmp.putClientProperty("StateIcon:lock", Boolean.TRUE);
box.addElement(preAmp);
node = new Node();
node.setLocation(105, 302);
node.setImage("/demo/resource/topology/router.png");
node.getAlarmState().setNewAlarmCount(AlarmSeverity.CRITICAL, 5);
box.addElement(node);
node.setName("V-OLT");
link = new Link(node, preAmp);
link.putClientProperty("link.width", new Integer(1));
IconAttachmentHolder.addAttachment("cut", "/demo/resource/topology/testing.png");
link.putClientProperty("StateIcon:cut", Boolean.TRUE);
box.addElement(link);
link.setSelected(true);
Node wdm = new Node();
wdm.setName("WDM");
wdm.setLocation(432, 146);
wdm.setImage("/demo/resource/topology/wdm.png");
wdm.putClientProperty("label.font",
new Font("Arial", Font.BOLD, 12));
box.addElement(wdm);
orlink = new OrthogonalLink(preAmp, wdm);
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
orlink.putClientProperty("link.width", new Integer(1));
box.addElement(orlink);
link = new Link(tw130, wdm);
link.putClientProperty("link.width", new Integer(1));
box.addElement(link);
Node test = new Node();
test.setLocation(476, 161);
test.setImage("/demo/resource/topology/testing.png");
test.getAlarmState().addNewAlarm(AlarmSeverity.MAJOR);
box.addElement(test);
link = new Link(test, wdm);
link.putClientProperty("link.width", new Integer(1));
box.addElement(link);
wdm = new Node();
wdm.setName("WDM");
wdm.setLocation(516, 146);
wdm.setImage("/demo/resource/topology/wdm.png");
wdm.putClientProperty("label.font",
new Font("Arial", Font.BOLD, 12));
box.addElement(wdm);
link = new Link(test, wdm);
link.putClientProperty("link.width", new Integer(1));
box.addElement(link);
Node ont = new Node();
ont.setName("ONT");
ont.setLocation(555, 196);
ont.setImage("/demo/resource/topology/mainframe.png");
box.addElement(ont);
orlink = new OrthogonalLink(ont, wdm);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
orlink.putClientProperty("StateIcon:document", Boolean.TRUE);
box.addElement(orlink);
node = new Node() {
public int getWidth() {
return 10;
}
public int getHeight() {
return 10;
}
};
node.setImage(TWaverConst.BLANK_IMAGE);
node.setLocation(470, 65);
box.addElement(node);
orlink = new OrthogonalLink(node, tw130);
orlink.putClientProperty("link.width", new Integer(4));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
orlink.putClientProperty("StateIcon:break", Boolean.TRUE);
orlink.putClientProperty("StateIcon:temperature", Boolean.TRUE);
box.addElement(orlink);
Node modem = new Node();
modem.setImage("/demo/resource/topology/modem.png");
modem.setLocation(560, 98);
modem.setName("Modem");
box.addElement(modem);
RoundRect xDSL = new RoundRect();
xDSL.setLocation(498, 93);
xDSL.setName("xDSL");
box.addElement(xDSL);
orlink = new OrthogonalLink(xDSL, node);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
orlink = new OrthogonalLink(xDSL, modem);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
RoundRect pots = new RoundRect();
pots.setLocation(498, 19);
pots.setName("POTS");
box.addElement(pots);
Node phone = new Node();
phone.setImage("/demo/resource/topology/phone.png");
phone.setLocation(654, 15);
phone.setName("Phone");
box.addElement(phone);
orlink = new OrthogonalLink(phone, pots);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
orlink = new OrthogonalLink(node, pots);
orlink.putClientProperty("link.width", new Integer(1));
box.addElement(orlink);
Node pc = new Node();
pc.setName("PC");
pc.setLocation(651, 64);
box.addElement(pc);
orlink = new OrthogonalLink(pc, modem);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
Node stb = new Node();
stb.setImage("/demo/resource/topology/router2.png");
stb.setName("STB");
stb.setLocation(614, 122);
box.addElement(stb);
orlink = new OrthogonalLink(stb, modem);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
Node tv = new Node();
tv.setImage("/demo/resource/topology/terminal.png");
tv.setName("IPTV/SDV");
tv.setLocation(646, 152);
box.addElement(tv);
Link l = new twaver.FlexionLink(tv, stb);
l.putClientProperty("link.width", new Integer(1));
l.setType(null);
box.addElement(l);
phone = new Node();
phone.setImage("/demo/resource/topology/phone.png");
phone.setLocation(648, 223);
phone.setName("Phone");
box.addElement(phone);
orlink = new OrthogonalLink(phone, ont);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
pc = new Node();
pc.setName("PC");
pc.setLocation(648, 266);
box.addElement(pc);
orlink = new OrthogonalLink(pc, ont);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
stb = new Node();
stb.setImage("/demo/resource/topology/router2.png");
stb.setName("STB");
stb.setLocation(609, 324);
box.addElement(stb);
orlink = new OrthogonalLink(stb, ont);
orlink.putClientProperty("link.width", new Integer(1));
orlink.setDirection(OrthogonalLinkDirectionType.Y_TO_X);
box.addElement(orlink);
tv = new Node();
tv.setImage("/demo/resource/topology/terminal.png");
tv.setName("IPTV/SDV");
tv.setLocation(641, 357);
box.addElement(tv);
l = new twaver.FlexionLink(tv, stb);
l.putClientProperty("link.width", new Integer(1));
l.setType(null);
box.addElement(l);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?