public Configuration Get(IConfig config) { Configuration configuration = new Configuration(); config.Configure(ref configuration); return(configuration); }
private void Configure(IConfig config) { Injector.Inject(config); if (config is IHasConfigValidation configValidation && !configValidation.IsValid()) { throw new ArgumentException($"{config.GetType().FullName} is invalid, please make sure all requirements are met.", nameof(config)); } _configuredTypes.Add(config.GetType()); if (config is IHasConfigDependencies configDependencies) { AddConfigDependencies(configDependencies); } config.Configure(); }
//private Delegate void ExecuteConfiguration; public RapidFire(IConfig config, bool checkTablePermission = true) { Configuration configuration = new Configuration(); config.Configure(ref configuration); ForceMinimumConfiguration(configuration); ConfigLib.CheckTablePermission = checkTablePermission; if (checkTablePermission) { ConfigLib.ModelAccess = GetModelAccess(configuration.APP.UserId.ToString()); //Store DB Table Permission Once and Store it in DIC } Db = new Db(config); Messaging = new Messaging(config); UI = new UI(config); Api = new WebApi(config); TenantManager = new TenantManager(config); UserAuthintications = new UserAuthintications(config); }