twaver.model
Class Data

java.lang.Object
  extended by twaver.model.Data
All Implemented Interfaces:
IChildList, IData, IHandler<PropertyChangeEvent>, IListener<PropertyChangeEvent>, Identifiable
Direct Known Subclasses:
Alarm, Element, Layer

public class Data
extends java.lang.Object
implements IData

数据元素


Field Summary
protected  Data parent
          父节点
 
Constructor Summary
Data()
          构造函数
 
Method Summary
 boolean addChild(Data child)
           
 boolean addChild(Data child, int index)
           
 boolean beforeEvent(PropertyChangeEvent event)
          事件发生前,返回false表示中断事件,用于操作前的检测
 void clearChildren()
           
 java.lang.Object get(java.lang.String name)
           
 Data getChildAt(int index)
           
 int getChildIndex(Data child)
           
 java.util.List<Data> getChildren()
           
 int getChildrenCount()
           
 int getId()
          元素编号,唯一标识
 Data getParent()
           
 java.util.Map<java.lang.String,java.lang.Object> getProperties()
          获取数据属性列表
 java.util.Map<java.lang.String,java.lang.Object> getProperties(boolean create)
          获取数据属性列表,如果列表不存在,且参数create为true,则初始化属性列表
 boolean hasChildren()
           
 int hashCode()
           
 boolean isDescendantOf(Data parent)
           
protected  void onChildAdd(Data child, int index)
          添加孩子节点时回调此函数
protected  void onChildRemove(Data child)
          孩子节点被删除时回调此函数
protected  void onChildrenClear(Data[] children)
          清除所有孩子时,回调此函数
 void onEvent(PropertyChangeEvent event)
          事件发生时回调
 void onParentChanged(Data oldParent, Data newParent)
           
 boolean remove(java.lang.String name)
           
 boolean removeChild(Data child)
           
 boolean set(java.lang.String name, java.lang.Object value)
           
 boolean setChildIndex(Data child, int index)
           
 void setListener(IListener<PropertyChangeEvent> listener)
          设置监听器
 boolean setParent(Data parent)
           
 boolean setParent(Data parent, int index)
           
protected  boolean setProperty(java.lang.String name, java.lang.Object value, PropertyChangeEvent event, java.util.Map<java.lang.String,java.lang.Object> properties)
          设置属性
 Data[] toChildren()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

parent

protected Data parent
父节点

Constructor Detail

Data

public Data()
构造函数

Method Detail

getId

public int getId()
Description copied from interface: Identifiable
元素编号,唯一标识

Specified by:
getId in interface Identifiable
Returns:
元素的唯一标识

setListener

public void setListener(IListener<PropertyChangeEvent> listener)
Description copied from interface: IHandler
设置监听器

Specified by:
setListener in interface IHandler<PropertyChangeEvent>
Parameters:
listener - 监听器

get

public java.lang.Object get(java.lang.String name)
Specified by:
get in interface IData

getProperties

public java.util.Map<java.lang.String,java.lang.Object> getProperties()
获取数据属性列表

Specified by:
getProperties in interface IData

getProperties

public java.util.Map<java.lang.String,java.lang.Object> getProperties(boolean create)
获取数据属性列表,如果列表不存在,且参数create为true,则初始化属性列表

Parameters:
create - 列表不存在时,是否创建列表
Returns:
数据属性列表

beforeEvent

public boolean beforeEvent(PropertyChangeEvent event)
Description copied from interface: IListener
事件发生前,返回false表示中断事件,用于操作前的检测

Specified by:
beforeEvent in interface IListener<PropertyChangeEvent>
Parameters:
event - 事件
Returns:
false表示中断事件

onEvent

public void onEvent(PropertyChangeEvent event)
Description copied from interface: IListener
事件发生时回调

Specified by:
onEvent in interface IListener<PropertyChangeEvent>
Parameters:
event - 事件

set

public boolean set(java.lang.String name,
                   java.lang.Object value)
Specified by:
set in interface IData

setProperty

protected boolean setProperty(java.lang.String name,
                              java.lang.Object value,
                              PropertyChangeEvent event,
                              java.util.Map<java.lang.String,java.lang.Object> properties)
设置属性

Parameters:
name - 属性名称
value - 属性值
event - 属性变化事件
properties - 属性列表
Returns:

remove

public boolean remove(java.lang.String name)
Specified by:
remove in interface IData

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

getParent

public Data getParent()
Specified by:
getParent in interface IChildList

setParent

public boolean setParent(Data parent)
Specified by:
setParent in interface IChildList

setParent

public boolean setParent(Data parent,
                         int index)
Specified by:
setParent in interface IChildList

addChild

public boolean addChild(Data child)
Specified by:
addChild in interface IChildList

addChild

public boolean addChild(Data child,
                        int index)
Specified by:
addChild in interface IChildList

onChildAdd

protected void onChildAdd(Data child,
                          int index)
添加孩子节点时回调此函数

Parameters:
child - 孩子节点
index - 序号

removeChild

public boolean removeChild(Data child)
Specified by:
removeChild in interface IChildList

onChildRemove

protected void onChildRemove(Data child)
孩子节点被删除时回调此函数

Parameters:
child - 孩子节点

getChildren

public java.util.List<Data> getChildren()
Specified by:
getChildren in interface IChildList

toChildren

public Data[] toChildren()
Specified by:
toChildren in interface IChildList

clearChildren

public void clearChildren()
Specified by:
clearChildren in interface IChildList

onChildrenClear

protected void onChildrenClear(Data[] children)
清除所有孩子时,回调此函数

Parameters:
children - 待删除的孩子节点

getChildIndex

public int getChildIndex(Data child)
Specified by:
getChildIndex in interface IChildList

setChildIndex

public boolean setChildIndex(Data child,
                             int index)
Specified by:
setChildIndex in interface IChildList

getChildrenCount

public int getChildrenCount()
Specified by:
getChildrenCount in interface IChildList

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

hasChildren

public boolean hasChildren()
Specified by:
hasChildren in interface IChildList

getChildAt

public Data getChildAt(int index)
Specified by:
getChildAt in interface IChildList

isDescendantOf

public boolean isDescendantOf(Data parent)
Specified by:
isDescendantOf in interface IChildList

onParentChanged

public void onParentChanged(Data oldParent,
                            Data newParent)
Specified by:
onParentChanged in interface IChildList