private ICollection <ApplicationControllerSecurity> roles;                      // Change type to ApplicationControllerSecurity

        public IsAuthorizedHandler(ILogger <IsAuthorizedHandler> l, IOptions <AppSettingsConfiguration> s, IHttpContextAccessor hca, IDBConnection d)
        {
            contextAccessor = hca;
            logger          = l;
            settings        = s.Value;
            dbc             = (DBConnection)d;
        }
예제 #2
0
 protected BaseProcess(AppSettingsConfiguration appSettings, ContextManagement contextManagement, Logs logs)
 {
     AppSettings       = appSettings;
     ContextManagement = contextManagement;
     ProcessType       = logs.ProcessType;
     Logs = logs;
 }
예제 #3
0
        public static void Main(string[] args)
        {
            IConfiguration config = new AppSettingsConfiguration();

            using (var neo4jClient = GraphClientUtilities.Create(config))
            {
                neo4jClient.Connect();
                var repo = new Repository(neo4jClient);

                var company = new Company()
                {
                    Name = "Compañía 01"
                };
                repo.GetUsersInCompany(company)
                .Print($"Users in Company '{company.Name}'");

                var user = new User()
                {
                    Name = "Roger Álvarez"
                };
                repo.GetChallengesUserHasBeenInvitedInto(user)
                .Print($"Challenges for User '{user.Name}'");

                repo.GetOtherUsersInvitedToSameChallengesAsUserHasBeenInvitedTo(user)
                .Print($"Users Invited to Challenges where '{user.Name}' has been invited too");
            }
        }
예제 #4
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CorsConfigurationModel>(_configuration.GetSection(AppSettingsConfiguration.GetConfigurationType(ConfigurationType.CorsConfiguration)));

            services.AddDbContext <RecipeBookDbContext>(options =>
                                                        options.UseSqlServer(
                                                            _configuration.GetConnectionString("DevConnection")
                                                            )
                                                        );

            services.ConfigureReadOnlyDbContext();
            services.ConfigureMediatR();

            services.AddHttpContextAccessor();

            services.ConfigureAuthService();
            services.ConfigureApplicationCookies();

            services.ConfigureSwaggerServices();

            services.AddScopedServices();

            services.AddCors();
            services.AddControllers();

            services.AddSwaggerGen();
        }
예제 #5
0
 public AccountController(ILogger <AccountController> l, IOptions <AppSettingsConfiguration> s, IIdentityManager m, IDBConnection d)
 {
     logger          = l;
     settings        = s.Value;
     identityManager = m;
     dbc             = d;
 }
예제 #6
0
        public Installer(ITypeCatalog typeCatalog)
            : base(typeCatalog)
        {
            IWikibusConfiguration configuration = new AppSettingsConfiguration();

            this.Register(configuration);
        }
예제 #7
0
        static void Main(string[] args)
        {
            var appConfig         = new AppSettingsConfiguration(ConfigurationManager.AppSettings);
            var databaseGenerator = new DatabaseGenerator(appConfig, new SchemaGenerator(appConfig, new AssemblyLocator()));

            databaseGenerator.GenerateDatabase();
        }
예제 #8
0
 //ctor with unit of work
 protected RepositoryBase(AppSettingsConfiguration s, ILogger l, UnitOfWork uow, DBContext d)
 {
     Settings   = s;
     logger     = l;
     unitOfWork = uow;
     dbc        = d;
 }
            public void When_mapping_then_properties_and_config_key_mappings_are_case_insensitive(string key)
            {
                var propertyInfo  = AppSettingsConfiguration.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance).Single(k => k.Name.Equals(key, StringComparison.OrdinalIgnoreCase));
                var propertyValue = propertyInfo.GetValue(AppSettingsConfiguration, null);

                Assert.AreEqual(ConfigurationManager.AppSettings[key], propertyValue.ToString());
            }
예제 #10
0
        private Caller Authenticate(string company, bool require)
        {
            var auth = Request.Headers["Authorization"];

            if (auth != null)
            {
                var caller = factory.DigestValidateResponse(company, Request.HttpMethod, auth);

                if (caller != null)
                {
                    return(caller);
                }
            }

            if (!require)
            {
                var configuration = new AppSettingsConfiguration(company);

                return(new Caller
                {
                    Company = company,
                    Name = configuration.PublicLogin,
                    KeyType = "API",
                    KeyValue = configuration.PublicPassword
                });
            }

            Response.StatusCode = 401;
            Response.AddHeader("WWW-Authenticate", factory.DigestGenerateRequest(company));
            return(null);
        }
예제 #11
0
        private static string GetEndpointConfigurationName()
        {
            //TODO: DI in costructor IConfigurationPropertiesProvider?
            var appSettingsConfiguration  = new AppSettingsConfiguration();
            var endpointConfigurationName = appSettingsConfiguration.GetProperty(EndpointConfigurationNameKey);

            return(endpointConfigurationName);
        }
            public void When_mapping_then_properties_are_mapped_correctly_from_appsettings(Type type, string key)
            {
                var propertyInfo  = AppSettingsConfiguration.GetType().GetProperty(key, BindingFlags.Public | BindingFlags.Instance);
                var propertyValue = propertyInfo.GetValue(AppSettingsConfiguration, null);

                Assert.AreEqual(type, propertyInfo.PropertyType);
                Assert.AreEqual(ConfigurationManager.AppSettings[key], propertyValue.ToString());
            }
예제 #13
0
        private static string GetServiceAddress()
        {
            //TODO: DI in costructor IConfigurationPropertiesProvider?
            var appSettingsConfiguration = new AppSettingsConfiguration();
            var serviceAddress           = appSettingsConfiguration.GetProperty(AgathaServiceAddressAppSettingKey);

            return(serviceAddress);
        }
예제 #14
0
 public BaseControllerService(IDirectoryFileService DirectoryFileService, IWebHostEnvironment HostingEnvironment,
                              AppSettingsConfiguration AppSettingConfig, IAppActivityLogRepository AppActivityLogRepository, IAppErrorLogRepository ErrLogRepository)
 {
     _DirectoryFileService     = DirectoryFileService;
     _HostingEnvironment       = HostingEnvironment;
     _AppSettingConfig         = AppSettingConfig;
     _AppActivityLogRepository = AppActivityLogRepository;
     _AppErrLogRepository      = ErrLogRepository;
 }
예제 #15
0
파일: Startup.cs 프로젝트: sjtipton/scrimp
        private void BuildAppSettingsProvider()
        {
            var configuration = new AppSettingsConfiguration
            {
                GreenlitApiUrl = Configuration["Greenlit:ServicePath"]
            };

            AppSettingsProvider.SetGreenlitApiUrl(configuration);
        }
예제 #16
0
        public void GetProperty_GettingAssignedValue_ReturnsExpectedValue()
        {
            const string testSettingKey = "TestSettingKey";

            IConfigurationPropertiesProvider config = new AppSettingsConfiguration();

            config.SetProperty(testSettingKey, "TEST");

            Assert.AreEqual("TEST", config.GetProperty(testSettingKey));
        }
예제 #17
0
        public async Task <List <AlbumViewModel> > GetUserAlbums(int userId)
        {
            string jsonServiceApiUri = $"{AppSettingsConfiguration.AppSetting("ThirdPartyApiUris:JsonHolderAlbumsUri")}";
            var    response          = await _httpRequestFactory.Get(jsonServiceApiUri);

            var responseData = response.Content.ReadAsStringAsync().Result;
            List <AlbumViewModel> albumViewModels         = JsonConvert.DeserializeObject <List <AlbumViewModel> >(responseData);
            List <AlbumViewModel> filteredAlbumViewModels = albumViewModels.Where(a => a.UserId == userId).ToList();

            return(filteredAlbumViewModels);
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="ComponentsInstaller"/> class.
        /// </summary>
        /// <param name="databaseSettings">Database configuration provider</param>
        /// <param name="catalog">Nancy type catalog</param>
        public ComponentsInstaller(ITypeCatalog catalog, IConfiguration c)
            : base(catalog)
        {
            IWikibusConfiguration configuration = new AppSettingsConfiguration(c);

            this.Register(configuration);
            this.Register <IFrameProvider>(new WikibusModelFrames());
            this.Register <DefaultRouteResolver>();
            this.Register <IRdfConverter>(typeof(RdfConverter));
            this.RegisterAll <ISupportedOperations>(Lifetime.PerRequest);
        }
        public ActionResult Index(string company, string login, string password, string name, string hash, string name1)
        {
            if ("Public".Equals(company, StringComparison.OrdinalIgnoreCase))
            {
                company = "Public";
            }

            if (string.IsNullOrEmpty(login) && string.IsNullOrEmpty(password))
            {
                var configuration = configurationFactory.Create(company);
                login    = configuration.PublicLogin;
                password = configuration.PublicPassword;
            }

            if (!name1.EndsWith(".pd_", StringComparison.InvariantCultureIgnoreCase))
            {
                Response.StatusCode = 404;
                return(Content("Supported only compresioned files (.pd_)"));
            }

            //Ktoś ma małą literką numer kompilacji
            hash = hash.ToUpper();

            string imageName = Path.GetFileNameWithoutExtension(name);

            using (var backend = factory.Create(company, login, "VisualStudio", password))
            {
                var imageFile = backend.GetImageFile(imageName, hash);

                if (imageFile != null)
                {
                    return(HandleFound(backend, company, login, password, imageFile));
                }
            }

            if (company != "Public")
            {
                var configuration = new AppSettingsConfiguration("Public");

                using (var backend = factory.Create("Public", configuration.PublicLogin, "VisualStudio", configuration.PublicPassword))
                {
                    var imageFile = backend.GetImageFile(imageName, hash);

                    if (imageFile != null)
                    {
                        return(HandleFound(backend, company, login, password, imageFile));
                    }
                }
            }

            using (var backend = factory.Create(company, login, "VisualStudio", password))
                return(HandleNotFound(backend, name, hash, imageName));
        }
예제 #20
0
        public static AppiumDriver <AppiumWebElement> FactoryMobileDriver(string platformName)
        {
            AppSettingsConfiguration appSetings = new AppSettingsConfiguration();
            string path = Path.Combine(Directory.GetCurrentDirectory(), "device.json");

            if (path.Contains("WebTestProject"))
            {
                path = path.Replace("WebTestProject", "MobileTestProject");
            }
            PlatformMobile platform             = JsonConvert.DeserializeObject <PlatformMobile>(File.ReadAllText(path));
            AppiumOptions  options              = new AppiumOptions();
            string         driverExecutablePath = Path.Combine(Directory.GetCurrentDirectory(), appSetings.MobileDriverPath + "/chromedriver.exe");

            switch (platformName)
            {
            case "Android":
                options.AddAdditionalCapability(MobileCapabilityType.DeviceName, platform.Android.DeviceName);
                options.AddAdditionalCapability(MobileCapabilityType.PlatformVersion, platform.Android.PlatformVersion);
                options.AddAdditionalCapability(MobileCapabilityType.PlatformName, platform.Android.PlatformName);
                options.AddAdditionalCapability(MobileCapabilityType.BrowserName, platform.Android.BrowserName);
                options.AddAdditionalCapability(MobileCapabilityType.Udid, platform.Android.Udid);
                options.AddAdditionalCapability(MobileCapabilityType.Language, platform.Android.Language);
                options.AddAdditionalCapability(MobileCapabilityType.Orientation, platform.Android.Orientation);
                options.AddAdditionalCapability(MobileCapabilityType.NoReset, platform.Android.NoReset);
                options.AddAdditionalCapability(MobileCapabilityType.FullReset, platform.Android.FullReset);
                options.AddAdditionalCapability(MobileCapabilityType.App, platform.Android.App);
                options.AddAdditionalCapability(AndroidMobileCapabilityType.AppPackage, platform.Android.AppPackage);
                options.AddAdditionalCapability(AndroidMobileCapabilityType.AppActivity, platform.Android.AppActivity);
                options.AddAdditionalCapability(AndroidMobileCapabilityType.AppWaitActivity, platform.Android.AppWaitActivity);
                options.AddAdditionalCapability(AndroidMobileCapabilityType.AppWaitPackage, platform.Android.AppWaitPackage);
                options.AddAdditionalCapability(AndroidMobileCapabilityType.ChromedriverExecutable, driverExecutablePath);

                return(new AndroidDriver <AppiumWebElement>(new Uri(appSetings.UrlHub), options));

            case "iOS":
                options.AddAdditionalCapability(MobileCapabilityType.DeviceName, platform.iOS.DeviceName);
                options.AddAdditionalCapability(MobileCapabilityType.PlatformVersion, platform.iOS.PlatformVersion);
                options.AddAdditionalCapability(MobileCapabilityType.PlatformName, platform.iOS.PlatformName);
                options.AddAdditionalCapability(MobileCapabilityType.BrowserName, platform.iOS.BrowserName);
                options.AddAdditionalCapability(MobileCapabilityType.Udid, platform.iOS.Udid);
                options.AddAdditionalCapability(MobileCapabilityType.Language, platform.iOS.Language);
                options.AddAdditionalCapability(MobileCapabilityType.Orientation, platform.iOS.Orientation);
                options.AddAdditionalCapability(MobileCapabilityType.NoReset, platform.iOS.NoReset);
                options.AddAdditionalCapability(MobileCapabilityType.FullReset, platform.iOS.FullReset);
                options.AddAdditionalCapability(MobileCapabilityType.App, platform.iOS.App);
                options.AddAdditionalCapability(IOSMobileCapabilityType.AppName, platform.iOS.AppName);

                return(new IOSDriver <AppiumWebElement>(new Uri(appSetings.UrlHub), options));

            default:
                throw new Exception("La plataforma indicada no existe.");
            }
        }
예제 #21
0
        /// <summary>
        /// 获取指定的配置节中的配置
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sectionKey"></param>
        /// <returns></returns>
        public static T GetConfigSection <T>(string sectionKey) where T : IConfigSection
        {
            var section = AppSettingsConfiguration.GetSection(sectionKey);

            if (null == section)
            {
                throw new Exception("Load ConfigSection failed,not set . ");
            }


            return(section.Get <T>());
        }
예제 #22
0
        //public static string GetConfigString(string key)
        //{
        //    return AppSettingsConfiguration.GetValue<string>(key);
        //}

        /// <summary>
        /// 数据库配置字符串信息
        /// </summary>
        /// <returns></returns>
        public static ConnectionStringSection GetConnectionStringSection()
        {
            var key     = ConnectionStringSection.SectionName;
            var section = AppSettingsConfiguration.GetSection(key);

            if (null == section)
            {
                throw new Exception("GetConnectionStringSection failed,not set ConnectionStringSection. ");
            }


            return(section.Get <ConnectionStringSection>());
        }
예제 #23
0
        /// <summary>
        /// App Key配置
        /// </summary>
        /// <returns></returns>
        public static AppSecretConfigSection GetAppKeyConfigSection()
        {
            var key     = AppSecretConfigSection.SectionName;
            var section = AppSettingsConfiguration.GetSection(key);

            if (null == section)
            {
                throw new Exception("AppTokenConfigSection failed,not set . ");
            }


            return(section.Get <AppSecretConfigSection>());
        }
예제 #24
0
 public AccountController(ILoginService LoginService, IEmailSender EmailSender, AppSettingsConfiguration AppSettingsConfig,
                          IAppCookiesAuthService AppCookiesAuth, IAppUserService AppUserService, IAppSettingService ObjAppSettingService,
                          IAppJobService objAppJobService, IAppJobService JobService, IClassroomService ClassrommService)
 {
     _LoginService      = LoginService;
     _EmailSender       = EmailSender;
     _AppSettingsConfig = AppSettingsConfig;
     _AppUserService    = AppUserService;
     _AppCookiesAuth    = AppCookiesAuth;
     _AppSettingService = ObjAppSettingService;
     _AppJobService     = objAppJobService;
     _JobService        = JobService;
     _ClassroomService  = ClassrommService;
 }
예제 #25
0
        public SetupFixture()
        {
            var builder = new ConfigurationBuilder().
                          AddJsonFile("appsettings.json");

            config   = builder.Build();
            settings = new AppSettingsConfiguration();
            ConfigurationBinder.Bind(config, settings);

            ILoggerFactory logFactory = new LoggerFactory()
                                        .AddFile(config.GetSection("Logging"));

            logger = logFactory.CreateLogger(typeof(QueryTests));
        }
예제 #26
0
        public async Task <List <PhotoViewModel> > GetUserSpecificAlbumPhotos(int userId)
        {
            string jsonServiceApiUri = $"{AppSettingsConfiguration.AppSetting("ThirdPartyApiUris:JsonHolderPhotosUri")}";
            var    response          = await _httpRequestFactory.Get(jsonServiceApiUri);

            var responseData = response.Content.ReadAsStringAsync().Result;
            List <PhotoViewModel> photoViewModels = JsonConvert.DeserializeObject <List <PhotoViewModel> >(responseData);
            List <AlbumViewModel> albumViewModels = await _albumService.GetUserAlbums(userId);

            var userSpecificAlbums = albumViewModels.Select(s => s.Id).ToArray();
            List <PhotoViewModel> filteredPhotoViewModels = photoViewModels.Where(p => userSpecificAlbums.Contains(p.AlbumId)).ToList();

            return(filteredPhotoViewModels);
        }
예제 #27
0
        public static void Main(string[] args)
        {
            var companies = Seeder.CreateCompanies();

            IConfiguration config = new AppSettingsConfiguration();

            using (var neo4jClient = GraphClientUtilities.Create(config))
            {
                neo4jClient.Connect();
                var repo = new Repository(neo4jClient);

                repo.Save(companies, LogIntoConsole, AskToContinueWithNextCompany);
            }
        }
예제 #28
0
        /// <summary>
        /// 获取配置蜘蛛节点信息
        /// </summary>
        /// <returns></returns>
        public static WebCrawlerSection GetWebCrawlerSection()
        {
            var key     = WebCrawlerSection.SectionName;
            var section = AppSettingsConfiguration.GetSection(key);

            if (null == section)
            {
                throw new Exception("GetWebCrawlerSection failed,not set WebCrawlerSection. ");
            }

            var configSection = section.Get <WebCrawlerSection>();

            return(configSection);
        }
예제 #29
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ComponentsInstaller"/> class.
        /// </summary>
        /// <param name="databaseSettings">Database configuration provider</param>
        /// <param name="catalog">Nancy type catalog</param>
        public ComponentsInstaller(ISourcesDatabaseSettings databaseSettings, ITypeCatalog catalog)
            : base(catalog)
        {
            IWikibusConfiguration configuration = new AppSettingsConfiguration();

            this.Register(configuration);
            this.Register(new Lazy <ISparqlQueryProcessor>(() =>
            {
                var endpointUri = databaseSettings.SourcesSparqlEndpoint;
                return(new RemoteQueryProcessor(new SparqlRemoteEndpoint(endpointUri)));
            }));
            this.Register <IFrameProvider>(new WikibusModelFrames());
            this.Register <DefaultRouteResolver>();
        }
예제 #30
0
 public Issuances(
     IssuanceFileConfiguration issuanceFileConfiguration,
     AppSettingsConfiguration appSettingsConfiguration,
     IcsModuleIntegration icsModuleIntegration,
     ContextManagement contextManagement,
     ValidationRules validationRules,
     FileManager fileManager,
     Logs logs)
     : base(appSettingsConfiguration, contextManagement, logs)
 {
     _issuanceFile         = new IssuanceFile(issuanceFileConfiguration);
     _icsModuleIntegration = icsModuleIntegration;
     _validationRules      = validationRules;
     _fileManager          = fileManager;
 }