Skip to content

Commit ef28538

Browse files
committed
added custom headers capability
1 parent a0b0599 commit ef28538

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

examples/language.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,15 @@ def run(key, altUrl='https://api.rosette.com/rest/v1/'):
1616
api = API(user_key=key, service_url=altUrl)
1717

1818
language_data = "Por favor Señorita, says the man."
19+
app_header = []
20+
app_header.append("X-RosetteAPI-App")
21+
app_header.append("python-app")
22+
headers = []
23+
headers.append(app_header)
1924
params = DocumentParameters()
2025

2126
params["content"] = language_data
27+
params["customHeaders"] = headers
2228
return api.language(params)
2329

2430

rosette/api.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ class DocumentParameters(_DocumentParamSetBase):
186186
def __init__(self):
187187
"""Create a L{DocumentParameters} object."""
188188
_DocumentParamSetBase.__init__(
189-
self, ("content", "contentUri", "language", "genre"))
189+
self, ("content", "contentUri", "language", "genre", "customHeaders"))
190190
self.file_name = ""
191191
self.useMultipart = False
192192

@@ -268,7 +268,8 @@ def __init__(self):
268268
"sourceScript",
269269
"targetScript",
270270
"targetScheme",
271-
"genre"))
271+
"genre",
272+
"customHeaders"))
272273

273274
def validate(self):
274275
"""Internal. Do not use."""
@@ -301,7 +302,7 @@ class NameSimilarityParameters(_DocumentParamSetBase):
301302

302303
def __init__(self):
303304
self.useMultipart = False
304-
_DocumentParamSetBase.__init__(self, ("name1", "name2"))
305+
_DocumentParamSetBase.__init__(self, ("name1", "name2", "customHeaders"))
305306

306307
def validate(self):
307308
"""Internal. Do not use."""
@@ -426,6 +427,12 @@ def call(self, parameters):
426427
params_to_serialize = parameters.serialize(self.api.options)
427428
headers = {}
428429
if self.user_key is not None:
430+
431+
if parameters["customHeaders"] is not None:
432+
for h in parameters["customHeaders"]:
433+
headers[h[0]] = h[1]
434+
parameters["customHeaders"] = None
435+
429436
headers["X-RosetteAPI-Key"] = self.user_key
430437
headers["X-RosetteAPI-Binding"] = "python"
431438
headers["X-RosetteAPI-Binding-Version"] = _BINDING_VERSION

0 commit comments

Comments
 (0)