コード例 #1
0
 protected override IAsyncResult BeginSendProxyAnnouncement(
     IDiscoveryResponseContractCD1 responseChannel,
     DiscoveryMessageSequence discoveryMessageSequence,
     EndpointDiscoveryMetadata proxyEndpointDiscoveryMetadata,
     AsyncCallback callback,
     object state)
 {
     return(responseChannel.BeginHelloOperation(
                HelloMessageCD1.Create(
                    discoveryMessageSequence,
                    proxyEndpointDiscoveryMetadata),
                callback,
                state));
 }
コード例 #2
0
 public IAsyncResult BeginHelloOperation(HelloMessageCD1 message, AsyncCallback callback, object state)
 {
     Fx.Assert(message != null, "The message cannot be null.");
     if ((message.MessageSequence != null) && (message.Hello != null))
     {
         this.responseReceiver.HelloOperation(
             OperationContext.Current.IncomingMessageHeaders.RelatesTo,
             message.MessageSequence.ToDiscoveryMessageSequence(),
             message.Hello.ToEndpointDiscoveryMetadata());
     }
     else
     {
         if (message.MessageSequence == null && TD.DiscoveryMessageWithNullMessageSequenceIsEnabled())
         {
             TD.DiscoveryMessageWithNullMessageSequence(
                 ProtocolStrings.TracingStrings.Hello,
                 OperationContext.Current.IncomingMessageHeaders.MessageId.ToString());
         }
     }
     return(new CompletedAsyncResult(callback, state));
 }
コード例 #3
0
        public void HelloOperationAsync(EndpointDiscoveryMetadata endpointDiscoveryMetadata, object userState)
        {
            HelloMessageCD1 message = HelloMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata);

            if ((this.onBeginHelloOperationDelegate == null))
            {
                this.onBeginHelloOperationDelegate = new BeginOperationDelegate(this.OnBeginHelloOperation);
            }
            if ((this.onEndHelloOperationDelegate == null))
            {
                this.onEndHelloOperationDelegate = new EndOperationDelegate(this.OnEndHelloOperation);
            }
            if ((this.onHelloOperationCompletedDelegate == null))
            {
                this.onHelloOperationCompletedDelegate = Fx.ThunkCallback(new SendOrPostCallback(this.OnHelloOperationCompleted));
            }
            base.InvokeAsync(
                this.onBeginHelloOperationDelegate,
                new object[] { message },
                this.onEndHelloOperationDelegate,
                this.onHelloOperationCompletedDelegate,
                userState);
        }
コード例 #4
0
        IAsyncResult OnBeginHelloOperation(object[] inValues, System.AsyncCallback callback, object asyncState)
        {
            HelloMessageCD1 message = ((HelloMessageCD1)(inValues[0]));

            return(this.BeginHelloOperation(message, callback, asyncState));
        }
コード例 #5
0
 IAsyncResult BeginHelloOperation(HelloMessageCD1 message, AsyncCallback callback, object state)
 {
     return(base.Channel.BeginHelloOperation(message, callback, state));
 }
コード例 #6
0
        public IAsyncResult BeginHelloOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata, AsyncCallback callback, object state)
        {
            HelloMessageCD1 message = HelloMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata);

            return(base.Channel.BeginHelloOperation(message, callback, state));
        }
コード例 #7
0
        public void HelloOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata)
        {
            HelloMessageCD1 message = HelloMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata);

            base.Channel.HelloOperation(message);
        }
コード例 #8
0
 IAsyncResult IAnnouncementContractCD1.BeginHelloOperation(HelloMessageCD1 message, AsyncCallback callback, object state)
 {
     return new HelloOperationCD1AsyncResult(this, message, callback, state);
 }
コード例 #9
0
 void IAnnouncementContractCD1.HelloOperation(HelloMessageCD1 message)
 {
     Fx.Assert("The sync method IAnnouncementContractCD1.HelloOperation must not get invoked. It is marked with PreferAsyncInvocation flag.");
 }