public AuthorityUtility(ILogManagerFactory loggerFactory, IConfigurationManagerFactory configFactory) { logger = loggerFactory.CreateManager <AuthorityUtility>(); config = configFactory.CreateManager("Authority"); administrator = config.Get("AdministratorAuthority", administrator); initial = config.Get("InitialAuthorityValue", initial); }
public EncryptUtility(ILogManagerFactory loggerFactory, IConfigurationManagerFactory configFactory) { logger = loggerFactory.CreateManager <EncryptUtility>(); config = configFactory.CreateManager("PBKDF2Encrypt"); saltSize = config.Get("SaltSize", saltSize); type = config.Get("PRF", type); iteration = config.Get("IterationTimes", iteration); resultSize = config.Get("SizeRequested", resultSize); }
public CreditUtility(ILogManagerFactory loggerFactory, IConfigurationManagerFactory configFactory) { logger = loggerFactory.CreateManager <CreditUtility>(); config = configFactory.CreateManager("Credit"); accredit = config.Get("AccreditRule", accredit); creditPunishment = config.Get("CreditReduceRule", creditPunishment); creditReward = config.Get("CreditIncreaseRule", creditReward); changeMinLimit = config.Get("ChangeCreditOnlyWhenBorrowTimeOver", changeMinLimit); initial = config.Get("InitialCreditValue", initial); }
public HTTPISBNInfoService(ILogManagerFactory loggerFactory, IConfigurationManagerFactory configFactory) { client = new HttpClient(); logger = loggerFactory.CreateManager <HTTPISBNInfoService>(); config = configFactory.CreateManager("ISBNAPI"); url = config.Get("", url); interval = config.Get("", interval); IConfigurationManager jsonPathConfig = config.CreateSubManager("JsonPath"); isbnJsonPath = jsonPathConfig.Get("ISBN", isbnJsonPath); titleJsonPath = jsonPathConfig.Get("Title", titleJsonPath); authorJsonPath = jsonPathConfig.Get("Author", authorJsonPath); publishingHouseJsonPath = jsonPathConfig.Get("PublishingHouse", publishingHouseJsonPath); labelsJsonPath = jsonPathConfig.Get("Labels", labelsJsonPath); coverUrlJsonPath = jsonPathConfig.Get("CoverUrl", coverUrlJsonPath); abstractJsonPath = jsonPathConfig.Get("Abstract", abstractJsonPath); }
public SeriLogManagerFactory(IConfigurationManagerFactory loggerFactory) { config = loggerFactory.CreateManager("Logger"); path = config.Get("FilePath", path); size = config.Get("FileSizeLimitBytes", size); level = config.Get("MinimumLevel", level); logger = new LoggerConfiguration() .MinimumLevel.Is(level) .WriteTo.Async(c => c.File(path, fileSizeLimitBytes: size, rollOnFileSizeLimit: true, rollingInterval: RollingInterval.Day, shared: true, outputTemplate: "{Timestamp:HH:mm:ss} [{SourceClass}] [{Level}] {Message:lj}{NewLine}{Exception}")) .WriteTo.Async(c => c.Trace(outputTemplate: "{Timestamp:HH:mm:ss} [{SourceClass}] [{Level}] {Message:lj}{NewLine}{Exception}")) .CreateLogger(); selfLogger = CreateManager <SeriLogManagerFactory>(); selfLogger.Info("日志模块初始化完毕!"); }
public FreeSQLDatabaseModelManager(ILogManagerFactory loggerFactory, IConfigurationManagerFactory configFactory) { logger = loggerFactory.CreateManager <FreeSQLDatabaseModelManager>(); config = configFactory.CreateManager("Database"); type = config.Get("Type", type); autoSyncStructure = config.Get("AutoSyncStructure", autoSyncStructure); parameterized = config.Get("ParameterizedQuery", parameterized); sqlToVerbose = config.Get("OutPutSqlToVerbose", sqlToVerbose); warnOnOverTime = config.Get("WarnOnOverTime", sqlToVerbose); overTime = config.Get("OverTimeMilliseconds", overTime); switch (type) { case DataType.MySql: IConfigurationManager mySqlConfig = config.CreateSubManager("MySql"); mySqlDataSource = mySqlConfig.Get("DataSource", mySqlDataSource); mySqlPort = mySqlConfig.Get("Port", mySqlPort); mySqlUserId = mySqlConfig.Get("UserId", mySqlUserId); mySqlPassword = mySqlConfig.Get("Password", mySqlPassword); mySqlInitialCatlog = mySqlConfig.Get("InitialCatlog", mySqlInitialCatlog); mySqlCharset = mySqlConfig.Get("Charset", mySqlCharset); mySqlSslMode = mySqlConfig.Get("SslMode", mySqlSslMode); mySqlMinPoolSize = mySqlConfig.Get("MinPoolSize", mySqlMinPoolSize); sqlConnectionString = $"Data Source={mySqlDataSource};Port={mySqlPort};User ID={mySqlUserId};Password={mySqlPassword}; Initial Catalog={mySqlInitialCatlog};Charset={mySqlCharset}; SslMode={mySqlSslMode};Min pool size={mySqlMinPoolSize}"; break; case DataType.SqlServer: IConfigurationManager sqlServerConfig = config.CreateSubManager("SqlServer"); sqlServerDataSource = sqlServerConfig.Get("DataSource", sqlServerDataSource); sqlServerIntegratedSecurity = sqlServerConfig.Get("IntegratedSecurity", sqlServerIntegratedSecurity); sqlServerInitialCatlog = sqlServerConfig.Get("InitialCatlog", sqlServerInitialCatlog); sqlServerPooling = sqlServerConfig.Get("Pooling", sqlServerPooling); sqlServerMinPoolSize = sqlServerConfig.Get("PoolSize", sqlServerMinPoolSize); sqlConnectionString = $"Data Source={sqlServerDataSource};Integrated Security={sqlServerIntegratedSecurity};Initial Catalog={sqlServerInitialCatlog};Pooling={sqlServerPooling};Min Pool Size={sqlServerMinPoolSize}"; break; case DataType.PostgreSQL: IConfigurationManager postgreSqlConfig = config.CreateSubManager("PostgreSql"); postgreSqlHost = postgreSqlConfig.Get("Host", postgreSqlHost); postgreSqlPort = postgreSqlConfig.Get("Port", postgreSqlPort); postgreSqlUserName = postgreSqlConfig.Get("UserName", postgreSqlUserName); postgreSqlPassword = postgreSqlConfig.Get("Password", postgreSqlPassword); postgreSqlDatabase = postgreSqlConfig.Get("Database", postgreSqlDatabase); postgreSqlPooling = postgreSqlConfig.Get("Pooling", postgreSqlPooling); postgreSqlMinPoolSize = postgreSqlConfig.Get("MinPoolSize", postgreSqlMinPoolSize); sqlConnectionString = $"Host={postgreSqlHost};Port={postgreSqlPort};Username={postgreSqlUserName};Password={postgreSqlPassword}; config.Database={postgreSqlDatabase};Pooling={postgreSqlPooling};Minimum Pool Size={postgreSqlMinPoolSize}"; break; case DataType.Oracle: IConfigurationManager oracleConfig = config.CreateSubManager("Oracle"); oracleDataSource = oracleConfig.Get("DataSource", oracleDataSource); oracleUserId = oracleConfig.Get("UserId", oracleUserId); oraclePassword = oracleConfig.Get("Password", oraclePassword); oraclePooling = oracleConfig.Get("Pooling", oraclePooling); oracleMinPoolSize = oracleConfig.Get("MinPoolSize", oracleMinPoolSize); sqlConnectionString = $"user id={oracleUserId};password={oraclePassword}; data source={oracleDataSource};Pooling={oraclePooling};Min Pool Size={oracleMinPoolSize}"; break; default: case DataType.Sqlite: IConfigurationManager sqliteConfig = config.CreateSubManager("Sqlite"); sqliteDataSource = sqliteConfig.Get("DataSource", sqliteDataSource); sqliteAttachs = sqliteConfig.Get("Attachs", sqliteAttachs); sqlitePooling = sqliteConfig.Get("Pooling", sqlitePooling); sqliteMinPoolSize = sqliteConfig.Get("MinPoolSize", sqliteMinPoolSize); sqlConnectionString = $"Data Source={sqliteDataSource}; Attachs={sqliteAttachs}; Pooling={sqlitePooling};Min Pool Size={sqliteMinPoolSize}"; break; case DataType.MsAccess: IConfigurationManager msAccessConfig = config.CreateSubManager("MsAccess"); msAccessDataSource = msAccessConfig.Get("DataSource", msAccessDataSource); msAccessProvider = msAccessConfig.Get("Provider", msAccessProvider); msAccessMaxPoolSize = msAccessConfig.Get("MaxPoolSize", msAccessMaxPoolSize); sqlConnectionString = $"Provider={msAccessProvider};Data Source={msAccessDataSource};max pool size={msAccessMaxPoolSize}"; break; } sql = new FreeSqlBuilder() .UseConnectionString(type, sqlConnectionString) .UseAutoSyncStructure(autoSyncStructure) .UseGenerateCommandParameterWithLambda(parameterized) .Build(); if (sqlToVerbose) { sql.Aop.CurdBefore += (s, e) => { logger.Verbose("执行SQL:\n{SQL}", e.Sql); }; } if (warnOnOverTime) { sql.Aop.CurdAfter += (s, e) => { if (e.ElapsedMilliseconds >= overTime) { logger.Warn("执行SQL超时({Time}ms):\n{SQL}", e.ElapsedMilliseconds, e.Sql); } }; } }