public void messageReceived(ChannelHandlerContext ctx, MessageEvent e)
throws Exception {
final Channel channel=ctx.getChannel();
SocketMessage sm=(SocketMessage) e.getMessage();
if(sm.getKind()==Kind.REQUEST){
final Request request=Request.newBuilder().mergeFrom(sm.getBody()).build();
if(request.getOperate()==Operate.HeartBeat){
beHeartBeat.beHeartBeat(context, channel, request);
}
}else if(sm.getKind()==Kind.WEB_REUQEST){
final WebRequest request=WebRequest.newBuilder().mergeFrom(sm.getBody()).build();
if(request.getOperate()==WebOperate.ExecuteJob){
completionService.submit(new Callable<ChannelResponse>() {
public ChannelResponse call() throws Exception {
return new ChannelResponse(channel,beWebExecute.beWebExecute(context,request));
}
});
}else if(request.getOperate()==WebOperate.CancelJob){
completionService.submit(new Callable<ChannelResponse>() {
public ChannelResponse call() throws Exception {
return new ChannelResponse(channel,beWebCancel.beWebCancel(context,request));
}
});
}else if(request.getOperate()==WebOperate.UpdateJob){
completionService.submit(new Callable<ChannelResponse>() {
public ChannelResponse call() throws Exception {
return new ChannelResponse(channel,beUpdate.beWebUpdate(context,request));
}
});
}else if(request.getOperate()==WebOperate.ExecuteDebug){
completionService.submit(new Callable<ChannelResponse>() {
public ChannelResponse call() throws Exception {
return new ChannelResponse(channel, beDebug.beWebExecute(context, request));
}
});