public void HandleOneWay(IntPtr nativeClientId,
                                 NativeFabricTransport.IFabricTransportMessage message)
        {
            var clientId = NativeTypes.FromNativeString(nativeClientId);
            var context  = new FabricTransportRequestContext(clientId, this.nativeConnectionHandler.GetCallBack);

            this.service.HandleOneWay(context, NativeFabricTransportMessage.ToFabricTransportMessage(message));
        }
Пример #2
0
        private FabricTransportMessage EndRequest(NativeCommon.IFabricAsyncOperationContext context)
        {
            var message = this.nativeClient.EndRequest(context);
            var reply   = NativeFabricTransportMessage.ToFabricTransportMessage(message);

            GC.KeepAlive(message);
            return(reply);
        }
Пример #3
0
        private NativeCommon.IFabricAsyncOperationContext BeginRequest(
            FabricTransportMessage message,
            TimeSpan timeout,
            NativeCommon.IFabricAsyncOperationCallback callback)
        {
            var timeoutInMilliSeconds = Utility.ToMilliseconds(timeout, "timeout");

            NativeFabricTransport.IFabricTransportMessage nativeFabricTransportMessage =
                new NativeFabricTransportMessage(message);
            return(this.nativeClient.BeginRequest(nativeFabricTransportMessage, timeoutInMilliSeconds, callback));
        }
        public NativeCommon.IFabricAsyncOperationContext BeginProcessRequest(
            IntPtr nativeClientId,
            NativeFabricTransport.IFabricTransportMessage message,
            uint timeoutMilliseconds,
            NativeCommon.IFabricAsyncOperationCallback callback)
        {
            var managedTimeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);
            var clientId       = NativeTypes.FromNativeString(nativeClientId);

            return(Utility.WrapNativeAsyncMethodImplementation(
                       (cancellationToken) =>
                       this.RequestResponseAsync(clientId, NativeFabricTransportMessage.ToFabricTransportMessage(message), managedTimeout),
                       callback,
                       "IFabricServiceCommunicationContract.RequestResponseAsync"));
        }
Пример #5
0
 public virtual void SendOneWay(FabricTransportMessage message)
 {
     NativeFabricTransport.IFabricTransportMessage nativeMessage =
         new NativeFabricTransportMessage(message);
     this.nativeClient.Send(nativeMessage);
 }
 public void OneWayMessage(FabricTransportMessage requestBody)
 {
     NativeFabricTransport.IFabricTransportMessage message = new NativeFabricTransportMessage(requestBody);
     Utility.WrapNativeSyncInvokeInMTA(() => this.nativeClientConnection.Send(message),
                                       "NativeFabricClientConnection.SendMessage");
 }
Пример #7
0
 public void HandleOneWay(NativeFabricTransport.IFabricTransportMessage message)
 {
     this.callImpl.OneWayMessage(NativeFabricTransportMessage.ToFabricTransportMessage(message));
 }