TWaver学习笔记1-TWaver入门 联系客服

发布时间 : 星期三 文章TWaver学习笔记1-TWaver入门更新完毕开始阅读b3a18217c5da50e2534d7f04

图层,用于TWaver的图层管理,Layer实现了twaver.ILayer接口,有三个特殊属性:visible, editable, movable。TWaverFlex中的层次关系由LayerBox来管理,默认的层次顺序由父子关系和先后顺序决定,在拓扑图中,每个Element通过设置layerId与某个layer相关联以控制网元的显示层次。

?

twaver.IAlarm

告警,用来表示网管系统中设备故障或者网络异常的数据模型,基本实现类是Alarm。告警与Element相关联,用以反映网元的告警状态,Alarm中定义了级别,是否已清除,是否已确认以及相关联的网元编号。

TWaverFlex预定义了六种告警级别,告警级别的value属性可表示告警的严重程度,默认value值越大,告警越严重。 Severity CRITICAL MAJOR MINOR WARNING

Letter Value Color C M m W

500 400 300 200 100 0

Red Orange Yellow Cyan Purple Green

INDETERMINATE N CLEARED

R

TWaver中告警使用AlarmBox进行管理,告警与网元通过AlarmBox来相关联,两者不直接引用,与网元直接引用的是AlarmState,用来反映新发告警的级别和数量

?

twaver.IElement

IElement是TWaver中最重要的数据元素,Element是其实现类,用于表示拓扑图中的网元对象,如节点,连线,子网,分组,板卡.......

TWaver预定义了丰富的网元类型(Dummy, Node, Link, Bus, ShapeNode, ShapeLink, Follower, Rack, Shelf, Slot, Card, Port, Grid, Group, SubNetwork......),每一种网元对应一个ElementUI类,对应网元在拓扑图中的呈现组件类型,两者构成一个模型与视图分离的模型结构。 通过设置网元的属性和样式可以表现出丰富的呈现效果和特性,用户也可以扩展这些预定义的Element,或者定制自己的ElementUI,已应对特殊的业务呈现需求。

Element数据可以用ElementBox管理, ElementBox可以驱动twaver.Network, twaver.Tree, twaver.Table等多种视图

Dummy

在拓扑图中不可见,可在树,表格中显示,通常用来表示无拓扑意义的逻辑分组

Node

表示拓扑图中的一个节点,是其他节点的基类

Link

表示连线,是其他连线类型的基类

Follower

表示跟随者,可以附着在另一个Node(称之为宿主节点)上,宿主节点移动,Follower也跟随着移动

Bus

继承于ShapeNode,是一种布局类型节点,可以与连接在它上面的节点们排布出总线布局那样的效果

ShapeNode

由一系列控制点决定形状,可以表现丰富的形态

ShapeLink

继承于Link,与Link不同,其走向有一系列控制点决定,可以定制出特殊的连线布局

Grid

在拓扑图上表现为网格,可以指定行列数,是Rack, Shelf, Slot, Card, Port的基类,可以用来表示设备面板

Group

表示分组,包含孩子网元,可以展开合并,孩子的位置和范围决定Group展开后的位置和范围

SubNetwork

子网在拓扑图中有重要意义,拓扑图通常并不会一次显示所有的网元,而只显示当前子网中的元素,通过切换子网和数据的延时加载可以解决大数据量的问题

Rack

设备面板中表示机架

Shelf

设备面板中表示机框

Slot

设备面板中表示板卡槽位

Card

设备面板中表示一个板卡

Port

设备面板中表示端口

数据管理容器

数据管理容器,顾名思义就是用来管理数据的容器,TWaverFlex中的DataBox就

是用来管理所有Data数据的容器,在TWaverFlex的设计模式中担当者Model的重要角色,一个DataBox可以驱动多个视图,DataBox中数据的变化都能够自动的反映到其关联的所有视图组件上。TWaverFlex中的DataBox支持的视图包括:twaver.controls.Tree, twaver.controls.Table,此外ElementBox还有专门的视图组件twaver.network.Network。

?

DataBox

DataBox继承于 EventDispatcher,对容器变化以及容器内数据的变化都做了监听,这样就可以通过监听DataBox掌握所有DataBox中元素的变化,用户也可以通过重写on***Changed事件回调函数处理这些事件

public function addDataBoxChangeListener(listener:Function, priority:int = 0

, useWeakReference:Boolean = false):void

public function

removeDataBoxChangeListener(listener:Function):void public function

addDataPropertyChangeListener(listener:Function,

priority:int = 0, useWeakReference:Boolean = false):void public function

removeDataPropertyChangeListener(listener:Function):void public function

addPropertyChangeListener(listener:Function, priority:int = 0

, useWeakReference:Boolean = false):void