分发器-----action与反射机制--------cs_framework------大青龙

本博客为原创

cs框架就是服务器和客户机之间用来信息的来往而制作的一套供外部(界面)使用的工具。cs框架一共有三层,加上界面就是四层。分为通信层(communication),会话层(conversation),服务器和客户端。

通信层用来做最基本的信息的往来,read和write;会话层有serverConversation和clientConversation,在这一层用来进行信息的具体操作(dealMessage);服务器和客户端连接界面和conversation。

conversation层要进行信息的具体处理,服务器向客户端发送的消息,客户端向服务器发送的消息。这些消息通常会加以区分,用一个特性来包装信息。告诉对方这是一个怎样的消息。然后在处理这些消息的时候,对消息进行解析,根据这些消息的特性再进行具体的操作。但是有时候不仅是客户端和服务器之间的消息,还有用户在使用我们的界面的时候,产生的请求,比如说请求登录,请求注
册等等。而这不同的请求也就代表了会有不同的执行方法。

//这个是serverConversation
public void dealMessage(NetMessage message) {
   
  ENetMessage type = message.getType();
  String para = message.getParaMessage();
  String action = message.getAction();
  
  switch (type) {
   
  case REQUEST_ONLINE:			//请求上线
   if(server.clientMap.size() > Server.MAX_COUNT) {
   
    send(new NetMessage()
     .setType(ENetMessage.FREFUSE_ONLINE)
     .setParaMessage("服务器已满,请稍后再试"));
    close();
   }else {
   
    send(new NetMessage()
      .setType(ENetMessage.AGREE_ONLINE));
    server.addConversation(para, this);
    server.reportMessage("客户端[" + id+ "]上线");
   }
   break;
  case OFF_LINE:		//下线
   server.reportMessage("客户端[" + id     + "]下线"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值