public Subscriptions(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #2
0
 public Tags(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #3
0
 public ModLookupApi(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #4
0
        /// <summary>
        /// Creates an Instance of the V5 Class.
        /// </summary>
        /// <param name="loggerFactory">Instance Of LoggerFactory, otherwise no logging is used, </param>
        /// <param name="rateLimiter">Instance Of RateLimiter, otherwise no ratelimiter is used.</param>
        /// <param name="settings">Instance of ApiSettings, otherwise defaults used, can be changed later</param>
        /// <param name="http">Instance of HttpCallHandler, otherwise default handler used</param>
        public V5(ILoggerFactory loggerFactory = null, IRateLimiter rateLimiter = null, IApiSettings settings = null, IHttpCallHandler http = null)
        {
            _logger     = loggerFactory?.CreateLogger <V5>();
            rateLimiter = rateLimiter ?? BypassLimiter.CreateLimiterBypassInstance();
            http        = http ?? new TwitchHttpClient(loggerFactory?.CreateLogger <TwitchHttpClient>());
            Settings    = settings ?? new ApiSettings();

            Badges      = new Badges(Settings, rateLimiter, http);
            Bits        = new Bits(Settings, rateLimiter, http);
            Channels    = new Channels(Settings, rateLimiter, http);
            Chat        = new Chat(Settings, rateLimiter, http);
            Clips       = new Clips(Settings, rateLimiter, http);
            Collections = new Collections(Settings, rateLimiter, http);
            Games       = new Games(Settings, rateLimiter, http);
            Ingests     = new Ingests(Settings, rateLimiter, http);
            Root        = new Root(Settings, rateLimiter, http);
            Search      = new Search(Settings, rateLimiter, http);
            Streams     = new Streams(Settings, rateLimiter, http);
            Teams       = new Teams(Settings, rateLimiter, http);
            Users       = new Users(Settings, rateLimiter, http);
            Videos      = new Videos(Settings, rateLimiter, http);
        }
Exemple #5
0
 public ThirdParty(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http)
 {
     UsernameChange    = new UsernameChangeApi(settings, rateLimiter, http);
     ModLookup         = new ModLookupApi(settings, rateLimiter, http);
     AuthorizationFlow = new AuthorizationFlowApi(settings, rateLimiter, http);
 }
Exemple #6
0
 public UsernameChangeApi(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
 public Undocumented(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #8
0
 public AuthorizationFlowApi(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #9
0
 public Entitlements(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #10
0
        /// <summary>
        /// Creates an Instance of the Helix Class.
        /// </summary>
        /// <param name="loggerFactory">Instance Of LoggerFactory, otherwise no logging is used, </param>
        /// <param name="rateLimiter">Instance Of RateLimiter, otherwise no ratelimiter is used.</param>
        /// <param name="settings">Instance of ApiSettings, otherwise defaults used, can be changed later</param>
        /// <param name="http">Instance of HttpCallHandler, otherwise default handler used</param>
        public Helix(ILoggerFactory loggerFactory = null, IRateLimiter rateLimiter = null, IApiSettings settings = null, IHttpCallHandler http = null)
        {
            _logger     = loggerFactory?.CreateLogger <Helix>();
            rateLimiter = rateLimiter ?? BypassLimiter.CreateLimiterBypassInstance();
            http        = http ?? new TwitchHttpClient(loggerFactory?.CreateLogger <TwitchHttpClient>());
            Settings    = settings ?? new ApiSettings();

            Analytics    = new Analytics(Settings, rateLimiter, http);
            Bits         = new Bits(Settings, rateLimiter, http);
            Clips        = new Clips(Settings, rateLimiter, http);
            Entitlements = new Entitlements(Settings, rateLimiter, http);
            Games        = new Games(Settings, rateLimiter, http);
            Streams      = new Streams(Settings, rateLimiter, http);
            Users        = new Users(Settings, rateLimiter, http);
            Videos       = new Videos(Settings, rateLimiter, http);
            Webhooks     = new Webhooks(Settings, rateLimiter, http);
        }
Exemple #11
0
        /// <summary>
        /// Creates an Instance of the Helix Class.
        /// </summary>
        /// <param name="loggerFactory">Instance Of LoggerFactory, otherwise no logging is used, </param>
        /// <param name="rateLimiter">Instance Of RateLimiter, otherwise no ratelimiter is used.</param>
        /// <param name="settings">Instance of ApiSettings, otherwise defaults used, can be changed later</param>
        /// <param name="http">Instance of HttpCallHandler, otherwise default handler used</param>
        public Helix(ILoggerFactory loggerFactory = null, IRateLimiter rateLimiter = null, IApiSettings settings = null, IHttpCallHandler http = null)
        {
            _logger     = loggerFactory?.CreateLogger <Helix>();
            rateLimiter = rateLimiter ?? BypassLimiter.CreateLimiterBypassInstance();
            http        = http ?? new TwitchHttpClient(loggerFactory?.CreateLogger <TwitchHttpClient>());
            Settings    = settings ?? new ApiSettings();

            Analytics     = new Analytics(Settings, rateLimiter, http);
            Ads           = new Ads(Settings, rateLimiter, http);
            Bits          = new Bits(Settings, rateLimiter, http);
            Chat          = new Chat(Settings, rateLimiter, http);
            Channels      = new Channels(Settings, rateLimiter, http);
            ChannelPoints = new ChannelPoints(Settings, rateLimiter, http);
            Clips         = new Clips(Settings, rateLimiter, http);
            Entitlements  = new Entitlements(Settings, rateLimiter, http);
            EventSub      = new EventSub(Settings, rateLimiter, http);
            Extensions    = new Extensions(Settings, rateLimiter, http);
            Games         = new Games(Settings, rateLimiter, http);
            Goals         = new Goals(settings, rateLimiter, http);
            HypeTrain     = new HypeTrain(Settings, rateLimiter, http);
            Moderation    = new Moderation(Settings, rateLimiter, http);
            Polls         = new Polls(Settings, rateLimiter, http);
            Predictions   = new Predictions(Settings, rateLimiter, http);
            Schedule      = new Schedule(Settings, rateLimiter, http);
            Search        = new Search(Settings, rateLimiter, http);
            Streams       = new Streams(Settings, rateLimiter, http);
            Subscriptions = new Subscriptions(Settings, rateLimiter, http);
            Tags          = new Tags(Settings, rateLimiter, http);
            Teams         = new Teams(Settings, rateLimiter, http);
            Users         = new Users(Settings, rateLimiter, http);
            Videos        = new Videos(Settings, rateLimiter, http);
        }
 public ChannelPoints(IApiSettings settings, IRateLimiter rateLimiter, IHttpCallHandler http) : base(settings, rateLimiter, http)
 {
 }
Exemple #13
0
        /// <summary>
        /// Creates an Instance of the TwitchAPI Class.
        /// </summary>
        /// <param name="loggerFactory">Instance Of LoggerFactory, otherwise no logging is used, </param>
        /// <param name="rateLimiter">Instance Of RateLimiter, otherwise no ratelimiter is used.</param>
        /// <param name="settings">Instance of ApiSettings, otherwise defaults used, can be changed later</param>
        /// <param name="http">Instance of HttpCallHandler, otherwise default handler used</param>
        public TwitchAPI(ILoggerFactory loggerFactory = null, IRateLimiter rateLimiter = null, IApiSettings settings = null, IHttpCallHandler http = null)
        {
            _logger     = loggerFactory?.CreateLogger <TwitchAPI>();
            rateLimiter = rateLimiter ?? BypassLimiter.CreateLimiterBypassInstance();
            http        = http ?? new TwitchHttpClient(loggerFactory?.CreateLogger <TwitchHttpClient>());
            Settings    = settings ?? new ApiSettings();

            Auth         = new Auth.Auth(Settings, rateLimiter, http);
            Helix        = new Helix.Helix(loggerFactory, rateLimiter, Settings, http);
            V5           = new V5.V5(loggerFactory, rateLimiter, Settings, http);
            ThirdParty   = new ThirdParty.ThirdParty(Settings, rateLimiter, http);
            Undocumented = new Undocumented(Settings, rateLimiter, http);

            Settings.PropertyChanged += SettingsPropertyChanged;
        }