internal MetadataImporter(IEnumerable<IPolicyImportExtension> policyImportExtensions, MetadataImporterQuotas quotas) { if (quotas == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("quotas"); } if (policyImportExtensions == null) { policyImportExtensions = LoadPolicyExtensionsFromConfig(); } this.Quotas = quotas; this.policyExtensions = new KeyedByTypeCollection<IPolicyImportExtension>(policyImportExtensions); }
internal MetadataImporter(IEnumerable <IPolicyImportExtension> policyImportExtensions, MetadataImporterQuotas quotas) { if (quotas == null) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("quotas"); } if (policyImportExtensions == null) { policyImportExtensions = LoadPolicyExtensionsFromConfig(); } this.Quotas = quotas; this.policyExtensions = new KeyedByTypeCollection <IPolicyImportExtension>(policyImportExtensions); }
ImportedPolicyConversionContext(ServiceEndpoint endpoint, IEnumerable <XmlElement> endpointAssertions, Dictionary <OperationDescription, IEnumerable <XmlElement> > operationBindingAssertions, Dictionary <MessageDescription, IEnumerable <XmlElement> > messageBindingAssertions, Dictionary <FaultDescription, IEnumerable <XmlElement> > faultBindingAssertions, MetadataImporterQuotas quotas) : base(endpoint) { int remainingAssertionsAllowed = quotas.MaxPolicyAssertions; this.endpointAssertions = new PolicyAssertionCollection(new MaxItemsEnumerable <XmlElement>(endpointAssertions, remainingAssertionsAllowed)); remainingAssertionsAllowed -= this.endpointAssertions.Count; foreach (OperationDescription operationDescription in endpoint.Contract.Operations) { this.operationBindingAssertions.Add(operationDescription, new PolicyAssertionCollection()); foreach (MessageDescription messageDescription in operationDescription.Messages) { this.messageBindingAssertions.Add(messageDescription, new PolicyAssertionCollection()); } foreach (FaultDescription faultDescription in operationDescription.Faults) { this.faultBindingAssertions.Add(faultDescription, new PolicyAssertionCollection()); } } foreach (KeyValuePair <OperationDescription, IEnumerable <XmlElement> > entry in operationBindingAssertions) { this.operationBindingAssertions[entry.Key].AddRange(new MaxItemsEnumerable <XmlElement>(entry.Value, remainingAssertionsAllowed)); remainingAssertionsAllowed -= this.operationBindingAssertions[entry.Key].Count; } foreach (KeyValuePair <MessageDescription, IEnumerable <XmlElement> > entry in messageBindingAssertions) { this.messageBindingAssertions[entry.Key].AddRange(new MaxItemsEnumerable <XmlElement>(entry.Value, remainingAssertionsAllowed)); remainingAssertionsAllowed -= this.messageBindingAssertions[entry.Key].Count; } foreach (KeyValuePair <FaultDescription, IEnumerable <XmlElement> > entry in faultBindingAssertions) { this.faultBindingAssertions[entry.Key].AddRange(new MaxItemsEnumerable <XmlElement>(entry.Value, remainingAssertionsAllowed)); remainingAssertionsAllowed -= this.faultBindingAssertions[entry.Key].Count; } }
public WsdlImporter(MetadataSet metadata, IEnumerable <IPolicyImportExtension> policyImportExtensions, IEnumerable <IWsdlImportExtension> wsdlImportExtensions, MetadataImporterQuotas quotas) { }
internal static IEnumerable <PolicyConversionContext> GetPolicyConversionContextEnumerator(ServiceEndpoint endpoint, PolicyAlternatives policyAlternatives, MetadataImporterQuotas quotas) { return(ImportedPolicyConversionContext.GetPolicyConversionContextEnumerator(endpoint, policyAlternatives, quotas)); }
// // Policy Alternative Enumeration code // public static IEnumerable <PolicyConversionContext> GetPolicyConversionContextEnumerator(ServiceEndpoint endpoint, PolicyAlternatives policyAlternatives, MetadataImporterQuotas quotas) { IEnumerable <Dictionary <MessageDescription, IEnumerable <XmlElement> > > messageAssertionEnumerator; IEnumerable <Dictionary <FaultDescription, IEnumerable <XmlElement> > > faultAssertionEnumerator; IEnumerable <Dictionary <OperationDescription, IEnumerable <XmlElement> > > operationAssertionEnumerator; faultAssertionEnumerator = PolicyIterationHelper.GetCartesianProduct <FaultDescription, IEnumerable <XmlElement> >(policyAlternatives.FaultBindingAlternatives); messageAssertionEnumerator = PolicyIterationHelper.GetCartesianProduct <MessageDescription, IEnumerable <XmlElement> >(policyAlternatives.MessageBindingAlternatives); operationAssertionEnumerator = PolicyIterationHelper.GetCartesianProduct <OperationDescription, IEnumerable <XmlElement> >(policyAlternatives.OperationBindingAlternatives); foreach (Dictionary <FaultDescription, IEnumerable <XmlElement> > faultAssertionsSelection in faultAssertionEnumerator) { foreach (Dictionary <MessageDescription, IEnumerable <XmlElement> > messageAssertionsSelection in messageAssertionEnumerator) { foreach (Dictionary <OperationDescription, IEnumerable <XmlElement> > operationAssertionsSelection in operationAssertionEnumerator) { foreach (IEnumerable <XmlElement> endpointAssertionsSelection in policyAlternatives.EndpointAlternatives) { ImportedPolicyConversionContext conversionContext; try { conversionContext = new ImportedPolicyConversionContext(endpoint, endpointAssertionsSelection, operationAssertionsSelection, messageAssertionsSelection, faultAssertionsSelection, quotas); } catch (MaxItemsEnumeratorExceededMaxItemsException) { yield break; } yield return(conversionContext); } } } } }
public WsdlImporter(MetadataSet metadata, IEnumerable<IPolicyImportExtension> policyImportExtensions, IEnumerable<IWsdlImportExtension> wsdlImportExtensions, MetadataImporterQuotas quotas) { }