| package com.dy.rtuMw.server.forTcp; | 
|   | 
| import org.apache.logging.log4j.LogManager; | 
| import org.apache.logging.log4j.Logger; | 
|   | 
| import com.dy.common.mw.protocol.rtuStatus.StCommandResult; | 
| import com.dy.common.mw.protocol.rtuStatus.StDownData; | 
| import com.dy.common.mw.protocol.rtuStatus.StOnOffLine; | 
| import com.dy.common.mw.protocol.rtuStatus.StUpData; | 
|   | 
| public class RtuStatusDealer { | 
|     private static Logger log = LogManager.getLogger(RtuStatusDealer.class.getName()) ; | 
|      | 
|      | 
|     public static void onOffLine(RtuSessionStatus sta){ | 
|         StOnOffLine st = new StOnOffLine() ; | 
|         st.rtuAddr = sta.rtuAddr ; | 
|         st.onOff_trueFalse = sta.onTrueOffLine ; | 
|         st.ip = sta.ip ; | 
|         st.port = sta.port ; | 
|          | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + sta.rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + sta.rtuAddr + ")在线!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void onLine(String rtuAddr, String ip, Integer port){ | 
|         StOnOffLine st = new StOnOffLine() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.onOff_trueFalse = true ; | 
|         st.ip = ip ; | 
|         st.port = port ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")在线!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void offLine(String rtuAddr){ | 
|         StOnOffLine st = new StOnOffLine() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.onOff_trueFalse = false ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")离线!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void upData(String rtuAddr, Integer bufferLen){ | 
|         StUpData st = new StUpData() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.upBufferLen = bufferLen ; | 
|         st.isReport = false ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")上行数据!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void upReport(String rtuAddr, Integer bufferLen){ | 
|         StUpData st = new StUpData() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.upBufferLen = bufferLen ; | 
|         st.isReport = true ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")上报数据!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void downData(String rtuAddr, Integer bufferLen){ | 
|         StDownData st = new StDownData() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.downBufferLen = bufferLen ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")下行数据!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void commandSuccess(String rtuAddr){ | 
|         StCommandResult st = new StCommandResult() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.isSuccess = true ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")命令成功!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void commandFailure(String rtuAddr){ | 
|         StCommandResult st = new StCommandResult() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.isSuccess = false ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")命令失败!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|      | 
|     public static void commandFail2Success(String rtuAddr){ | 
|         StCommandResult st = new StCommandResult() ; | 
|         st.rtuAddr = rtuAddr ; | 
|         st.fail2Success = true ; | 
|          | 
| //        Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ; | 
| //        if(member == null){ | 
| //            log.error("出错,未能得到处理RTU(地址为" + rtuAddr + ")状态数据的数据中间件,可能数据中间件未启动或脱离的集群!"); | 
| //        }else{ | 
| //            log.info("通知数据中间件(" + member.toString() + "),RTU(地址为" + rtuAddr + ")命令由失败转成功!"); | 
| //            new JgIoHandler().sendP2P(member, st); | 
| //        } | 
|     } | 
|   | 
| } |