CN100449484C - 一种生成仿真设备面板的方法及系统 - Google Patents
一种生成仿真设备面板的方法及系统 Download PDFInfo
- Publication number
- CN100449484C CN100449484C CNB2006100575659A CN200610057565A CN100449484C CN 100449484 C CN100449484 C CN 100449484C CN B2006100575659 A CNB2006100575659 A CN B2006100575659A CN 200610057565 A CN200610057565 A CN 200610057565A CN 100449484 C CN100449484 C CN 100449484C
- Authority
- CN
- China
- Prior art keywords
- information
- equipment panel
- configuration
- artificial equipment
- generate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种生成仿真设备面板的方法,包括以下步骤:生成配置文件,该配置文件中包括配置静态信息;从设备侧获取配置动态信息;根据所述从设备侧获取的配置动态信息及所述配置静态信息生成仿真设备面板。本发明还提供了一种生成仿真设备面板的系统。本发明采用了传统的MVC模式将XML文件中配置的静态数据和设备上报的动态数据进行复合,生成设备面板的数据模型,然后通过数据模型生成风格、样式统一,并且能够进行操作、控制的仿真设备面板,大大提高了工作效率。
Description
技术领域
本发明涉及设备面板设计领域,尤其涉及一种生成仿真设备面板的方法及系统。
背景技术
仿真设备面板可以真实反映设备端口工作状态,方便用户对设备进行有效管理;并且仿真设备面板可以提供友好的用户界面,使用户通过鼠标、键盘即可轻松实现对网络设备的配置。在现有技术中,可以通过各种方式生成仿真面板,例如,在JAVA或Visual C等环境下绘制仿真设备面板。
目前在JAVA环境下绘制仿真设备面板时都是针对不同类型的设备编写各自的绘制方法,通过从整体角度编写语句,实现完整的仿真设备面板。由于实现仿真面板的程序是一个与仿真设备面板对应的整体,因此,在增加和修改仿真设备面板时,都必须对原程序进行硬编码,对源代码进行增加或修改。
另外,由于各种仿真设备面板可能具有一定的共性,在原仿真设备面板的基础上,对整个重新绘制一遍,会对其中共性部分重新编写,最终形成代码的拷贝和堆砌。
针对上述缺陷,可以对于设备面板中的一些通用组件,进行统一封装,比如:面板的网口、串口、把手等组件,在生成仿真面板时可以调用这些组件。然而,即使对这些通用组件的绘制也需要底层编程语言实现,对开发人员、维护人员要求较高,维护成本高、难度大、效率低下;同时,可能造成界面风格上不统一。
发明内容
本发明要解决的问题是提供一种生成仿真设备面板的方法,以解决现有技术中通过底层编程语言生成仿真设备面板导致工作效率低、不易修改的缺陷。
为了解决上述问题,本发明提供了一种生成仿真设备面板的方法,包括以下步骤:
生成配置文件,该配置文件中包括有配置静态信息;从设备侧获取配置动态信息;根据所述获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板。
所述生成配置文件具体包括:
设置文档类型定义文件;根据文档类型定义文件中的约束关系生成配置文件,该配置文件中包括配置静态信息。
所述配置文件为可扩展标记语言配置文件。
所述从设备侧获取配置动态信息具体为:设备侧定时或实时上报配置动态信息。
所述配置动态信息存储在数据源数据库。
所述根据从设备侧获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板具体包括:
根据所述从设备侧获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板数据模型;根据所述仿真设备面板数据模型生成仿真设备面板。
所述配置静态信息包括以下一种或几种:机架信息、机框信息、单板信息、扣板信息、端口信息。
所述配置静态信息还包括以下一种或几种:状态信息、告警信息、鉴权信息。
所述配置动态信息包括以下一种或几种:机架、机框、单板、扣板、端口的数据信息。
本发明还提供了一种生成仿真设备面板的系统,包括:存储单元、调用单元、模型生成单元和视图单元,其中:
所述存储单元,用于存储配置文件中的配置静态信息;
所述调用单元,用于获取并存储来自设备侧的配置动态信息;
所述模型生成单元,用于将所述配置动态信息和所述配置静态信息进行复合并输出复合信息,并根据所述复合信息生成仿真设备模型;
所述视图单元,用于根据所述仿真设备模型显示仿真设备面板。
所述配置静态信息包括以下一种或几种:机架信息、机框信息、单板信息、扣板信息、端口信息。
所述配置静态信息还包括以下一种或几种:状态信息、告警信息、鉴权信息。
所述配置动态信息包括以下一种或几种:机架、机框、单板、扣板、端口的数据信息。
与现有技术相比,本发明具有以下优点:
本发明根据用户配置文件,使用户能够设置配置静态信息,并根据来自设备的配置动态信息,生成仿真设备面板。简化了仿真设备面板的开发过程,不需要进行底层语言编程、图形绘制和处理,提高了工作效率。并且生成的仿真设备面板风格、样式统一,与实物外观相符,能够进行操作、控制。
另外,通过本发明修改设备面板时,只需要用户根据本身的需要修改相应的XML配置文件、填充动态数据就可以生成新的仿真设备面板,大大提高了工作效率。
附图说明
图1是本发明生成仿真设备面板的方法流程图;
图2是本发明实施例基于XML脚本及设备数据生成仿真设备面板的方法流程图;
图3是本发明实施例XML配置文件的示意图程序;
图4是本发明实施例生成的仿真设备面板示意图;
图5是本发明一种生成仿真设备面板的系统结构图。
具体实施方式
本发明生成仿真设备面板的方法如图1所示,包括以下步骤:
步骤s101,生成配置文件,该配置文件中包括配置静态信息;
步骤s102,获取设备侧上报的配置动态信息。
步骤s103,根据所述设备侧上报的配置动态信息及配置静态信息生成仿真设备面板。
本发明一个具体实施例为利用XML(eXtensible Markup Language,可扩展的标记语言)脚本及设备数据生成仿真设备面板,其方法流程如图2所示,包括以下步骤:
步骤s201,设置DTD(Document Type Definition,文档类型定义)文件。首先创建符合设计者需要的DTD文件,其中,一个DTD文件包括:元素的定义规则、元素间关系的定义规则、元素可使用的属性、可使用的实体或符号规则等。DTD是一种保证XML文件格式正确的方法,可以通过比较XML文件和DTD文件检测文件是否符合规范、元素和标签使用是否正确。本发明中利用DTD保证XML文件格式正确,避免了配置文件生成过程中出现错误信息,但是利用其它方法保证XML文件格式正确,或不采用DTD,本发明同样可以实现。
步骤s202,根据DTD文件中的约束关系生成XML配置文件,配置文件中包括配置静态信息。其中,XML文件是用XML标识写的XML原代码文件,也是ASCII的纯文本文件,可以用Notepad创建和修改。用户根据DTD文件中描述的约束关系,编写本身的XML配置文件,在配置文件中定义的内容包括:机架类型以及这种类型的机架上面的面板组件(环境板和机框)的位置信息;机框类型以及这种机框类型上面的面板元件(单板或串口)的位置信息;单板类型以及这种单板类型上面的面板元件(扣板或端口)的位置信息;扣板类型以及这种扣板类型上面的端口的位置信息;端口类型的静态信息;设备面板的尺寸、背景颜色,资源文件的路径数据,所有要用到的状态信息,所有要用到的告警信息,弹出式菜单以及它的响应对象类的配置信息。
步骤s203,从后台上报数据中获取配置动态信息。设备侧实时或定时上报动态配置信息请求,该动态数据信息主要包括:从机架、机框、单板、扣板和端口的数据信息,例如:机架上面第几个机框是否是空的,一个机框上面每个槽位是什么类型的单板(或空槽位)等信息,对于这些信息都填写在DataSource数据库类中。
步骤s204,根据后台上报的配置动态信息及配置静态信息生成仿真设备面板数据模型。本实施例中采用传统的MVC模式将XML文件中配置的静态数据和设备上报的动态数据进行复合,其中,MVC模式是为需要同样的数据提供多个视图的应用程序而设计的,实现数据层与表示层的分离,特别适用于开发与用户图形界面有关的应用程序。
其中,步骤s204进一步包括:
1、根据传入的配置文件路径,读取XML配置文件的内容,保存到结构体ConfigureUtilities中。首先通过第三方的XML解析工具,得到XML配置文件的根属性设备面板DevicePanel,然后根据DTD定义的层次结构,依次读取XML文件中的各个字段(比如:机架、机框、单板、端口等字段),将其保存在结构体ConfigureUtilities中。
2、根据设备侧上报的动态数据,生成一个存储于DataSource中的结构体,在该结构体中的数据其实是一棵数,有一个根节点(机架),然后在这些根节点上挂着子节点(如机框),然后在这些机框上还有子节点(如单板),依次类推,形成一个有层次的树结构。有些节点上如果没有实际的物理实体时可以填成空,使设备面板上会绘制一个空的槽位,表示这个地方是空的。
3、将上面两步生成的静态数据ConfigureUtilities和动态数据DataSource进行复合,首先将DataSource中的动态根数据与ConfigureUtilities结构中静态根数据结合,形成一个树根节点RootTreeNode;然后再遍例DataSource和ConfigureUtilities的根节点下面的子节点,形成一个个的叶子节点,然后挂在树模型的RootTreeNode上,依次类推将其它的子节点按照层次挂在各自的节点上,最终通过上述根节点、子节点和叶子节点的数据结构形成一个完整的设备面板数据模型。
步骤s205,根据所述仿真设备面板数据模型生成仿真设备面板。用户可以通过调用仿真设备面板数据模型组合生成符合特定要求的仿真设备面板。
另外,在配置文件中还可以设置鉴权信息,使生成的仿真设备面板中包括菜单鉴权接口,用户在仿真设备面板中点击右键时,可以调用该接口中由用户在配置文件中设定的鉴权方法对菜单中的选项进行鉴权。当鉴权失败时,表示当前的操作员没有这项功能的权限,这样菜单就会变成灰色,不允许操作;如果鉴权成功,表示当前操作员有这项功能的权限,这样菜单变为可用状态。
当设备侧有状态或告警信息,通过状态、告警接口,接收设备主动上报信息,在仿真面板上用不同颜色、不同告警灯显示这些状态、告警。用户需要通过调用配置文件中的配置静态信息和数据源DataSource数据库中的配置动态信息,随时更新仿真设备面板的数据模型,进而随时更新仿真设备面板,反映设备的实时状态。
本发明方法可以使用户在原有的仿真设备面板基础上方便地进行修改,生成新的仿真设图示面板。
例如:若需要在某个单板上增加一个端口,只需按以下操作进行:
1、在配置文件中构造需要增加的端口的数据:
包括该端口的ID,必需唯一;该端口的类型,需要和XML文件中的类型对应起来;子组件的数据,如果端口上没有其它子组件,则该位置是null。
2、通过调用dataSource数据库中的配置动态信息来触发增加组件的事件:
包括:父组件的ID;增加的数据,即步骤1构造的端口数据,是表示这个组件放在父组件的第几个子组件的位置上。
删除、告警上报、状态改变等事件都和上面的类似,这里就不在赘述。
3、数据模型接收到上述事件后再将该事件传递给仿真设备面板的视图层。
4、视图层根据事件类型进行相应处理(例如,根据状态或告警值找到对应的颜色或告警灯)将其绘制出来,显示给用户。
下面列举一个实例来说明生成仿真设备面板的过程:
首先,需要生成配置文件。根据实际需要利用XML编辑工具编写XML配置文件,如图3所示:
1、<?XML version=″1.0″encoding=″GB2312″?>是XML文件的开头,指定该XML配置文件的版本和编码格式;
2、<device-panel>是这个配置文件的根关键字,表示这个配置文件的描述开始;
3、<type-descriptor>表示类型定义的开始,下面开始定义各种组件类型;
4、<frame>表示定义了一种机架类型,在里面声明这个机架有几个子组件,包括子组件的位置等;
5、<shelf>表示定义一种机框类型,里面定义这个机框相关的信息,比如:机框名称、子位置、子个数等;
6、<card>表示定义一种ASL的单板类型,里面可以定义使用的图片、子位置等。
7、<port>表示定义一种Port的端口类型。
8、</type-descriptor>表示类型描述结束。
9、<assembly-descriptor>表示资源描述信息的开始,在该段里对配置文件中用到的资源进行描述;
10、<panel-descriptor>描述设备面板的大小尺寸;描述设备面板缺省的背景颜色;描述设备面板中用到的资源路径。
11、<state-descriptor>对状态信息的描述,里面定义哪种状态用那种颜色表示。
12、<alarm-descriptor>对告警信息的描述,里面定义各种告警用什么告警灯显示。
13、<popupmenu-descriptor>对弹出菜单的描述,里面定义各个菜单的响应类
14、<locale-descriptor>表示本地语言支持的描述,可以定义中文、英文等需要的语言资源。
15、</assembly-descriptor>表示资源描述结束。
16、</device-panel>表示设备面板配置文件结束。
然后,实时或定时获取设备的动态信息:首先指定一个初始ID,然后这个ID一直进行加1操作,从而保证ID唯一;指定frameData的类型,该位置指定机架类型;指定机架的子数据,该位置暂时设置为null;定义一个ComponentData的数组,这个数组放机架数据。
最后,将所述配置静态信息与配置动态信息复合,并根据复合信息生成仿真设备模型,并根据仿真设备模型显示仿真设备面板。
按照上述过程生成仿真设备面板如图4所示。
本发明还提供了一种配置文件生成仿真面板的系统,如图5所示,包括:存储单元10、调用单元20、模型生成单元30和视图单元40;其中,存储单元10,用于存储配置文件中由用户选择的配置静态信息;调用单元20,用于获取并存储来自设备侧的配置动态信息;模型生成单元30,用于将从后台获取的所述配置静态信息与配置动态信息复合,并根据复合信息动态生成设备面板的数据模型,并通过视图单元40显示仿真设备面板。其中所述配置静态信息包括:机架信息、机框信息、单板信息、扣板信息、端口信息;还可以包括状态信息、告警信息、鉴权信息。所述配置动态信息包括:机架、机框、单板、扣板、端口的数据信息。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (13)
1、一种生成仿真设备面板的方法,其特征在于,包括以下步骤:
生成配置文件,该配置文件中包括有配置静态信息;
从设备侧获取配置动态信息;
根据所述从设备侧获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板。
2、如权利要求1所述生成仿真设备面板的方法,其特征在于,所述生成配置文件具体包括:
设置文档类型定义文件;
根据文档类型定义文件中的约束关系生成配置文件,该配置文件中包括配置静态信息。
3、如权利要求1或2所述生成仿真设备面板的方法,其特征在于,所述配置文件为可扩展标记语言配置文件。
4、如权利要求1所述生成仿真设备面板的方法,其特征在于,所述从设备侧获取配置动态信息具体为:设备侧定时或实时上报配置动态信息。
5、如权利要求4所述生成仿真设备面板的方法,其特征在于,所述配置动态信息存储在数据源数据库。
6、如权利要求1所述生成仿真设备面板的方法,其特征在于,所述根据从设备侧获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板具体包括:
根据所述从设备侧获取的配置动态信息及所述配置静态信息进行复合生成仿真设备面板数据模型;
根据所述仿真设备面板数据模型生成仿真设备面板。
7、如权利要求1所述生成仿真设备面板的方法,其特征在于,所述配置静态信息包括以下一种或几种:机架信息、机框信息、单板信息、扣板信息、端口信息。
8、如权利要求7所述生成仿真设备面板的方法,其特征在于,所述配置静态信息还包括以下一种或几种:状态信息、告警信息、鉴权信息。
9、如权利要求1所述生成仿真设备面板的方法,其特征在于,所述配置动态信息包括以下一种或几种:机架、机框、单板、扣板、端口的数据信息。
10、一种生成仿真设备面板的系统,其特征在于,包括:存储单元、调用单元、模型生成单元和视图单元,其中:
所述存储单元,用于存储配置文件中的配置静态信息;
所述调用单元,用于获取并存储来自设备侧的配置动态信息;
所述模型生成单元,用于将所述配置动态信息和所述配置静态信息进行复合并输出复合信息,并根据所述复合信息生成仿真设备模型;
所述视图单元,用于根据所述仿真设备模型显示仿真设备面板。
11、如权利要求10所述生成仿真设备面板的系统,其特征在于,所述配置静态信息包括以下一种或几种:机架信息、机框信息、单板信息、扣板信息、端口信息。
12、如权利要求11所述生成仿真设备面板的系统,其特征在于,所述配置静态信息还包括以下一种或几种:状态信息、告警信息、鉴权信息。
13、如权利要求10所述生成仿真设备面板的系统,其特征在于,所述配置动态信息包括以下一种或几种:机架、机框、单板、扣板、端口的数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100575659A CN100449484C (zh) | 2006-03-15 | 2006-03-15 | 一种生成仿真设备面板的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100575659A CN100449484C (zh) | 2006-03-15 | 2006-03-15 | 一种生成仿真设备面板的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1869926A CN1869926A (zh) | 2006-11-29 |
CN100449484C true CN100449484C (zh) | 2009-01-07 |
Family
ID=37443594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100575659A Expired - Fee Related CN100449484C (zh) | 2006-03-15 | 2006-03-15 | 一种生成仿真设备面板的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100449484C (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616026B (zh) * | 2009-07-14 | 2011-10-26 | 中兴通讯股份有限公司 | 一种获取单板属性的方法及系统 |
CN102571456B (zh) * | 2012-02-24 | 2015-05-20 | 迈普通信技术股份有限公司 | 堆叠设备面板生成装置及方法 |
CN102902527B (zh) * | 2012-08-31 | 2015-07-01 | 迈普通信技术股份有限公司 | 基于web的嵌入式设备中仿真面板实现方法 |
CN103116499A (zh) * | 2013-03-11 | 2013-05-22 | 南京因泰莱电器股份有限公司 | 一种菜单组态的方法 |
CN103617030B (zh) * | 2013-11-20 | 2017-06-23 | 北京星网锐捷网络技术有限公司 | 设备面板生成方法和装置 |
CN108429630A (zh) * | 2017-02-15 | 2018-08-21 | 广东国盾量子科技有限公司 | 一种量子设备的仿真面板图的生成方法和装置 |
CN109992332A (zh) * | 2017-12-29 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 一种机房设备的图形面板生成方法及装置 |
CN109375917A (zh) * | 2018-11-01 | 2019-02-22 | 中国矿业大学(北京) | 基于xml的道路养护信息管理系统生成方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253217B1 (en) * | 1998-08-31 | 2001-06-26 | Xerox Corporation | Active properties for dynamic document management system configuration |
CN1643569A (zh) * | 2002-02-21 | 2005-07-20 | 高通股份有限公司 | 对移动设备进行仿真的方法和装置 |
-
2006
- 2006-03-15 CN CNB2006100575659A patent/CN100449484C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6253217B1 (en) * | 1998-08-31 | 2001-06-26 | Xerox Corporation | Active properties for dynamic document management system configuration |
CN1643569A (zh) * | 2002-02-21 | 2005-07-20 | 高通股份有限公司 | 对移动设备进行仿真的方法和装置 |
Non-Patent Citations (2)
Title |
---|
动态通用编辑界面在B/S模式中设计. 孙雷.电脑知识与技术. 2005 |
动态通用编辑界面在B/S模式中设计. 孙雷.电脑知识与技术. 2005 * |
Also Published As
Publication number | Publication date |
---|---|
CN1869926A (zh) | 2006-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100449484C (zh) | 一种生成仿真设备面板的方法及系统 | |
CN106528129B (zh) | 一种Web应用界面生成系统及方法 | |
CN114035773B (zh) | 一种基于配置的低代码开发表单方法、系统及装置 | |
CN102135873B (zh) | 一种创建用户界面的方法和装置 | |
CN101216838A (zh) | 基于web标记的xml界面配置文件分发系统及方法 | |
CN101470601A (zh) | 一种零编码生成应用软件的方法及生成平台 | |
CN106648587A (zh) | 一种基于注解的Web应用代码生成方法 | |
CN103150165A (zh) | 用于构建户外数据采集程序的框架以及程序构建方法 | |
CN116225429A (zh) | 基于拖拽式组件框架的ipage网页式低代码开发平台 | |
CN103268226A (zh) | 一种测试脚本文件生成方法及装置 | |
CN100465882C (zh) | 为全球应用创建文化敏感控件的方法和系统 | |
CN113050946A (zh) | 生成网站应用系统的方法、装置、电子设备及存储介质 | |
CN105159670A (zh) | 一种通用座舱显示控制系统软件开发框架 | |
CN112363794A (zh) | 一种前端列表类组件的渲染方法及电子设备 | |
CN102541566A (zh) | 半导体软件界面框架生成方法 | |
CN116974620A (zh) | 应用程序的生成方法、运行方法以及相应的装置 | |
CN102081521B (zh) | 一种通用的武器装备操作界面开发平台 | |
CN103593188A (zh) | 一种用于仪器所见即所得菜单的管理系统及管理方法 | |
CN101776997A (zh) | 一种界面处理方法及装置 | |
CN102541544A (zh) | 树形控件的处理方法、装置及系统 | |
US6501486B1 (en) | Multiple language support for component-based systems | |
CN114356430B (zh) | 一种基于airflow调度系统的DAG依赖配置工具 | |
CN101055521B (zh) | 映射规则的可视化生成方法及系统 | |
CN1770101A (zh) | 嵌入式检测对象 | |
CN106599087B (zh) | 一种空间信息服务的二次开发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090107 Termination date: 20170315 |
|
CF01 | Termination of patent right due to non-payment of annual fee |