Example #1
0
        internal Collection <XmlElement> CreateRequestParameters(TrustDriver driver)
        {
            if (driver == null)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("driver");
            }

            Collection <XmlElement> result = new Collection <XmlElement>();

            if (_tokenType != null)
            {
                result.Add(driver.CreateTokenTypeElement(_tokenType));
            }

            result.Add(driver.CreateKeyTypeElement(_keyType));

            if (_keySize != 0)
            {
                result.Add(driver.CreateKeySizeElement(_keySize));
            }
            if (_claimTypeRequirements.Count > 0)
            {
                Collection <XmlElement> claimsElements = new Collection <XmlElement>();
                XmlDocument             doc            = new XmlDocument();
                foreach (ClaimTypeRequirement claimType in _claimTypeRequirements)
                {
                    XmlElement   element = doc.CreateElement(wsidPrefix, "ClaimType", wsidNamespace);
                    XmlAttribute attr    = doc.CreateAttribute("Uri");
                    attr.Value = claimType.ClaimType;
                    element.Attributes.Append(attr);
                    if (claimType.IsOptional != ClaimTypeRequirement.DefaultIsOptional)
                    {
                        attr       = doc.CreateAttribute("Optional");
                        attr.Value = XmlConvert.ToString(claimType.IsOptional);
                        element.Attributes.Append(attr);
                    }
                    claimsElements.Add(element);
                }
                result.Add(driver.CreateRequiredClaimsElement(claimsElements));
            }

            if (_additionalRequestParameters.Count > 0)
            {
                Collection <XmlElement> trustNormalizedParameters = NormalizeAdditionalParameters(_additionalRequestParameters,
                                                                                                  driver,
                                                                                                  (_claimTypeRequirements.Count > 0));

                foreach (XmlElement parameter in trustNormalizedParameters)
                {
                    result.Add(parameter);
                }
            }

            return(result);
        }
        internal Collection <XmlElement> CreateRequestParameters(TrustDriver driver)
        {
            if (driver == null)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("driver");
            }
            Collection <XmlElement> collection = new Collection <XmlElement>();

            if (this.tokenType != null)
            {
                collection.Add(driver.CreateTokenTypeElement(this.tokenType));
            }
            collection.Add(driver.CreateKeyTypeElement(this.keyType));
            if (this.keySize != 0)
            {
                collection.Add(driver.CreateKeySizeElement(this.keySize));
            }
            if (this.claimTypeRequirements.Count > 0)
            {
                Collection <XmlElement> claimsList = new Collection <XmlElement>();
                XmlDocument             document   = new XmlDocument();
                foreach (ClaimTypeRequirement requirement in this.claimTypeRequirements)
                {
                    XmlElement item = document.CreateElement("wsid", "ClaimType", "http://schemas.xmlsoap.org/ws/2005/05/identity");
                    System.Xml.XmlAttribute node = document.CreateAttribute("Uri");
                    node.Value = requirement.ClaimType;
                    item.Attributes.Append(node);
                    if (requirement.IsOptional)
                    {
                        node       = document.CreateAttribute("Optional");
                        node.Value = XmlConvert.ToString(requirement.IsOptional);
                        item.Attributes.Append(node);
                    }
                    claimsList.Add(item);
                }
                collection.Add(driver.CreateRequiredClaimsElement(claimsList));
            }
            if (this.additionalRequestParameters.Count > 0)
            {
                foreach (XmlElement element2 in this.NormalizeAdditionalParameters(this.additionalRequestParameters, driver, this.claimTypeRequirements.Count > 0))
                {
                    collection.Add(element2);
                }
            }
            return(collection);
        }
Example #3
0
        internal Collection <XmlElement> CreateRequestParameters(TrustDriver driver)
        {
            if (driver == null)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("driver");
            }
            Collection <XmlElement> collection1 = new Collection <XmlElement>();

            if (this.tokenType != null)
            {
                collection1.Add(driver.CreateTokenTypeElement(this.tokenType));
            }
            collection1.Add(driver.CreateKeyTypeElement(this.keyType));
            if (this.keySize != 0)
            {
                collection1.Add(driver.CreateKeySizeElement(this.keySize));
            }
            if (this.claimTypeRequirements.Count > 0)
            {
                Collection <XmlElement> collection2 = new Collection <XmlElement>();
                XmlDocument             xmlDocument = new XmlDocument();
                foreach (ClaimTypeRequirement claimTypeRequirement in this.claimTypeRequirements)
                {
                    XmlElement   element    = xmlDocument.CreateElement("wsid", "ClaimType", "http://schemas.xmlsoap.org/ws/2005/05/identity");
                    XmlAttribute attribute1 = xmlDocument.CreateAttribute("Uri");
                    attribute1.Value = claimTypeRequirement.ClaimType;
                    element.Attributes.Append(attribute1);
                    if (claimTypeRequirement.IsOptional)
                    {
                        XmlAttribute attribute2 = xmlDocument.CreateAttribute("Optional");
                        attribute2.Value = XmlConvert.ToString(claimTypeRequirement.IsOptional);
                        element.Attributes.Append(attribute2);
                    }
                    collection2.Add(element);
                }
                collection1.Add(driver.CreateRequiredClaimsElement((IEnumerable <XmlElement>)collection2));
            }
            if (this.additionalRequestParameters.Count > 0)
            {
                foreach (XmlElement additionalParameter in this.NormalizeAdditionalParameters(this.additionalRequestParameters, driver, this.claimTypeRequirements.Count > 0))
                {
                    collection1.Add(additionalParameter);
                }
            }
            return(collection1);
        }
 internal Collection<XmlElement> CreateRequestParameters(TrustDriver driver)
 {
     if (driver == null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("driver");
     }
     Collection<XmlElement> collection = new Collection<XmlElement>();
     if (this.tokenType != null)
     {
         collection.Add(driver.CreateTokenTypeElement(this.tokenType));
     }
     collection.Add(driver.CreateKeyTypeElement(this.keyType));
     if (this.keySize != 0)
     {
         collection.Add(driver.CreateKeySizeElement(this.keySize));
     }
     if (this.claimTypeRequirements.Count > 0)
     {
         Collection<XmlElement> claimsList = new Collection<XmlElement>();
         XmlDocument document = new XmlDocument();
         foreach (ClaimTypeRequirement requirement in this.claimTypeRequirements)
         {
             XmlElement item = document.CreateElement("wsid", "ClaimType", "http://schemas.xmlsoap.org/ws/2005/05/identity");
             System.Xml.XmlAttribute node = document.CreateAttribute("Uri");
             node.Value = requirement.ClaimType;
             item.Attributes.Append(node);
             if (requirement.IsOptional)
             {
                 node = document.CreateAttribute("Optional");
                 node.Value = XmlConvert.ToString(requirement.IsOptional);
                 item.Attributes.Append(node);
             }
             claimsList.Add(item);
         }
         collection.Add(driver.CreateRequiredClaimsElement(claimsList));
     }
     if (this.additionalRequestParameters.Count > 0)
     {
         foreach (XmlElement element2 in this.NormalizeAdditionalParameters(this.additionalRequestParameters, driver, this.claimTypeRequirements.Count > 0))
         {
             collection.Add(element2);
         }
     }
     return collection;
 }
        internal Collection<XmlElement> CreateRequestParameters(TrustDriver driver)
        {
            if (driver == null)
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("driver");

            Collection<XmlElement> result = new Collection<XmlElement>();

            if (this.tokenType != null)
            {
                result.Add(driver.CreateTokenTypeElement(tokenType));
            }

            result.Add(driver.CreateKeyTypeElement(this.keyType));

            if (this.keySize != 0)
            {
                result.Add(driver.CreateKeySizeElement(keySize));
            }
            if (this.claimTypeRequirements.Count > 0)
            {
                Collection<XmlElement> claimsElements = new Collection<XmlElement>();
                XmlDocument doc = new XmlDocument();
                foreach (ClaimTypeRequirement claimType in this.claimTypeRequirements)
                {
                    XmlElement element = doc.CreateElement(wsidPrefix, "ClaimType", wsidNamespace);
                    XmlAttribute attr = doc.CreateAttribute("Uri");
                    attr.Value = claimType.ClaimType;
                    element.Attributes.Append(attr);
                    if (claimType.IsOptional != ClaimTypeRequirement.DefaultIsOptional)
                    {
                        attr = doc.CreateAttribute("Optional");
                        attr.Value = XmlConvert.ToString(claimType.IsOptional);
                        element.Attributes.Append(attr);
                    }
                    claimsElements.Add(element);
                }
                result.Add(driver.CreateRequiredClaimsElement(claimsElements));
            }

            if (this.additionalRequestParameters.Count > 0)
            {
                Collection<XmlElement> trustNormalizedParameters = NormalizeAdditionalParameters(this.additionalRequestParameters,
                                                                                                 driver,
                                                                                                 (this.claimTypeRequirements.Count > 0));

                foreach (XmlElement parameter in trustNormalizedParameters)
                {
                    result.Add(parameter);
                }
            }

            return result;
        }