首页 工作文档iTopoview Java 网络拓扑图组件 用户手册

工作文档iTopoview Java 网络拓扑图组件 用户手册

举报
开通vip

工作文档iTopoview Java 网络拓扑图组件 用户手册工作文档iTopoview Java 网络拓扑图组件 用户手册 iTopoview 标准版 用户手册 版本:V2010.10.26 全系列产品 SugarNMS 网络监控软件 SugarNMS二次开发平台 iTopoview 网络拓扑图组件 ObjectSNMP SNMP网关组件 OEM、ODM定制开发服务 目 录 一、 iTopoView介绍 ...................................................................................

工作文档iTopoview Java 网络拓扑图组件 用户手册
工作文档iTopoview Java 网络拓扑图组件 用户 手册 华为质量管理手册 下载焊接手册下载团建手册下载团建手册下载ld手册下载 iTopoview 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 版 用户手册 版本:V2010.10.26 全系列产品 SugarNMS 网络监控软件 SugarNMS二次开发平台 iTopoview 网络拓扑图组件 ObjectSNMP SNMP网关组件 OEM、ODM定制开发服务 目 录 一、 iTopoView介绍 .........................................................................................2 1. 示例程序概貌............................................................................................3 2. 功能..........................................................................................................3 3. 特点..........................................................................................................4 二、 iTopoview API概要 ...................................................................................5 三、 开发入门...................................................................................................7 四、 开始构造应用程序................................................................................... 16 五、 API介绍——使用拓扑数据 ..................................................................... 17 1. TopoObject的属性和方法 ........................................................................ 18 2. 节点的属性和方法................................................................................... 19 3. 网络的属性和方法................................................................................... 20 4. 链接的属性和方法................................................................................... 20 六、 API介绍——使用告警 ............................................................................ 21 1. TopoSysConfig中告警定义 ...................................................................... 21 2. TopoObject的告警操作 ............................................................................ 22 3. 网络的告警操作 ...................................................................................... 22 七、 API介绍——使用数据源容器.................................................................. 23 八、 API介绍——使用显示组件 ..................................................................... 24 1. 拓扑视图的属性/方法 .............................................................................. 24 2. 树形视图的属性/方法 .............................................................................. 26 九、 API介绍——添加事件处理 ..................................................................... 27 一、 iTopoView介绍 iTopoview是专门面向网络拓扑图领域的界面组件,基于标准版Java(J2SE) Swing和Java2D图形技术,可在Web applet或GUI应用程序中使用。开发人员无需了解任何图形技术,通过简单的数据驱动方式,即可创建出专业高效的网络拓扑图界面,并且集成了菜单、鼠标、用户业务数据、告警等操作,使用iTopoview可以将网络拓扑图开发的工作量从传统的数个人.月缩减到一个星期左右,让开发人员将重点迅速焦距至客户业务。iTopoview提供了一个完整的拓扑图示例程序和代码,大多数网络拓扑图界面可以直接利用。 1. 示例程序概貌 2. 功能 1. 图形组件 提供拓扑视图和树形视图两种显示组件; 拓扑视图提供了网络拓扑图显示、拖拽、放大、缩小、导航、菜单等操作; 树形视图与拓扑视图自动保持显示同步。 2. 拓扑数据元素 定义了网络、节点、链接、告警等拓扑数据; 拓扑数据可以绑定任意用户业务数据; 通过设置拓扑数据的属性自动改变图形显示。 3. 数据源容器 数据源容器提供了访问、修改拓扑数据的统一接口; 数据源容器可以设置网络、链接、节点之间的逻辑关系; 支持多层次的网络结构。 4. 交互处理 在拓扑视图上提供了各种节点、网络、链接的标准Java菜单和鼠标交互接口; 可以根据不同的拓扑数据使用不同的菜单和事件。 5. 告警处理 拓扑数据上可以直接管理告警; 可以绑定任意用户告警数据; 告警发生变化后,拓扑图上颜色自动改变,并且自动追溯到上级; 预定义紧急、主要、次要、警告、未确定、消息通知、清除 等不同级别的告警以及颜色。 6. 拓扑图示例程序 拓扑图示例程序演示了iTopoview最佳开发实践,帮助开发人员快速理解iTopoview功能; 开发人员对照示例附带的源代码,可以即刻上手开发自己的拓扑图程序。 3. 特点 1. 专门针对网络拓扑图和网管监控设计,自动处理大部分常用操作。 2. 基于模型-视图-控制器(MVC)架构设计,可以多个视图显示同一数据源。 3. 图形处理全部由数据驱动,用户无需涉及任何图形技术和界面技术。 4. 面向大众用户的API设计,可快速学习和掌握,轻松开发网络拓扑图。 5. 标准Java Swing技术,无需其他脚本、动画技术,可以嵌入任意Java客户端或Web拓扑图中。 6. 100% Java实现,保持与现有Java系统无缝连接,为单一Java技术团队提供最佳选择。 7. 可以与ObjectSNMP后端提供的网络、设备、资源、网口、服务等自动发现功能完美结合。 8. 多线程双缓冲图形引擎技术,确保最优的图形性能和内存使用。 二、 iTopoview API概要 API对象的描述: 分类 JAVA对象 名称 备注 从javax.swing.JPanel继承过来,是 iTopoview最重要的 组件。拓扑视图的数据来源是TopoDataSource,能自动 TopoGraphView 拓扑视图 感应TopoDataSource的数据变化。可以显示各种网络、 节点、链接等,并且支持拖放、放大、缩小、导航、菜显示组件 单、鼠标事件等。 从javax.swing.JTree继承过来,按照网络层次结构显示 TopoDataSource中的数据,并能自动保持与拓扑视图的 TopoTreeView 树形视图 一致性。鼠标右键菜单处理与TopoGraphView的右键菜 单共享。 数据源是所有拓扑数据的集合。它提供了查看、修改、数据源容 TopoDataSource 数据源 监视数据的功能。作为MVC的模型部分,多个不同的视器 图可以共享此数据源。 拓扑数据基所有网络、节点、链接的抽象基类。提供了一致的绑定 TopoObject 类 用户数据、用户告警的方法。 TopoNode 节点数据 从TopoObject继承而来。定义了节点的各种属性和行为。 数据元素 从TopoNode继承而来。定义了网络的各种属性和行为。 TopoNetwork 网络数据 网络可以再容纳网络、节点和链接。 从TopoObject继承而来。定义了链接的各种属性和行为。 TopoLink 链接数据 可以连接节点-节点、节点-网络、网络-网络。 拓扑视图的事件处理接口。开发者要实现此接口来响应事件处理拓扑图事件 TopoMouseHandle 菜单、鼠标事件。TopoGraphView在事件发生时调用此接接口 处理接口 口。 系统参数配定义告警级别、颜色。 系统配置 TopoSysConfig 置 iTopoview的API整体架构如下图所示: 三、 开发入门 开发环境准备工作:iTopoview 基于JAVA平台,需要JDK/JRE 1.6或以上版本,请确保已经正确 的安装了JDK/JRE环境。需要将zhtelecombasis.jar加入到开发环境的ClassPath中。 使用拓扑图组件的一般过程如下: , 定义TopoLink、TopoNode、TopoNetwork数据元素,把数据加入到TopoDataSource中。 , 通过TopoDataSource创建TopoGraphView、TopoTreeView显示组件。 , 在TopoGraphView上设置TopoMouseHandle事件处理。 , 把TopoGraphView、TopoTreeView加入到JAVA Swing界面中。 对于上述过程可以任意组合,如:先创建TopoGraphView、TopoTreeView显示组件,然后再向TopoDataSource中添加数据元素也可以。HelloWorld示例程序用于演示上述过程,快速了解iTopoview开发。HelloWorld的效果如下图: 运行HelloWorld示例程序: java -classpath zhtelecombasis.jar com.zhtelecom.common.topograph.example.HelloWorld 或者自行编译运行SRC目录下的com\zhtelecom\common\topograph\example\HelloWorld.java 下面将通过如下8个步骤来演示HelloWorld: , 第1步:创建Java Swing主窗体 代码如下: JFrame frame = new JFrame("网络拓扑图HelloWorld"); frame.setSize(600, 400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 效果图如下: , 第2步:创建空的拓扑图显示组件 代码如下: TopoGraphView topoView = new TopoGraphView(new TopoDataSource()); frame.getContentPane().add(topoView, BorderLayout.CENTER); 效果图如下: , 第3步:创建网络 代码如下: opoNetwork net = new TopoNetwork("网络1"); //定义网络 TopoDataSource source = topoView.getTopoDataSource(); //获取数据源 source.addTopoData(net); //把网络1加入到根视图下 效果图如下: , 第4步:创建网络下的设备 代码如下: TopoNode nodePC = new TopoNode("PC"); //定义PC设备 TopoNode nodeGW = new TopoNode("网关"); //定义家庭网关设备 nodeGW.setXY(300, 96); // 设置x y坐标 nodeGW.setImageIconFromTopoFile("dm.png"); //设置图片 source.addTopoData(nodePC, net); //把PC加入到网络1中 source.addTopoData(nodeGW, net); //把网关加入到网络1中 效果图如下: , 第5步:创建网络设备之间的链接 代码如下: TopoLink linkPCGW = new TopoLink("100M", nodePC, nodeGW); //通过起点终点,创建 链接 source.addTopoData(linkPCGW, net); //把连接加入到网络1中 效果图如下: , 第6步:添加故障信息 代码如下: nodePC.addAlarm("alarm1", TopoSysConfig.AlarmSeverity_Critical); //添加紧急告警 linkPCGW.addAlarm("alarm2", TopoSysConfig.AlarmSeverity_Major); //添加主要告警 效果图如下: , 第7步:创建树形显示组件 代码如下: TopoTreeView tree = new TopoTreeView(topoView.getTopoDataSource()); //根据数据源 创建树 tree.setBorder(BorderFactory.createEtchedBorder(Color.white, new Color(148, 145, 140))); tree.syncTopoview(topoView); //将树与拓扑图的选择事件同步起来 frame.getContentPane().add(tree, BorderLayout.WEST); 效果图如下: , 第8步:设置菜单、鼠标 事件处理程序 代码如下: //实现事件处理接口 class HelloMouseAction implements TopoMouseHandle { //在拓扑图对象上面点击右键的菜单 public JPopupMenu createRightClickMenu(TopoGraphView topoView) { JPopupMenu menu = new JPopupMenu(); menu.add("右键对象:" + topoView.getSelectedObject()); return menu; } //在拓扑图空白区域点击右键的菜单 public JPopupMenu createRightClickBlankMenu(TopoGraphView topoView) { JPopupMenu menu = new JPopupMenu(); menu.add("右键空白区域,当前网络:" + topoView.getCurrentNetwork()); return menu; } //双击事件 public void doubleClickAction(TopoGraphView topoView) { JOptionPane.showMessageDialog(topoView, "对象:" + topoView.getSelectedObject(), " 双击操作",JOptionPane.INFORMATION_MESSAGE); } } HelloMouseAction menuHandle = new HelloMouseAction(); //定义事件处理程序 topoView.setMouseHandle(menuHandle); //给拓扑视图设置处理程序 效果图如下: 完整的HelloWorld的程序代码如下: public class HelloWorld { public static void main(String[] args) { //......步骤1,普通java swing操作,创建主窗口...... JFrame frame = new JFrame("网络拓扑图HelloWorld"); frame.setSize(600, 400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //......步骤2,创建空的拓扑图显示组件...... TopoGraphView topoView = new TopoGraphView(new TopoDataSource()); //通过数据源创建拓扑视图 frame.getContentPane().add(topoView, BorderLayout.CENTER); //......步骤3,创建网络...... TopoNetwork net = new TopoNetwork("网络1"); //定义网络 TopoDataSource source = topoView.getTopoDataSource(); //获取数据源 source.addTopoData(net); //把网络1加入到根视图下 //......步骤4,创建网络设备...... TopoNode nodePC = new TopoNode("PC"); //定义PC设备 TopoNode nodeGW = new TopoNode("网关"); //定义家庭网关设备 nodeGW.setXY(300, 96); // 设置x y坐标 nodeGW.setImageIconFromTopoFile("dm.png"); //设置图片 source.addTopoData(nodePC, net); //把PC加入到网络1中 source.addTopoData(nodeGW, net); //把网关加入到网络1中 //......步骤5,创建网络设备之间的链接...... TopoLink linkPCGW = new TopoLink("100M", nodePC, nodeGW); //通过起点终点,创建链接 source.addTopoData(linkPCGW, net); //把连接加入到网络1中 //......步骤6,添加故障信息...... nodePC.addAlarm("alarm1", TopoSysConfig.AlarmSeverity_Critical); //添加紧急告警 linkPCGW.addAlarm("alarm2", TopoSysConfig.AlarmSeverity_Major); //添加主要告警 //......步骤7,创建树形显示组件...... TopoTreeView tree = new TopoTreeView(topoView.getTopoDataSource()); //根据数据源创建树 tree.setBorder(BorderFactory.createEtchedBorder(Color.white, new Color(148, 145, 140))); tree.syncTopoview(topoView); //将树与拓扑图的选择事件同步起来 frame.getContentPane().add(tree, BorderLayout.WEST); //......步骤8,设置菜单、鼠标 事件处理程序...... HelloMouseAction menuHandle = new HelloMouseAction(); //定义事件处理程序 topoView.setMouseHandle(menuHandle); //给拓扑视图设置处理程序 frame.setVisible(true); } } //实现事件处理接口 class HelloMouseAction implements TopoMouseHandle { //在拓扑图对象上面点击右键的菜单 public JPopupMenu createRightClickMenu(TopoGraphView topoView) { JPopupMenu menu = new JPopupMenu(); menu.add("右键对象:" + topoView.getSelectedObject()); return menu; } //在拓扑图空白区域点击右键的菜单 public JPopupMenu createRightClickBlankMenu(TopoGraphView topoView) { JPopupMenu menu = new JPopupMenu(); menu.add("右键空白区域,当前网络:" + topoView.getCurrentNetwork()); return menu; } //双击事件 public void doubleClickAction(TopoGraphView topoView) { JOptionPane.showMessageDialog(topoView, "对象:" + topoView.getSelectedObject(), "双击操作", JOptionPane.INFORMATION_MESSAGE); } } 四、 开始构造应用程序 系统提供了完整拓扑图设计工具——NMSExample示例程序,它模拟了Visio画图工具和网管软件拓扑图的常用功能,大多数软件可以直接参考使用。用户可以直接从NMSExample开始构造自己的应用程序。 运行NMSExample示例程序: java -jar zhtelecombasis.jar 或自行编译运行SRC目录下的pub\nms\common\topograph\example\NMSExample.java NMSExample示例程序的源代码文件简要说明如下: 文件(位于example包下) 说明 NMSExample.java 生成示例拓扑图的主界面和拓扑数据显示 TopoMouseAction.java 定义拓扑图上的菜单、鼠标操作。具体的菜单处理程序见下面: ActionAddAlarm.java 菜单处理:添加告警 ActionAlarmBatchTest.java 菜单处理:批量告警测试 ActionAlarmDel.java 菜单处理:清除告警 ActionAlarmView.java 菜单处理:显示告警 ActionBatchAddTest.java 菜单处理:拓扑图批量添加 ActionLinkUpdate.java 菜单处理:改变Link风格 ActionNetworkAdd.java 菜单处理:添加网络 ActionNetworkNodeLinkDel.java 菜单处理:删除网络对象 ActionNodeAdd.java 菜单处理:添加节点 ActionNodeImageUpdate 菜单处理:修改显示图片 ActionPrintXY.java 菜单处理:打印所有节点坐标 ActionSetLinkEnd.java 菜单处理:设置连接终点 ActionSetLinkStart.java 菜单处理:设置连接起点 ActionUpdateUserID.java 菜单处理:修改用户ID对象 五、 API介绍——使用拓扑数据 ZhTelecom iTopoview定义了如下几种拓扑数据: 节点:拓扑图上的一个网络实体,可以用来 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示设备、服务器、应用程序等。节点可以定义自己的图标。 网络:可以在一个新的视图中显示下属对象。可以用网络表示实际的子网、组、区域等概念。在拓扑图上双击网络的时候,自动展开显示下属对象。网络可以定义自己的图标。 链接:用于表示节点与节点、节点与网络、网络与网络之间的连接关系实体。链接可以设置各种显示风格。 节点、网络、链接之间的容纳示例图如下: 根节点 root node1 link1 第一级 network1 第二级 node2 link2 network2 最顶层的是根节点,根结点下面可以容纳任意的数据。根节点下的网络可以再容纳任意的数据,依次类推。此图中network1的上级是root;network2、node2、link2的上级是network1。 1. TopoObject的属性和方法 所有的拓扑数据有一些共用的属性和行为,在TopoObject中定义,它们是: 名称 属性/方法 描述 每个拓扑数据都绑定一个用户业务数据,称之为用户ID, 用户ID是区分不同数据元素的 标识 采样口标识规范化 下载危险废物标识 下载医疗器械外包装标识图下载科目一标识图大全免费下载产品包装标识下载 符,在数据源容器中用户ID 将保持唯一性。以后可以通过用户ID找到对应的拓扑数据。用 户ID可以是任意的Java对象。 拓扑数据的toString()、hashCode()、equals(Object obj)方法, 完全来自用户ID的对应方法。用户ID需要根据实际情况,实用户ID userID 现这三个方法。视图上显示的拓扑数据名称,来自TopoObject 的toString()方法。 用户ID需要有自己的key信息,来实现equals(Object obj) 语义。在使用过程中,有时候可能只知道用户ID的key信息, 这样通过key信息,就能重新找到拓扑数据。 一般来说,用户ID对象来自用户数据库、后端系统。通过用户 ID,提供了将拓扑数据与用户的数据系统关联起来的途径。 有时候需要在拓扑数据中,放置用户的其他信息,用户属用户属性 userProperty 性就提供了这样的方便性。用户属性可以为任意Java对象。 发生告警的时候,系统会自动调用set方法设置相应的颜颜色 color 色。提供set方法,用于特殊情况下手工设置颜色。 没有上级网络或者上级网络是根节点时候,用null表示。 拓扑数据在加入到数据源之前没有上级网络,加入到数据源后,上级网络 parent 由数据源管理上下级关系,用户无法set父对象。拓扑数据从数 据源删除后,从此数据任然可以访问到上级,但从上级网络无 法再访问此数据。 拓扑数据属性改变后,数据源能自动监视此变化,自动触 发视图的更新,无需外部再调用此方法。但是,用户ID的改变通知 fireChanged() toString()结果变化后,无法自动发现,需要调用此方法来通知 视图更新。 2. 节点的属性和方法 名称 属性/方法 描述 创建节点 new TopoNode(Object 通过绑定用户ID创建一个节点数据。 userID) X X、Y坐标标识节点在拓扑视图上的坐标位置。X、Y坐标X、Y坐标 Y 决定节点之间的布局关系。 视图上用此图标来显示节点数据。 系统内置了一些常用图标,通过 setImageIconFromTopoFile(String imageFileName)来设置内置图图标 ImageIcon对象 标;其中imageFileName 是jar包中不含目录的图标文件名; setImageIconFromTopoFile方法在内部通过调用setImageIcon更 一般的方法来实现。如果要使用外部的图标,调用 setImageIcon(ImageIcon imageIcon)方法来设置。 3. 网络的属性和方法 网络从节点继承而来,额外还有如下属性/方法: 名称 属性/方法 描述 new TopoNetwork(Object 创建网络 userID) 通过绑定用户ID创建一个网络数据。 获取下属 getChildren() 获取网络的直接下属列表。不含间接下属。 获取下属中 getChildrenLink() 获取直接下属中的链接列表。 的链接 获取下属中 getChildrenNode() 获取直接下属中的节点和网络列表。 的节点、网络 4. 链接的属性和方法 名称 属性/方法 描述 new TopoLink(Object linkID, 创建链接 TopoNode source, TopoNode 通过绑定用户ID、连接起点、终端创建一个链接数据。 target) 源节点/网络 source 连接的起点。 目标节点/网 target 链接的终点。 络 setBrokenLink(boolean 设置是否虚线还是实线 isBrokenLink) 修改链接显setLinkWidth(int width) 设置链接的宽度,取值范围1-5 示风格 setShowArrow(boolean 设置是否需要链接箭头 isShowArrow) setStraight(boolean straight) 设置直线连接还是转折线连接 六、 API介绍——使用告警 1. TopoSysConfig中告警定义 系统参照OSI告警标准 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 。在TopoSysConfig中定义了如下告警级别、颜色以及级别定义。数值越 大,级别越高。 级别名称 级别 默认颜色 含义说明 紧急告警(Critical) 使业务中断并需要立即采取故障检修的告警。 7 ? 主要告警 (Major) 影响业务并需要立即采取故障检修的告警。 6 ? 次要告警 (Minor) 不影响现有业务,但需采取检修阻止恶化的告警。 5 ? 警告告警 (Warning) 不影响现有业务,但有可能成为影响业务的告警,可视需要4 ? 采取措施。 未知告警 (Indeterminate) 未知原因的告警,未知状态。需要进一步检查。 3 ? 消息通知(Msg) 普通消息通知。不是一个告警。没有颜色。 2 清除告警(Good_Clear) 告警已清除,工作已正常的通知。绿色。 1 ? 空状态(Null_Status) 设备初始时的状态,没有颜色。 0 默认告警颜色定义如下,可根据需要修改。 public static Color AlarmSeverity_Null_Status_Color=null; public static Color AlarmSeverity_Good_Clear_Color=Color.GREEN; public static Color AlarmSeverity_Normal_Msg_Color=Color.CYAN; public static Color AlarmSeverity_Indeterminate_Color=new Color(205,155,255); public static Color AlarmSeverity_Warning_Color=Color.BLUE; public static Color AlarmSeverity_Minor_Color=Color.YELLOW; public static Color AlarmSeverity_Major_Color=new Color(255,150,0); public static Color AlarmSeverity_Critical_Color=Color.RED; 在拓扑数据中,定义了一个Hash表,用来存放跟拓扑数据相关的告警。Hash表的Key值是用户定义 的告警对象,Value值是告警级别对应的Integer对象。用户告警对象需要按照实际情况,有自己的key信 息,来实现equals(Object obj)语义,以区分不同的告警对象。 2. TopoObject的告警操作 名称 属性/方法 描述 添加和本拓扑数据相关的告警消息。自动触发告警颜色变 addAlarm(Object userAlarm, 添加告警 化。 int severity) userAlarm-用户告警对象,severity-告警级别。 删除和本拓扑数据相关的一个告警 。自动触发告警颜色变 removeAlarm(Object 删除告警 化。 userAlarm) userAlarm-要删除的告警对象(只需要key信息即可)。 清空告警 cleareAlarm() 清空和本拓扑数据相关的所有告警。会清除颜色。 对节点和链接来说,是获取自身的全部告警;对网络来说,获取全部告 getAllAlarms() 是获取本网络和所有下属(含间接下属)的全部告警;返回警 Hash表。 对节点和链接来说,是获取自身的全部告警级别;对网络来获取全部告 getAllAlarmSeverity() 说,是获取本网络和所有下属的全部告警中存在的告警级警级别 别。返回告警级别的HashSet列表。 获取最高告int 对节点和链接来说,是获取自身的最高告警级别;对网络来警级别 getAllAlarmHighestSeverity() 说,是获取本网络和所有下属中的最高告警级别。 对节点和链接来说,是获取自身的特定级别的用户告警对象获取特定级 List getAllAlarms(int 列表; 别的告警对 severity) 对网络来说,是获取本网络和所有下属中特定级别的用户告象 警对象列表。 3. 网络的告警操作 对于网络,除了上述方法外,又提供了额外的告警查询方法: 名称 属性/方法 描述 获取网络自身getThisNetworkAlarms() 只获取网络本身,不含下属的告警。返回Hash表。 的告警 只获取下属的 getAllChildAlarms() 仅获取所有下属的告警,不含本网络。返回Hash表。 告警 七、 API介绍——使用数据源容器 在拓扑图组件中,所有的拓扑数据都是通过数据源容器来管理和容纳。当数据源中的数据发生变化后,比如:添加、参数、修改 等,数据源会自动通知所有的视图以更新数据。数据源设计为一个轻量级的管理容器,可以很容易的将拓扑数据的管理与用户系统的数据管理连接起来。数据源提供的方法如下表: 名称 函数名 描述 初始化数据源,没有任何数据。数据源的顶级为根结创建数据源 new TopoDataSource() 点。 把拓扑数据加入到根节点下。此数据的上级是根节点 addTopoData(TopoObject object) (null) 添加拓扑数据 addTopoData(TopoObject object, 把拓扑数据添加到parent下。parent对象将成为此对 TopoNetwork parent) 象的上级。注意:上级对象需要预先加入到数据源中。 removeTopoData(TopoObject 拓扑数据从数据源删除后,从此数据任然可以访问到删除拓扑数据 topoData) 上级,但从上级网络无法再访问此数据。 获取绑定用户根据用户ID(只需要有Key信息,能进行equals比 getTopoObject(Object userID) ID的数据 较就可以),查询数据源中和它绑定的拓扑数据。 根据用户IDremoveTopoDataByUserID(Object 删除绑定此用户ID的拓扑数据。用户ID仅需要提供删除拓扑数据 userID) key信息即可。 清空数据源 clearAllData() 删除所有的数据 获取根节点直获取根节点下的第一级拓扑数据(网络、链接、节点) getRootTopoObject() 接下属 的集合。也就是获取上级为根节点的数据。 获取根节点直 getRootTopoNode() 注:网络继承于节点。 接下属中的节 点和网络。 获取全部的拓 getAllTopoObject() 获取数据源所有的数据集合。包含网络、节点、链接 扑数据 获取所有的节 getAllTopoNode() 点和网络数据 获取所有的链 getAllTopoLink() 接数据 获取所有的告获取全部拓扑数据中的全部告警集合。返回Hash表。 getAllAlarm() 警对象 key是用户告警对象,value是告警级别。 根据用户的告警对象(仅包含key信息),获取在数据获取告警对象 getAlarm(Object alarm) 源中与此key相等的完整告警对象。 获取跟节点、 网络相关的链getLink(TopoNode node) 获取所有起点或终点是此对象的所有链接集合。 接 八、 API介绍——使用显示组件 拓扑视图从上到下共分为工具栏、拓扑图、状态栏 3个区域。 工具栏上的按钮: :放大拓扑图区域 :缩小拓扑图区域 :还原拓扑图区域 :转到上级网络视图 :转到根节点视图 1. 拓扑视图的属性/方法 拓扑图区域是拓扑视图的核心部分。工具栏和状态栏可以从拓扑视图中删除。拓扑视图提供的方法如下: 名称 函数名 描述 new 拓扑视图作为MVC模型中的view部分,创建拓扑视创建拓扑视 TopoGraphView(TopoDataSource 图的时候,需要赋予一个数据源。可以创建多个拓扑图 source) 视图,共享同一个数据源。 获取数据源 getTopoDataSource() 获取关联的数据源。 获取拓扑视 图上被选择获取当前拓扑图上已选择的数据对象(网络、节点、 getSelectedObject() 的单个拓扑链接的一种) 数据 获取拓扑视 图上被选择getSelectedObjects() 返回拓扑数据列表。 的多个数据 获取被选择 getSelectedNode() 获取当前拓扑图上已被用户选择的网络或节点 的节点、网络 获取被选择 getSelectedNetwork() 获取当前拓扑图上已被用户选择的网络 的节网络 获取被选择 getSelectedLink() 获取当前拓扑图上已被用户选择的链接 的链接 设置被选择用户鼠标点击拓扑数据,会自动选择被点击数据。此 setSelection(TopoObject topoObj) 数据 方法提供了手工改变选择对象的途径。 拓扑视图将展开网络,只显示网络下的拓扑数据。 设置要显示setCurrentNetwork(TopoNetwork 网络= =null 表示根节点。注:系统提供了自动展开、的当前网络 network) 收起网络的机制。 获取当前显 TopoNetwork getCurrentNetwork() 示的网络 static方法,获取系统当前的拓扑图。为快速访问只获取当前拓有一个实例的拓扑视图提供了便捷。如果当前进程有 getContextGraphView() 扑图实例 多个拓扑图实例,getContextGraphView()指向最后一 个实例。 还原拓扑图 zoom() 拓扑图工具栏默认支持方法 放大拓扑图 zoomIn() 拓扑图工具栏默认支持方法 缩小拓扑图 zoomOut() 拓扑图工具栏默认支持方法 转到上一级 toUpView() 拓扑图工具栏默认支持方法 拓扑图 转到根节点 toHomeView() 拓扑图工具栏默认支持方法 试图 设置临时的setLinkSource(TopoNode 起点标识 linkSource) 获取起点标 getLinkSource () 识 设置临时的系统提供了两个临时的标识,为用户在创建链接的时 setLinkTarget(TopoNode linkTarget) 终点标识 候,临时记录链接起点、终点信息提供了方便。 获取终点标 getLinkTarget() 识 清除临时标 clearLinkMarked() 识 设置鼠标事setMouseHandle(TopoMouseHandle 参见“事件处理”内容。 件处理程序 handle) 2. 树形视图的属性/方法 树形显示视图从java.swing.JTree继承而来。 名称 函数名 描述 形视图作为MVC模型中的view部分,创建树形视 new TopoTreeView(TopoDataSource 创建树形视图 图的时候,需要赋予一个数据源。可以创建多个树 source) 形视图,共享同一个数据源。 获取数据源 getTopoDataSource() 与拓扑视图同syncTopoview(TopoGraphView 设置树与拓扑图关联。设置好关联后,当选择树的步 topoView) 时候,把树的选择对象与拓扑图选择对象同步。 拓扑数据装换TreePath Static方法。把拓扑数据转换成TreePath对象,只成TreePath topoObjToParentTreePath(TopoObject 含父对象,不包含本对象。 topoObj) TreePath Static方法。把拓扑对象转换成TreePath对象。包 topoObjToTreePath(TopoObject 含父对象和本对象。 topoObj) 公共常量。根 public static final String 节点的显示名 topoTreeRootObject = " 全 网 " 称。 树形视图的其他属性行为,请参见JTree。 九、 API介绍——添加事件处理 系统定义了TopoMouseHandle事件处理接口,接口定义如下: 名称 函数名 描述 JPopupMenu 右键点击单个拓扑数据的右键菜单事件。通过传入的拓扑数据右键 createRightClickMenu(TopoGTopoGraphView可以获取当前被点击的拓扑数据及各种信菜单 raphView topoView) 息。返回弹出式菜单。 JPopupMenu 右键点击空白区域的菜单事件。通过传入的空白区域右键 createRightClickBlankMenu(TopoGraphView可以获取当前网络及各种信息。返回弹出菜单 TopoGraphView topoView) 式菜单。 doubleClickAction(TopoGrap 双击事件 鼠标双击节点、网络、链接、空白区域的事件。 hView topoView)
本文档为【工作文档iTopoview Java 网络拓扑图组件 用户手册】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_713593
暂无简介~
格式:doc
大小:200KB
软件:Word
页数:32
分类:企业经营
上传时间:2018-02-21
浏览量:25