aboutsummaryrefslogtreecommitdiff
path: root/pandora/clientbuilder.py
diff options
context:
space:
mode:
Diffstat (limited to 'pandora/clientbuilder.py')
-rw-r--r--pandora/clientbuilder.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/pandora/clientbuilder.py b/pandora/clientbuilder.py
index 2b11ffb..1eb3811 100644
--- a/pandora/clientbuilder.py
+++ b/pandora/clientbuilder.py
@@ -8,6 +8,7 @@ import os.path
8 8
9from configparser import ConfigParser 9from configparser import ConfigParser
10from .client import APIClient 10from .client import APIClient
11from .ratelimit import WarningTokenBucket
11from .transport import Encryptor, APITransport, DEFAULT_API_HOST 12from .transport import Encryptor, APITransport, DEFAULT_API_HOST
12 13
13 14
@@ -94,8 +95,9 @@ class APIClientBuilder:
94 95
95 DEFAULT_CLIENT_CLASS = APIClient 96 DEFAULT_CLIENT_CLASS = APIClient
96 97
97 def __init__(self, client_class=None): 98 def __init__(self, client_class=None, rate_limiter=WarningTokenBucket):
98 self.client_class = client_class or self.DEFAULT_CLIENT_CLASS 99 self.client_class = client_class or self.DEFAULT_CLIENT_CLASS
100 self.rate_limiter = rate_limiter
99 101
100 def build_from_settings_dict(self, settings): 102 def build_from_settings_dict(self, settings):
101 enc = Encryptor(settings["DECRYPTION_KEY"], settings["ENCRYPTION_KEY"]) 103 enc = Encryptor(settings["DECRYPTION_KEY"], settings["ENCRYPTION_KEY"])
@@ -116,6 +118,7 @@ class APIClientBuilder:
116 settings["PARTNER_PASSWORD"], 118 settings["PARTNER_PASSWORD"],
117 settings["DEVICE"], 119 settings["DEVICE"],
118 quality, 120 quality,
121 self.rate_limiter,
119 ) 122 )
120 123
121 124