Administrator
2024-07-29 84182fbb85e7c11194014a8ca9d25a97f4f088e4
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());
    }
}