예제 #1
0
        bool ImportTransport(MetadataImporter importer, TransportBindingElement bindingElement,
                             XmlElement transportPolicy)
        {
            XmlElement algorithmSuite, layout;

            if (!PolicyImportHelper.FindPolicyElement(
                    importer, transportPolicy,
                    new QName("AlgorithmSuite", PolicyImportHelper.SecurityPolicyNS),
                    false, true, out algorithmSuite) ||
                !PolicyImportHelper.FindPolicyElement(
                    importer, transportPolicy,
                    new QName("Layout", PolicyImportHelper.SecurityPolicyNS),
                    false, true, out layout))
            {
                return(false);
            }

            bool foundUnknown = false;

            foreach (var node in transportPolicy.ChildNodes)
            {
                var e = node as XmlElement;
                if (e == null)
                {
                    continue;
                }
                importer.AddWarning("Unknown policy assertion: {0}", e.OuterXml);
                foundUnknown = true;
            }

            return(!foundUnknown);
        }
예제 #2
0
 bool GetTransportToken(MetadataImporter importer, XmlElement transportPolicy,
                        out XmlElement transportToken)
 {
     return(PolicyImportHelper.FindPolicyElement(
                importer, transportPolicy,
                new QName("TransportToken", PolicyImportHelper.SecurityPolicyNS),
                false, true, out transportToken));
 }