internal virtual NamecheapDnsClientWrapper InitializeDnsClient(string envUsername, string envApiUser, string envApiKey, bool sandbox) { var dnsClient = new NamecheapDnsClientWrapper(); dnsClient.Initialize(envUsername, envApiUser, envApiKey, sandbox); return(dnsClient); }
public Task Initialize(Options opts) { var envApiUser = ConfigManager.GetEnvVarRequired(EnvApiUser); var envUsername = ConfigManager.GetEnvVarOrDefault(EnvUsername) ?? envApiUser; var envApiKey = ConfigManager.GetEnvVarRequired(EnvApiKey); _dnsClient = InitializeDnsClient(envUsername, envApiUser, envApiKey, opts.Sandbox); var cacheProvider = new FileCacheProvider(cacheTimeToLive: new TimeSpan(10, 0, 0)); var webTldRuleProvider = new WebTldRuleProvider(cacheProvider: cacheProvider); _domainParser = new DomainParser(webTldRuleProvider); _ttlToUse = opts.Ttl ?? ConfigManager.DefaultTtlInSeconds; return(Task.CompletedTask); }