Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Discovery / System / ServiceModel / Discovery / Version11 / DiscoveryInnerClientManaged11.cs / 1305376 / DiscoveryInnerClientManaged11.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Discovery.Version11 { using System; using System.ServiceModel; using System.ServiceModel.Channels; using System.Runtime; using System.ServiceModel.Description; class DiscoveryInnerClientManaged11 : ClientBase, IDiscoveryInnerClient { IDiscoveryInnerClientResponse responseReceiver; internal DiscoveryInnerClientManaged11(DiscoveryEndpoint discoveryEndpoint, IDiscoveryInnerClientResponse responseReceiver) : base(discoveryEndpoint) { Fx.Assert(responseReceiver != null, "The responseReceiver parameter cannot be null"); this.responseReceiver = responseReceiver; } public new ClientCredentials ClientCredentials { get { return base.ClientCredentials; } } 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 bool IsRequestResponse { get { return true; } } public IAsyncResult BeginProbeOperation(FindCriteria findCriteria, AsyncCallback callback, object state) { ProbeMessage11 request = new ProbeMessage11(); request.Probe = FindCriteria11.FromFindCriteria(findCriteria); return base.Channel.BeginProbeOperation(request, callback, state); } public IAsyncResult BeginResolveOperation(ResolveCriteria resolveCriteria, AsyncCallback callback, object state) { ResolveMessage11 request = new ResolveMessage11(); request.Resolve = ResolveCriteria11.FromResolveCriteria(resolveCriteria); return base.Channel.BeginResolveOperation(request, callback, state); } public void EndProbeOperation(IAsyncResult result) { ProbeMatchesMessage11 response = base.Channel.EndProbeOperation(result); AsyncOperationContext context = (AsyncOperationContext)result.AsyncState; if ((response != null) && (response.ProbeMatches != null)) { this.responseReceiver.ProbeMatchOperation( context.OperationId, DiscoveryUtility.ToDiscoveryMessageSequenceOrNull(response.MessageSequence), DiscoveryUtility.ToEndpointDiscoveryMetadataCollection(response.ProbeMatches), true); } else { this.responseReceiver.PostFindCompletedAndRemove(context.OperationId, false, null); } } public void EndResolveOperation(IAsyncResult result) { ResolveMatchesMessage11 response = base.Channel.EndResolveOperation(result); AsyncOperationContext context = (AsyncOperationContext)result.AsyncState; if ((response != null) && (response.ResolveMatches != null) && (response.ResolveMatches.ResolveMatch != null)) { this.responseReceiver.ResolveMatchOperation( context.OperationId, DiscoveryUtility.ToDiscoveryMessageSequenceOrNull(response.MessageSequence), response.ResolveMatches.ResolveMatch.ToEndpointDiscoveryMetadata()); } else { this.responseReceiver.PostResolveCompletedAndRemove(context.OperationId, false, null); } } public void ProbeOperation(FindCriteria findCriteria) { ProbeMessage11 request = new ProbeMessage11(); request.Probe = FindCriteria11.FromFindCriteria(findCriteria); ProbeMatchesMessage11 response = base.Channel.ProbeOperation(request); if ((response != null) && (response.ProbeMatches != null)) { this.responseReceiver.ProbeMatchOperation( OperationContext.Current.IncomingMessageHeaders.RelatesTo, DiscoveryUtility.ToDiscoveryMessageSequenceOrNull(response.MessageSequence), DiscoveryUtility.ToEndpointDiscoveryMetadataCollection(response.ProbeMatches), true); } else { this.responseReceiver.PostFindCompletedAndRemove(OperationContext.Current.IncomingMessageHeaders.RelatesTo, false, null); } } public void ResolveOperation(ResolveCriteria resolveCriteria) { ResolveMessage11 request = new ResolveMessage11(); request.Resolve = ResolveCriteria11.FromResolveCriteria(resolveCriteria); ResolveMatchesMessage11 response = base.Channel.ResolveOperation(request); if ((response != null) && (response.ResolveMatches != null) && (response.ResolveMatches.ResolveMatch != null)) { this.responseReceiver.ResolveMatchOperation( OperationContext.Current.IncomingMessageHeaders.RelatesTo, DiscoveryUtility.ToDiscoveryMessageSequenceOrNull(response.MessageSequence), response.ResolveMatches.ResolveMatch.ToEndpointDiscoveryMetadata()); } else { this.responseReceiver.PostResolveCompletedAndRemove(OperationContext.Current.IncomingMessageHeaders.RelatesTo, false, null); } } } } // 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
- RawStylusInputCustomDataList.cs
- HtmlMeta.cs
- As.cs
- HtmlWindowCollection.cs
- SimpleMailWebEventProvider.cs
- ControlEvent.cs
- Transform3DCollection.cs
- CodeNamespaceImport.cs
- SqlParameter.cs
- Parser.cs
- WebPartMenuStyle.cs
- CalendarDesigner.cs
- InvalidWMPVersionException.cs
- TableCell.cs
- XmlEncoding.cs
- RSAPKCS1SignatureDeformatter.cs
- ConnectionPoint.cs
- RegexWorker.cs
- Cursors.cs
- ItemDragEvent.cs
- TypeListConverter.cs
- DesignerOptionService.cs
- DateTime.cs
- DocumentApplicationState.cs
- DataStreamFromComStream.cs
- ClientSettings.cs
- HttpServerVarsCollection.cs
- ProviderManager.cs
- SqlSupersetValidator.cs
- PersonalizationStateInfoCollection.cs
- DataStreamFromComStream.cs
- SchemaAttDef.cs
- DependencyProperty.cs
- BindableTemplateBuilder.cs
- TimeSpanSecondsConverter.cs
- EventTask.cs
- XmlWrappingReader.cs
- XmlSchemaNotation.cs
- AmbientProperties.cs
- FamilyTypeface.cs
- Mappings.cs
- Compiler.cs
- ComponentResourceKeyConverter.cs
- dbenumerator.cs
- ObjectStateEntry.cs
- LocalizeDesigner.cs
- CacheHelper.cs
- TrustManagerMoreInformation.cs
- OleDbRowUpdatedEvent.cs
- CustomValidator.cs
- IsolatedStoragePermission.cs
- XmlParser.cs
- OracleParameterBinding.cs
- ValidationError.cs
- TreeNode.cs
- NotifyCollectionChangedEventArgs.cs
- TimeStampChecker.cs
- ConfigurationConverterBase.cs
- QueryContinueDragEvent.cs
- FileLevelControlBuilderAttribute.cs
- Path.cs
- LongValidatorAttribute.cs
- TypeToken.cs
- DbBuffer.cs
- SqlDuplicator.cs
- MarkupProperty.cs
- MemberInfoSerializationHolder.cs
- XsdDataContractExporter.cs
- GlyphShapingProperties.cs
- Stroke2.cs
- TextPatternIdentifiers.cs
- DurationConverter.cs
- WinFormsUtils.cs
- DetailsView.cs
- NamespaceCollection.cs
- UseLicense.cs
- NativeActivityContext.cs
- DrawingAttributeSerializer.cs
- SequenceFullException.cs
- RayMeshGeometry3DHitTestResult.cs
- SafeEventLogReadHandle.cs
- SymbolMethod.cs
- Asn1Utilities.cs
- DefaultPerformanceCounters.cs
- DataGridColumnCollection.cs
- TransformerConfigurationWizardBase.cs
- BindingsSection.cs
- JsonFormatWriterGenerator.cs
- SoapMessage.cs
- TextBoxLine.cs
- RelationshipConverter.cs
- x509store.cs
- HtmlEncodedRawTextWriter.cs
- XmlCodeExporter.cs
- ColumnResult.cs
- PageSettings.cs
- x509utils.cs
- XmlWrappingReader.cs
- XmlChildEnumerator.cs
- WindowsListBox.cs