From 1002f33d017661e3b3b7e5746e3cd5e48ce8a4d4 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Tue, 5 Jan 2016 01:13:48 +0100 Subject: [PATCH] Split http helpers into file. --- extension/background/http.ts | 67 ++++++++++++++++++++++++++++++++++ extension/background/wallet.js | 35 ------------------ extension/background/wallet.ts | 51 -------------------------- extension/tsconfig.json | 1 + 4 files changed, 68 insertions(+), 86 deletions(-) create mode 100644 extension/background/http.ts diff --git a/extension/background/http.ts b/extension/background/http.ts new file mode 100644 index 000000000..da0360dfe --- /dev/null +++ b/extension/background/http.ts @@ -0,0 +1,67 @@ +/* + This file is part of TALER + (C) 2016 GNUnet e.V. + + TALER is free software; you can redistribute it and/or modify it under the + terms of the GNU General Public License as published by the Free Software + Foundation; either version 3, or (at your option) any later version. + + TALER is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with + TALER; see the file COPYING. If not, If not, see + */ + +interface HttpResponse { + status: number; + responseText: string; +} + + +function httpReq(method: string, + url: string|uri.URI, + options?: any): Promise { + let urlString: string; + if (url instanceof URI) { + urlString = url.href(); + } else if (typeof url === "string") { + urlString = url; + } + + return new Promise((resolve, reject) => { + let myRequest = new XMLHttpRequest(); + myRequest.open(method, urlString); + if (options && options.req) { + myRequest.send(options.req); + } + myRequest.addEventListener("readystatechange", (e) => { + if (myRequest.readyState == XMLHttpRequest.DONE) { + let resp = { + status: myRequest.status, + responseText: myRequest.responseText + }; + resolve(resp); + } + }); + }); +} + + + +function httpGet(url: string|uri.URI) { + return httpReq("get", url); +} + + +function httpPost(url: string|uri.URI, body) { + return httpReq("put", url, {req: JSON.stringify(body)}); +} + + +class RequestException { + constructor(detail) { + + } +} \ No newline at end of file diff --git a/extension/background/wallet.js b/extension/background/wallet.js index 268ca32ed..66281aaf0 100644 --- a/extension/background/wallet.js +++ b/extension/background/wallet.js @@ -452,41 +452,6 @@ function updateReserve(db, reservePub, mint) { }); }); } -function httpReq(method, url, options) { - let urlString; - if (url instanceof URI) { - urlString = url.href(); - } - else if (typeof url === "string") { - urlString = url; - } - return new Promise((resolve, reject) => { - let myRequest = new XMLHttpRequest(); - myRequest.open(method, urlString); - if (options && options.req) { - myRequest.send(options.req); - } - myRequest.addEventListener("readystatechange", (e) => { - if (myRequest.readyState == XMLHttpRequest.DONE) { - let resp = { - status: myRequest.status, - responseText: myRequest.responseText - }; - resolve(resp); - } - }); - }); -} -function httpGet(url) { - return httpReq("get", url); -} -function httpPost(url, body) { - return httpReq("put", url, { req: JSON.stringify(body) }); -} -class RequestException { - constructor(detail) { - } -} /** * Update or add mint DB entry by fetching the /keys information. * Optionally link the reserve entry to the new or existing diff --git a/extension/background/wallet.ts b/extension/background/wallet.ts index c6152253e..bc0a1a0f0 100644 --- a/extension/background/wallet.ts +++ b/extension/background/wallet.ts @@ -604,57 +604,6 @@ function updateReserve(db: IDBDatabase, } -interface HttpResponse { - status: number; - responseText: string; -} - - -function httpReq(method: string, - url: string|uri.URI, - options?: any): Promise { - let urlString: string; - if (url instanceof URI) { - urlString = url.href(); - } else if (typeof url === "string") { - urlString = url; - } - - return new Promise((resolve, reject) => { - let myRequest = new XMLHttpRequest(); - myRequest.open(method, urlString); - if (options && options.req) { - myRequest.send(options.req); - } - myRequest.addEventListener("readystatechange", (e) => { - if (myRequest.readyState == XMLHttpRequest.DONE) { - let resp = { - status: myRequest.status, - responseText: myRequest.responseText - }; - resolve(resp); - } - }); - }); -} - - -function httpGet(url: string|uri.URI) { - return httpReq("get", url); -} - - -function httpPost(url: string|uri.URI, body) { - return httpReq("put", url, {req: JSON.stringify(body)}); -} - - -class RequestException { - constructor(detail) { - - } -} - /** * Update or add mint DB entry by fetching the /keys information. * Optionally link the reserve entry to the new or existing diff --git a/extension/tsconfig.json b/extension/tsconfig.json index 43b814f9d..565924b43 100644 --- a/extension/tsconfig.json +++ b/extension/tsconfig.json @@ -8,6 +8,7 @@ "background/emscriptif.ts", "background/db.ts", "background/query.ts", + "background/http.ts", "lib/util.ts", "lib/polyfill-react.ts", "content_scripts/notify.ts",