public WikimediaUrlShorteningService(
            ILogger logger,
            IShortUrlCacheService shortUrlCacheService,
            IMediaWikiApiTypedFactory apiTypedFactory,
            BotConfiguration configuration,
            IUrlShorteningService secondaryShortener,
            WikimediaUrlShortnerConfiguration shortenerConfiguration)
            : base(logger, shortUrlCacheService)
        {
            this.logger             = logger;
            this.apiTypedFactory    = apiTypedFactory;
            this.secondaryShortener = (UrlShorteningServiceBase)secondaryShortener;
            this.allowedDomains     = shortenerConfiguration.AllowedDomains.Select(x => new Regex(x)).ToList();

            this.mediaWikiConfig = new MediaWikiConfiguration(
                shortenerConfiguration.MediaWikiApiEndpoint,
                configuration.UserAgent,
                shortenerConfiguration.MediaWikiApiUsername,
                shortenerConfiguration.MediaWikiApiPassword);
        }
 public MediaWikiApiHelper(IMediaWikiConfigurationProvider configurationProvider, IMediaWikiApiTypedFactory factory)
 {
     this.configurationProvider = configurationProvider;
     this.factory = factory;
 }
Exemple #3
0
 public MediaWikiApiHelper(BotConfiguration config, IMediaWikiApiTypedFactory factory)
 {
     this.config  = config;
     this.factory = factory;
 }