`
ujoc
  • 浏览: 49034 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Quickserver 使用

 
阅读更多

QuickServer在应用逻辑上为开发者提供了四个类

o ClientCommandHandler

    处理与客户端的交互——使用字符串命令

o ClientObjectHandler [可选类]

    处理与客户端的交互——使用对象命令

o Authenticator [可选类]

    客户端验证

o ClientData [可选类]

    客户端数据载体(支持类)

说明:

1 其中 ClientCommandHandler是必须的,不能少的。一起服务都是ClientCommandHandler开始的。

2 ClientObjectHandler 只是用来处理 接收  client 发送来的object 不是用来向 client发送object的。

3 当需要发送的object时,可在ClientCommandHandler中使用 

handler.setDataMode(DataMode.OBJECT, DataType.OUT);     

   发送完后不要忘记使用

handler.setDataMode(DataMode.STRING, DataType.IN);
 handler.setDataMode(DataMode.STRING, DataType.OUT);

  使得server回到command状态,这里需要注意,虽然开始的时候只用了

handler.setDataMode(DataMode.OBJECT, DataType.OUT);     

   似乎回到command状态时也只要

 handler.setDataMode(DataMode.STRING, DataType.OUT);

    但是这样的话 Server会认为系统只是有DataType.IN功能了,所以也要加上

handler.setDataMode(DataMode.STRING, DataType.IN);

 

handler.setDataMode(DataMode.STRING, DataType.IN);
 handler.setDataMode(DataMode.STRING, DataType.OUT);

    是并列存在的不会,因为先后而覆盖

 

4 若想让Sever接受Object只需在ClientCommandHandler中使用

handler.setDataMode(DataMode.OBJECT, DataType.IN);     

   此时Server此线程会发生堵塞,直到接受到Client发送的Object,然后自动转向实现了ClientObjectHandler接口的类中的handleObject(ClientHandler handler, Object command)函数中处理Object。在处理完成后,勿忘

handler.setDataMode(DataMode.STRING, DataType.IN);
 handler.setDataMode(DataMode.STRING, DataType.OUT);

 

 

 

 

 

 

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics