Example #1
0
        public SqlAclProvider(Configuration.AclConfigurationSection configSection, NameValueCollection parameters)
            : this()
        {
            string connectionStringName = parameters["connectionStringName"];

            this.connectionString = ConfigurationManager.ConnectionStrings[connectionStringName].ConnectionString;
        }
Example #2
0
        public RouterProvider(Configuration.AclConfigurationSection configSection, NameValueCollection parameters)
            : this()
        {
            string providerNames = parameters["providers"];

            if (providerNames != null)
            {
                foreach (string providerName in providerNames.Split(','))
                {
                    string realProviderName = providerName;

                    ProviderElement provider = null;
                    while (provider == null)
                    {
                        provider = configSection.Providers[realProviderName];
                        if (provider == null)
                        {
                            realProviderName = providerName.Substring(0, providerName.LastIndexOf('/'));
                            if (realProviderName == AclManager.ROOT)
                            {
                                throw new NotSupportedException(string.Format("The provider with name '{0}' could not be found. Make sure it is registered in your configuration file", providerName));
                            }
                        }
                    }
                    if (realProviderName == providerName && !providerName.Contains("/"))
                    {
                        Register("/", provider.Provider);
                    }
                    else
                    {
                        Register(providerName.Substring(realProviderName.Length), provider.Provider);
                    }
                }
            }
        }