示例#1
0
 private void EnterStateListening()
 {
     CloseReason = ConnectionClosedReason.None;
     State       = ConnectionState.Listening;
     if (BehaviorSet(ConnectionBehavior.GenerateOutgoingHandshakes))
     {
         Connection.Enqueue(HandshakePayload.Generate(State, false));
     }
     Behavior = ConnectionBehavior.HandleIncomingHandshakesOnly;
 }
示例#2
0
 private void EnterStateClosed(ConnectionClosedReason reason)
 {
     CloseReason = reason;
     State       = ConnectionState.Closed;
     if (BehaviorSet(ConnectionBehavior.GenerateOutgoingHandshakes))
     {
         // If we have just come from a state where handshakes are required, then we should notify the endpoint that we are closing.
         Connection.Enqueue(HandshakePayload.Generate(State, false));
     }
     Behavior = ConnectionBehavior.None;
 }
示例#3
0
 private void EnqueueHandshake(bool ackRequired)
 {
     HandshakeSentMarker.Mark();
     Connection.Enqueue(HandshakePayload.Generate(State, ackRequired));
 }