public void Send(MessagePriority priority, MessageReliability reliability, ArraySegment<byte> data)
        {
            NetOutgoingMessage packet = _connection.Peer.CreateMessage();
            packet.Write(data.Count);
            packet.Write(data.Array, data.Offset, data.Count);

            _connection.SendMessage(packet, Convert(reliability), (int) priority);
        }
 public NetDeliveryMethod Convert(MessageReliability val)
 {
     switch (val)
     {
         case MessageReliability.Unreliable:
             return NetDeliveryMethod.Unreliable;
         case MessageReliability.UnreliableOrdered:
             return NetDeliveryMethod.UnreliableSequenced;
         case MessageReliability.Reliable:
             return NetDeliveryMethod.ReliableUnordered;
         case MessageReliability.ReliableOrdered:
             return NetDeliveryMethod.ReliableOrdered;
         default:
             throw new ArgumentOutOfRangeException("val");
     }
 }
示例#3
0
 public MessageTopicSubscriptionOptions(MessageReliability reliability = MessageReliability.MostOnce, MessageFallbackBehavior fallbackBehavior = MessageFallbackBehavior.Backoff)
 {
     this.Reliability      = reliability;
     this.FallbackBehavior = fallbackBehavior;
 }
示例#4
0
 public virtual void SendTo(User user, ClientRole deviceRole, NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability)
 {
     SharingClientPINVOKE.NetworkConnection_SendTo__SWIG_2(swigCPtr, User.getCPtr(user), (int)deviceRole, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability);
 }
示例#5
0
 public virtual void Send(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability, MessageChannel channel)
 {
     SharingClientPINVOKE.NetworkConnection_Send__SWIG_1(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability, (int)channel);
 }
 public virtual void Broadcast(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability) {
   SharingClientPINVOKE.NetworkConnection_Broadcast__SWIG_2(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability);
 }
 public virtual void Broadcast(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability, MessageChannel channel, bool releaseMessage) {
   SharingClientPINVOKE.NetworkConnection_Broadcast__SWIG_0(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability, (int)channel, releaseMessage);
 }
 public virtual void SendTo(User user, ClientRole deviceRole, NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability) {
   SharingClientPINVOKE.NetworkConnection_SendTo__SWIG_2(swigCPtr, User.getCPtr(user), (int)deviceRole, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability);
 }
示例#9
0
 public static bool IsSequenced(MessageReliability reliability)
 {
     return(reliability == MessageReliability.UNRELIABLE_SEQUENCED ||
            reliability == MessageReliability.RELIABLE_SEQUENCED);
 }
示例#10
0
 public MessageEnqueueOptions(MessageReliability reliability, byte priority = 0) : this(TimeSpan.Zero, reliability, priority)
 {
 }
 public MessageTopicPublishOptions(MessageReliability reliability, byte priority = 0) : this(TimeSpan.Zero, reliability, priority)
 {
 }
示例#12
0
 public static bool NeedACK(MessageReliability reliability)
 {
     return(reliability == MessageReliability.UNRELIABLE_WITH_ACK_RECEIPT ||
            reliability == MessageReliability.RELIABLE_WITH_ACK_RECEIPT ||
            reliability == MessageReliability.RELIABLE_ORDERED_WITH_ACK_RECEIPT);
 }
示例#13
0
 public static bool IsOrdered(MessageReliability reliability)
 {
     return(reliability == MessageReliability.RELIABLE_ORDERED ||
            reliability == MessageReliability.RELIABLE_ORDERED_WITH_ACK_RECEIPT);
 }
示例#14
0
 public virtual void Broadcast(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability, MessageChannel channel, bool releaseMessage)
 {
     SharingClientPINVOKE.NetworkConnection_Broadcast__SWIG_0(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability, (int)channel, releaseMessage);
 }
 public virtual void Send(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability, MessageChannel channel) {
   SharingClientPINVOKE.NetworkConnection_Send__SWIG_1(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability, (int)channel);
 }
示例#16
0
 public virtual void Broadcast(NetworkOutMessage msg, MessagePriority priority, MessageReliability reliability)
 {
     SharingClientPINVOKE.NetworkConnection_Broadcast__SWIG_2(swigCPtr, NetworkOutMessage.getCPtr(msg), (int)priority, (int)reliability);
 }
示例#17
0
 public static MqttQualityOfServiceLevel ToQoS(this MessageReliability reliability) => reliability switch
 {