internal static void LoadAppSetting()
        {
            var roleDefine = System.Configuration.ConfigurationManager.AppSettings["role:define"];

            if (!string.IsNullOrEmpty(roleDefine))
            {
                RoleConfigurationHelper.DefineRolesOnce(roleDefine, "web.config");
            }
        }
        internal static bool ProcessRolesNamespace([NotNull] IXmlNode attribute)
        {
            Assert.ArgumentNotNull(attribute, "node");
            Assert.ArgumentCondition(attribute.NodeType == XmlNodeType.Attribute, "attribute", "The attribute node is not an XmlNodeType.Attribute");

            var name  = attribute.LocalName;
            var value = attribute.Value;

            switch (name)
            {
            case "d":
            case "define":
                if (!string.IsNullOrEmpty(value))
                {
                    RoleConfigurationHelper.DefineRolesOnce(value, attribute);

                    return(false);
                }

                break;

            case "r":
            case "require":
                if (!string.IsNullOrEmpty(value))
                {
                    var tokens = new Tokenizer(value, RoleConfigurationHelper.DefinedRoles.ToArray()).Tokenize();
                    var ret    = new Parser(tokens).Parse();

                    return(ret);
                }

                break;
            }

            return(true);
        }