zhubaomin
2024-09-18 c5e5d0720d1f0805963ce218a9bd7e5da5a6e7a5
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java
@@ -8,16 +8,32 @@
public class DataCodecFactory implements ProtocolCodecFactory {
   private TcpUnitAdapter adapter ;
    private boolean stop = false ;//为true时,停止TCP服务,并把已经TCP连接断连接
    public DataCodecFactory(TcpUnitAdapter adapter) {
       this.adapter = adapter ;
    }
    public void stop(){
        stop = true ;
    }
    public void recover(){
        this.stop = false ;
    }
    public ProtocolEncoder getEncoder(IoSession ioSession) {
        if(stop){
            ioSession.closeNow() ;
        }
        return new DataEncoder();
    }
    public ProtocolDecoder getDecoder(IoSession ioSession) {
        if(stop){
            ioSession.closeNow() ;
        }
        return new DataDecoder(adapter.newPrefixedDataAvailableHandle());
    }
}