Skip to content

Commit 5f06ff6

Browse files
committed
Added responseHeaders to json output of the returned object.
1 parent e488786 commit 5f06ff6

31 files changed

+1934
-22
lines changed

rosette/api.py

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,15 @@ def json(self):
6767
return self._json
6868

6969

70-
def _my_loads(obj):
70+
def _my_loads(obj, response_headers):
7171
if _IsPy3:
72-
return json.loads(obj.decode("utf-8")) # if py3, need chars.
72+
d1 = json.loads(obj.decode("utf-8")).copy()
73+
d1.update(response_headers)
74+
return d1 # if py3, need chars.
7375
else:
74-
return json.loads(obj)
76+
d2 = json.loads(obj).copy()
77+
d2.update(response_headers)
78+
return d2
7579

7680

7781
def _retrying_request(op, url, data, headers):
@@ -102,6 +106,7 @@ def _retrying_request(op, url, data, headers):
102106
message = None
103107
code = "unknownError"
104108
rdata = None
109+
response_headers = {}
105110
for i in range(N_RETRIES + 1):
106111
# Try to connect with the Rosette API server
107112
# 500 errors will store a message and code
@@ -110,13 +115,16 @@ def _retrying_request(op, url, data, headers):
110115
response = HTTP_CONNECTION.getresponse()
111116
status = response.status
112117
rdata = response.read()
118+
request_id = response.getheader("x-rosetteapi-request-id")
119+
processed_language = response.getheader("x-rosetteapi-processed-language")
120+
response_headers["responseHeaders"] = (dict(response.getheaders()))
113121
if status < 500:
114122
if not REUSE_CONNECTION:
115123
HTTP_CONNECTION.close()
116-
return rdata, status
124+
return rdata, status, response_headers
117125
if rdata is not None:
118126
try:
119-
the_json = _my_loads(rdata)
127+
the_json = _my_loads(rdata, response_headers)
120128
if "message" in the_json:
121129
message = the_json["message"]
122130
if "code" in the_json:
@@ -160,8 +168,8 @@ def _retrying_request(op, url, data, headers):
160168

161169

162170
def _get_http(url, headers):
163-
(rdata, status) = _retrying_request("GET", url, None, headers)
164-
return _ReturnObject(_my_loads(rdata), status)
171+
(rdata, status, response_headers) = _retrying_request("GET", url, None, headers)
172+
return _ReturnObject(_my_loads(rdata, response_headers), status)
165173

166174

167175
def _post_http(url, data, headers):
@@ -170,13 +178,13 @@ def _post_http(url, data, headers):
170178
else:
171179
json_data = json.dumps(data)
172180

173-
(rdata, status) = _retrying_request("POST", url, json_data, headers)
181+
(rdata, status, response_headers) = _retrying_request("POST", url, json_data, headers)
174182

175183
if len(rdata) > 3 and rdata[0:3] == _GZIP_SIGNATURE:
176184
buf = BytesIO(rdata)
177185
rdata = gzip.GzipFile(fileobj=buf).read()
178186

179-
return _ReturnObject(_my_loads(rdata), status)
187+
return _ReturnObject(_my_loads(rdata, response_headers), status)
180188

181189

182190
def add_query(orig_url, key, value):

tests/mock-data/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# mock-data
2+
3+
This is the mock data that is used for unit testing of the Rosette API bindings. It contains a variety of request, response and status files that are used by each binding's unit testing framework to mock the server interactions.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"content": "الخميس 5/2/1431 هـ - الموافق 21/1/2010 م (آخر تحديث) الساعة 10:01 (مكة المكرمة)، 7:01 (غرينتش)\n\nناتو يفكر بمسؤول مدني لأفغانستان\n\nيخطط حلف شمال الأطلسي (ناتو) لتعيين مسؤول مدني كبير في أفغانستان، وسط دعوات لتحسين التنسيق السياسي والتنموي في البلاد وفق ما نقلته صحيفة وول ستريت. وقالت الصحيفة إن السفير البريطاني في كابل في مقدمة المرشحين لهذا المنصب والذي من المحتمل أن يعلن بالتزامن مع مؤتمر دولي عن مستقبل أفغانستان المقرر عقده في لندن في 28 يناير/كانون الثاني المقبل.\n وأضافت الصحيفة -في تقرير لها من كابل- أن المسؤول الجديد سيترأس دعامة مدنية للتحالف الذي تقوده الولايات المتحدة لإدارة التمويل والمساعدات للولايات الأفغانية لتحاشي المؤسسات الأفغانية الفاسدة\". وكان الأمين العام للأمم المتحدة بان كي مون دعا هذا الشهر لتعيين مسؤول مدني رفيع ضمن قوة المساعدة الدولية لإرساء الأمن في أفغانستان (إيساف) التي يقودها حلف الأطلسي للمساعدة في تنسيق الجهود السياسية والتنموية في الحرب التي دخلت عامها التاسع. وأضاف أن تعيين هذا المسؤول سيتيح تحسين التنسيق بين العمل السياسي والتنموي وخصوصا عبر فرق إعادة البناء في الولايات الأفغانية. وقالت جورنال ستريت إن المنصب الجديد سيكون نظيرا للأميركي ستانلي ماكريستال قائد القوات الأميركية وقوات حلف الأطلسي في أفغانستان. ويتوقع وصول أربعين ألف جندي آخرين لأفغانستان في الأشهر القليلة المقبلة في إطار إستراتيجية لمجابهة العمليات المسلحة لحركة طالبان. وأشارت الصحيفة إلى أن خطة تعيين السفير البريطاني مارك سيدويل وجدت تأييد الولايات المتحدة ومن المرجح أن يصادق عليها باقي الحلفاء.",
3+
"language": "ara",
4+
"unit": "doc"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"content": "Samsung Can Sell Its Tablet In The U.S. Market\n\n\nThe war between Samsung Electronics and Apple seems to be never ending. The companies have engaged in an international warfare, across continents, with more than 20 cases in 10 countries. The latest news in the Samsung vs. Apple conflict comes from U.S. where a judge decided that Samsung can sell its tablet in the U.S. market.\n\nIn United States, Apple initiated a legal action against Samsung in April, claiming that the South Korean smartphones and tablets “slavishly” copy the iPhone and the iPad. As a result, Apple requested that Samsung will be prohibited from selling the gadgets in the U.S. market. The much expected ruling came late on Friday, as U.S. District Judge Lucy Koh denied Apple’s request for a preliminary injuction against Samsung.\n\nU.S. District Judge Lucy Koh said that “It is not clear than an injuction on Samsung’s accused devices would prevent Apple from being irreparably harmed”. As a result, Koh rejected Apple’s request to bid sales of three Samsung smartphones models and the Samsung Tab 10.1. In the third quarter, Samsung had 23.8 percent of the global smartphone market, nine points higher than Apple.\n\nThe U.S. judge wrote that “Apple has established a likelihood of success on the merits at trial” regarding some of Samsung’s smartphones. Apple would likely prove Samsung infringed one of its tablet patents, but it did not show that it was likely to overcome Samsung’s challenges to the patent’s validity.\n\nAlthough this might be a minor victory for Samsung, as Apple still has high changes of winning the overall lawsuit, Koh’s decision makes it possible for the South Korean company to start Christmas sales.\n\nAnalysts say that global tablet sales are expected to boost to more than 50 million this year, with Apple still the leader of the market. The Silicon Valley based company sold 11.12 million units during the September quarter. So far, Apple sold more than 30 million iPads worldwide.\n\nLast week, a judge in Australia ruled in favor of Apple by extending a ban on Samsung’s iPad sales within the country. Australia is a key market for Samsung Galaxy Tablet and two weeks of banned sales isn’t much, but it can get urgent if Samsung won’t start selling the gadget before Christmas.\n\n\n\nhttp://newsinabox.net/2202/samsung-can-sell-its-tablet-in-the-u-s-market.html\n2011.12.05",
3+
"language": "eng",
4+
"unit": "doc"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"content": "Les Etats-Unis face au défi persistant du chômage\n\nUn chômeur américain sur deux dit souffrir d'anxiété ou de dépression et a dû emprunter de l'argent à des amis. Selon une enquête publiée, lundi 18 janvier, par le Census Bureau (équivalent de l'Insee), en deux ans, le nombre de couples au chômage avec enfants mineurs a doublé. Près de 40 % des ces parents notent des \"modifications de comportement\" chez leurs enfants qu'ils attribuent à leur perte du travail. La moitié évoquent une \"transformation fondamentale\" de leur existence - le premier des changements consistant en la perte presque instantanée de toute couverture sociale.\nDurant tout le mois de décembre, à l'approche de l'anniversaire de la prise de fonctions du président Barack Obama, le 20 janvier 2009, les reportages et les enquêtes sur les conséquences de ces destructions d'emploi sont devenus une préoccupation obsédante dans les médias. \"Je me sens comme la lie de la terre\", disait récemment un chômeur à une heure de grande écoute. Alors, l'Amérique découvre sur les écrans tous ces visages ravagés qui évoquent leur \"honte\" et s'interroge : 10 % de chômage, comment en est-on arrivé là ?\n\nPour beaucoup d'analystes, c'est pour avoir négligé l'impact du chômage alors que se profilaient des signes de reprise économique (et surtout financière) que la Maison Blanche et le Parti démocrate se trouvent confrontés à une forte désaffection de l'opinion à dix mois des élections à mi-mandat de novembre.\n\nAlors que le thème de l'emploi envahissait le champ des préoccupations, M. Obama a continué de donner la priorité à la réforme de la santé, à la lutte contre le réchauffement climatique ou la régulation financière. Tous sujets essentiels mais \"bien moins palpables, dans une période de crise aiguë, que le chômage, qui arase tout\", note Dean Baker, codirecteur du Centre de recherches sur les politiques économiques, un groupe de réflexion démocrate à Washington.\n\nUne étude du département du travail, publiée le 8 janvier, montre une différence essentielle entre l'impact de la crise actuelle sur l'emploi et les précédentes récessions. Lors de celles de 1974-1976 et de 1990-1993, le chômage était moins important, tant en chiffres absolus qu'en durée. Cette comparaison reste valide pour la récession de 1981-1983, qui vit le président républicain Ronald Reagan, un an après son élection, enregistrer son plus bas soutien dans l'opinion.\n\nPour résumer le désastre actuel : les Etats-Unis ont perdu depuis deux ans 5,24 % de leur emploi, alors que la chute n'avait été que de 1,4 % à 3 %, au pire, lors des récessions précédentes. Entre chômage total et partiel, la crise touche le travail de près d' un Américain sur cinq. N'ayant cessé de répéter que son pays affrontait \"la pire crise depuis la Grande Dépression\" des années 1930, Barack Obama avait donné le sentiment d'être très conscient du problème. Or là est le paradoxe : une fois élu, le président est apparu comme un dirigeant qui a fait un diagnostic correct mais n'en a tiré aucune conclusion.\n\nL'Amérique avait perdu 3 078 000 chômeurs lors de la dernière année du mandat de George Bush ; elle en a perdu 4 228 000 en un an de présidence Obama ! Le 10 janvier, invoquant \"l'urgence\", Christina Romer, présidente du conseil économique de M. Obama, a appelé à vite injecter 75 milliards de dollars supplémentaires pour régénérer l'emploi. Nul ne doute que M. Obama privilégiera cette nécessité en 2010.\n\nComment remédier au problème ? La plupart des analystes, constatant le \"découplage\" entre la reprise économique et celle de l'emploi, sont circonspects. Chef économiste de Goldman Sachs, Jan Hatzius, dans un texte intitulé \"10 questions pour 2010\", s'attend \"à un solde positif de 100 000 emplois par mois dès le second trimestre, insuffisant pour modifier significativement le taux de chômage\". Compte tenu de leur évolution démographique, les Etats-Unis doivent en effet créer 100 000 emplois mensuels pour juste stabiliser l'emploi.\n\nDean Baker explique encore que la marge de manoeuvre présidentielle est restreinte : \"Obama a raté le coche en limitant son plan de relance. Maintenant, il lui est politiquement impossible de retourner devant le Congrès pour l'augmenter. Les conséquences sont désastreuses. Même s'il lui reste 200 milliards de dollars à dépenser (sur 787 milliards), l'essentiel de l'impact du plan est passé.\"\n\nLe pire, selon lui, est que le président a fait son choix en toute connaissance de cause, pour \"privilégier la politique\". C'est-à-dire un compromis avec certains républicains qu'il n'a jamais obtenu. Pour M. Baker, cette quête du \"consensus\" a entraîné son parti dans l'état où il est. Et de conclure : \"Les républicains ont une stratégie efficace : ils bloquent tout changement pour dénoncer ensuite un président qui n'agit pas. Il est temps que celui-ci dénonce ce comportement de sabotage de l'économie nationale.\"\n\nMercredi, M. Obama a dit \"regretter d'avoir perdu le sens du contact direct avec les Américains sur leurs valeurs essentielles\". Son principal conseiller, David Axelrod, a évoqué \"les salaires bloqués, les emplois perdus\". Pour autant, changera-t-il d'attitude vis-à-vis du Congrès ? Peu y croient.\n\nLa Chambre a voté en décembre 2009 une loi sur la création d'emplois de 174 milliards de dollars non encore adoptée au Sénat. Les républicains assimilent désormais toute dépense publique à une gabegie. Harry Reid, le leader des démocrates au Sénat, négocierait déjà avec eux. Certains imaginent un abandon, pourtant peu probable, du plan d'assurance santé afin de parvenir à un soutien républicain aux embauches dans les PME. D'autres envisagent d'affecter à l'emploi 75 milliards de dollars pris sur le plan de sauvetage de la finance américaine (dit TARP). Plus encore que M. Obama, c'est son parti, tétanisé par la perspective d'une défaite électorale dans dix mois, qui a besoin de mesures rapides.\n\n\n\nhttp://www.lemonde.fr/ameriques/article/2010/01/21/les-etats-unis-face-au-defi-persistant-du-chomage_1294839_3222.html#xtor=RSS-3210\n2010.01.21",
3+
"language": "fra",
4+
"unit": "doc"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"content": "ケネディはマサチューセッツ州ブルックラインで、アイルランド系移民の子孫で投資家のジョセフ・P・ケネディ・シニアの次男として生まれた。名前は母方の祖父でボストン市長も勤めたジョン・F・フィッツジェラルドにちなむ。13歳のときにチョート・スクール(コネチカット州ウォリングフォードの寄宿学校)に入学し、その後1935年にイギリスのロンドン・スクール・オブ・エコノミクスに1年間留学した。帰国後ハーバード大学に入学を認められていたものの、親しい友人が進学を決めたプリンストン大学に入学することにした。しかし、クリスマス休暇中にかかった黄疸のため退学している。\n\n1936年の秋にはハーバード大学に転校したが、在学中にフットボールの試合で背中をひどく痛めた。在学中ヨーロッパへ2度旅行しており、2度目の旅行では父親が大使を務めていたイギリスを訪れている。1940年6月、1938年のミュンヘン協定におけるイギリス外交政策の分析についての卒論『イギリスはなぜ眠ったか』を書き、ハーバードを優等で卒業した。\n\n第二次世界大戦後、彼は戦死した兄ジョセフ・P・ケネディ・ジュニアに代わり政界に入った。1946年にジェームズ・M・カーレイがボストン市長になるために民主党下院議員を辞職した時、ケネディはその議席をかけた補欠選挙に立候補した。父のジョセフが実業家であったこともあり、政治資金には困らなかったので、実現不可能な公約をする必要はなく理想主義を語ることができた。長く精力的なキャンペーンの末に、大差で共和党候補に勝ち、29歳で下院議員となった。当初は父のジョセフとコネがあった同じアイルランド系のジョセフ・マッカーシー上院議員の赤狩りに協力していた。リベラル派のエレノア・ルーズヴェルトはそのことを忘れず、後々までケネディを嫌っていた。下院3期目の1952年には上院議員選挙に出馬し、約70,000票の大差で共和党候補ヘンリー・カボット・ロッジ・ジュニアを破った。以後の彼の支持基盤は北部都市圏のリベラル派インテリ層となる。\n\nケネディは1953年9月12日にフランス系移民の名門の娘であるジャクリーン・リー・ブーヴィエと結婚した。彼はその後2年間に多数回の脊柱の手術を受け上院本会議を長期にわたって欠席したが、手術から回復するまでの間、8名の上院議員の政治的に勇敢であった行為についての本『勇気ある人々』を出版した。この本はその後ピューリツァー賞を受賞した。賞金は黒人の通う学校へ寄付したと言われている。\n\n\n\nhttp://ja.wikipedia.org/wiki/%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%BBF%E3%83%BB%E3%82%B1%E3%83%8D%E3%83%87%E3%82%A3\n2010.01.26",
3+
"language": "jpn",
4+
"unit": "doc"
5+
}

0 commit comments

Comments
 (0)