Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / VersionCD1 / AnnouncementInnerClientCD1.cs / 1305376 / AnnouncementInnerClientCD1.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Discovery.VersionCD1 { using System.ComponentModel; using System.Runtime; using System.ServiceModel.Description; using System.Threading; class AnnouncementInnerClientCD1 : ClientBase, IAnnouncementInnerClient { DiscoveryMessageSequenceGenerator discoveryMessageSequenceGenerator; BeginOperationDelegate onBeginHelloOperationDelegate; EndOperationDelegate onEndHelloOperationDelegate; SendOrPostCallback onHelloOperationCompletedDelegate; BeginOperationDelegate onBeginByeOperationDelegate; EndOperationDelegate onEndByeOperationDelegate; SendOrPostCallback onByeOperationCompletedDelegate; public AnnouncementInnerClientCD1(AnnouncementEndpoint announcementEndpoint) : base(announcementEndpoint) { this.discoveryMessageSequenceGenerator = new DiscoveryMessageSequenceGenerator(); } event EventHandler HelloOperationCompletedEventHandler; event EventHandler ByeOperationCompletedEventHandler; event EventHandler IAnnouncementInnerClient.HelloOperationCompleted { add { this.HelloOperationCompletedEventHandler += value; } remove { this.HelloOperationCompletedEventHandler -= value; } } event EventHandler IAnnouncementInnerClient.ByeOperationCompleted { add { this.ByeOperationCompletedEventHandler += value; } remove { this.ByeOperationCompletedEventHandler -= value; } } public DiscoveryMessageSequenceGenerator DiscoveryMessageSequenceGenerator { get { return this.discoveryMessageSequenceGenerator; } set { this.discoveryMessageSequenceGenerator = value; } } public new ChannelFactory ChannelFactory { get { return base.ChannelFactory; } } public new IClientChannel InnerChannel { get { return base.InnerChannel; } } public new ServiceEndpoint Endpoint { get { return base.Endpoint; } } public ICommunicationObject InnerCommunicationObject { get { return this as ICommunicationObject; } } public void HelloOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata) { HelloMessageCD1 message = HelloMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata); base.Channel.HelloOperation(message); } public void ByeOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata) { ByeMessageCD1 message = ByeMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata); base.Channel.ByeOperation(message); } public IAsyncResult BeginHelloOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata, AsyncCallback callback, object state) { HelloMessageCD1 message = HelloMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata); return base.Channel.BeginHelloOperation(message, callback, state); } public void EndHelloOperation(IAsyncResult result) { base.Channel.EndHelloOperation(result); } public IAsyncResult BeginByeOperation(EndpointDiscoveryMetadata endpointDiscoveryMetadata, AsyncCallback callback, object state) { ByeMessageCD1 message = ByeMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata); return base.Channel.BeginByeOperation(message, callback, state); } public void EndByeOperation(IAsyncResult result) { base.Channel.EndByeOperation(result); } 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); } public void ByeOperationAsync(EndpointDiscoveryMetadata endpointDiscoveryMetadata, object userState) { ByeMessageCD1 message = ByeMessageCD1.Create(DiscoveryMessageSequenceGenerator.Next(), endpointDiscoveryMetadata); if (this.onBeginByeOperationDelegate == null) { this.onBeginByeOperationDelegate = new BeginOperationDelegate(this.OnBeginByeOperation); } if ((this.onEndByeOperationDelegate == null)) { this.onEndByeOperationDelegate = new EndOperationDelegate(this.OnEndByeOperation); } if ((this.onByeOperationCompletedDelegate == null)) { this.onByeOperationCompletedDelegate = Fx.ThunkCallback(new SendOrPostCallback(this.OnByeOperationCompleted)); } base.InvokeAsync( this.onBeginByeOperationDelegate, new object[] { message }, this.onEndByeOperationDelegate, this.onByeOperationCompletedDelegate, userState); } IAsyncResult BeginHelloOperation(HelloMessageCD1 message, AsyncCallback callback, object state) { return base.Channel.BeginHelloOperation(message, callback, state); } IAsyncResult BeginByeOperation(ByeMessageCD1 message, AsyncCallback callback, object state) { return base.Channel.BeginByeOperation(message, callback, state); } IAsyncResult OnBeginHelloOperation(object[] inValues, System.AsyncCallback callback, object asyncState) { HelloMessageCD1 message = ((HelloMessageCD1)(inValues[0])); return this.BeginHelloOperation(message, callback, asyncState); } object[] OnEndHelloOperation(System.IAsyncResult result) { this.EndHelloOperation(result); return null; } void OnHelloOperationCompleted(object state) { if ((this.HelloOperationCompletedEventHandler != null)) { InvokeAsyncCompletedEventArgs e = ((InvokeAsyncCompletedEventArgs)(state)); this.HelloOperationCompletedEventHandler(this, new System.ComponentModel.AsyncCompletedEventArgs(e.Error, e.Cancelled, e.UserState)); } } IAsyncResult OnBeginByeOperation(object[] inValues, System.AsyncCallback callback, object asyncState) { ByeMessageCD1 message = ((ByeMessageCD1)(inValues[0])); return this.BeginByeOperation(message, callback, asyncState); } object[] OnEndByeOperation(System.IAsyncResult result) { this.EndByeOperation(result); return null; } void OnByeOperationCompleted(object state) { if (this.ByeOperationCompletedEventHandler != null) { InvokeAsyncCompletedEventArgs e = ((InvokeAsyncCompletedEventArgs)(state)); this.ByeOperationCompletedEventHandler(this, new System.ComponentModel.AsyncCompletedEventArgs(e.Error, e.Cancelled, e.UserState)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ReadOnlyDataSource.cs
- ITextView.cs
- DbConvert.cs
- DoubleLinkListEnumerator.cs
- UserControlDocumentDesigner.cs
- HttpDictionary.cs
- GroupBoxDesigner.cs
- GestureRecognizer.cs
- FieldInfo.cs
- HashSet.cs
- XmlProcessingInstruction.cs
- OleDbRowUpdatedEvent.cs
- MessageEncoderFactory.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- ThemeDictionaryExtension.cs
- ContainerControlDesigner.cs
- FormViewInsertEventArgs.cs
- NumberSubstitution.cs
- RichTextBox.cs
- MsmqHostedTransportManager.cs
- DataSourceNameHandler.cs
- HeaderUtility.cs
- Codec.cs
- HelpProvider.cs
- TabControlEvent.cs
- _ProxyChain.cs
- CompilerHelpers.cs
- AuthenticationSection.cs
- NGCUIElementCollectionSerializerAsync.cs
- IndentedWriter.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- XmlValidatingReader.cs
- ControlPersister.cs
- CapabilitiesSection.cs
- XmlTextReaderImpl.cs
- IisTraceWebEventProvider.cs
- ChangeDirector.cs
- DataGridViewRowEventArgs.cs
- RequestResizeEvent.cs
- EventLogger.cs
- DictionaryBase.cs
- AbsoluteQuery.cs
- ToolboxComponentsCreatedEventArgs.cs
- ApplicationHost.cs
- LingerOption.cs
- InternalResources.cs
- IsolatedStorageFileStream.cs
- RewritingSimplifier.cs
- VersionedStream.cs
- PropertyChangeTracker.cs
- BookmarkCallbackWrapper.cs
- XmlDataSourceNodeDescriptor.cs
- XmlElementAttributes.cs
- WindowProviderWrapper.cs
- MethodBody.cs
- TextBoxAutomationPeer.cs
- KoreanCalendar.cs
- XmlSchemaCompilationSettings.cs
- DiscoveryClientOutputChannel.cs
- WebPartTransformer.cs
- WindowsFont.cs
- EarlyBoundInfo.cs
- XmlUtil.cs
- ObjectQueryExecutionPlan.cs
- PasswordPropertyTextAttribute.cs
- RequestStatusBarUpdateEventArgs.cs
- ErrorStyle.cs
- ButtonColumn.cs
- Int32.cs
- StyleHelper.cs
- CultureMapper.cs
- ByteStreamMessage.cs
- KeyTimeConverter.cs
- Vars.cs
- ObservableDictionary.cs
- TrackingMemoryStream.cs
- TextRange.cs
- NameValueSectionHandler.cs
- XPathSingletonIterator.cs
- FileLogRecordEnumerator.cs
- InvalidDataException.cs
- ColorDialog.cs
- IPCCacheManager.cs
- autovalidator.cs
- StaticExtension.cs
- TreeWalkHelper.cs
- StrokeNodeOperations.cs
- AsyncOperation.cs
- DbDataSourceEnumerator.cs
- XmlReflectionMember.cs
- TargetParameterCountException.cs
- TablePattern.cs
- Model3D.cs
- fixedPageContentExtractor.cs
- StateManagedCollection.cs
- ConfigurationValidatorBase.cs
- MappingSource.cs
- AnnotationResource.cs
- TemplateNameScope.cs
- TableItemPatternIdentifiers.cs