1. 2005-05-23 riverfor's first demo发布

riverfor's first demo发布,待偶有时间就同步到代码库内 
奋战了2天,终于实现了第一个demo版本,本版本重新设计了实现,出了OpenGNS协议的实现未作处理外,其他的代码与本社区内的代码库内的compass不同。
实现的compass具有以下特点:

一,设计上
1,  设计上暂时取消了admin client/server agent client/server dispatcher client/server等复杂模式,只是定义了agent (super / simple) 和dispatcher的角色。


二,实现上
1, 消息驱动实现数据流和信息的转换 
  对报头的解析,得出对报体的解析函数

2, 消息驱动实现报文的发送
  一次会话过程:
  设计agent的next cmd和args
  agent 发连接请求报文:
  dispatcher接收连接报文,检验权限,然后发送连接回复
  agent接收到回复报文,执行next cmd
  dispatcher接到next cmd发送的服务报文,作出处理,然后发送next cmd执行的回复报文,(然后断开连接?在这里还是在后面,待选)
  agent接受到next cmd的回复报文,发送断开连接报文,然后断开连接
  dispatcher接到断开连接报文,断开连接(或者超时后也断开连接)

3, 存储采用这样模式:一个agent连接上dispatcher后,后者首先由文件内读数据进内存,然后每次在涉及到数据的I/O时再写入文件
4,  目前已经实现的compass功能
  simple aent的 connect / disconnect , server login / logout
  super agent除了具有 simple agent的所有属性外,还具有 service /add / del / get等权限
  
三,TODO
1, 重构协议转换类,通过定义 __getitem__类,将负责协议转换的类变得简洁
2, 实现super agent的 service select service group add /del ...以及depend add /del...
3,项目文档
4, 存储的多样实现