public HeaderDefinedLengthProtocol(TcpResponse defaultResponse, TcpResponse responseOnConnection, int headerLength, MessageLengthCalculator lengthCalculator) { this.DefaultResponse = defaultResponse ?? throw new ArgumentNullException(nameof(defaultResponse)); this.ResponseOnConnection = responseOnConnection; _headerLength = headerLength > 0 ? headerLength : throw new ArgumentOutOfRangeException(nameof(headerLength)); _lengthCalculator = lengthCalculator ?? throw new ArgumentNullException(nameof(lengthCalculator)); }
public IProtocolFactory WithHeadersContainingTheMessageLength(int headerLength, MessageLengthCalculator messageLengthCalculator) { var protocol = new HeaderDefinedLengthProtocolFactory() { HeaderLength = headerLength, LengthCalculator = messageLengthCalculator }; _server.Protocol = protocol; return(protocol); }