From 2b47aebbe86387fdcbdea30409e74676e2c44e62 Mon Sep 17 00:00:00 2001 From: Vladimir Enchev Date: Fri, 16 May 2014 10:18:25 +0300 Subject: [PATCH] http module refactored --- BCL.csproj | 13 ++++----- http/http-common.ts | 6 ++-- http/http-request.d.ts | 28 ------------------- ...ttp-request.android.ts => http.android.ts} | 7 +++-- http/http.d.ts | 7 ++--- http/{http-request.ios.ts => http.ios.ts} | 7 +++-- http/index.ts | 2 +- 7 files changed, 22 insertions(+), 48 deletions(-) delete mode 100644 http/http-request.d.ts rename http/{http-request.android.ts => http.android.ts} (95%) rename http/{http-request.ios.ts => http.ios.ts} (93%) diff --git a/BCL.csproj b/BCL.csproj index 836dfc5b4..adc163cd7 100644 --- a/BCL.csproj +++ b/BCL.csproj @@ -147,7 +147,6 @@ - @@ -180,14 +179,14 @@ file-system-access.d.ts - - http-request.d.ts - - - http-request.d.ts - + + http.d.ts + + + http.d.ts + diff --git a/http/http-common.ts b/http/http-common.ts index b30a83701..555dd4375 100644 --- a/http/http-common.ts +++ b/http/http-common.ts @@ -1,13 +1,11 @@ import image = require("image-source/image-source"); import promises = require("promises/promises"); -import http = require("http/http-request"); - -// merge request -export var request = http.request; +import http = require("http/http"); /** * Gets string from url. */ + export function getString(arg: any): promises.Promise { var d = promises.defer(); diff --git a/http/http-request.d.ts b/http/http-request.d.ts deleted file mode 100644 index ab7233df9..000000000 --- a/http/http-request.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/** - * The http client interface. - */ -import image_module = require("image-source/image-source"); -import promises = require("promises/promises"); - -export declare function request(options: HttpRequestOptions): promises.Promise; - -export interface HttpRequestOptions { - url: string; - method: string; - headers?: any; - content?: any; - timeout?: number; -} - -export interface HttpResponse { - statusCode: number; - headers: any; - content?: HttpContent; -} - -export interface HttpContent { - raw: any; - toString: () => string; - toJSON: () => any; - toImage: () => image_module.ImageSource; -} \ No newline at end of file diff --git a/http/http-request.android.ts b/http/http.android.ts similarity index 95% rename from http/http-request.android.ts rename to http/http.android.ts index 1be15e2bc..862bce5ba 100644 --- a/http/http-request.android.ts +++ b/http/http.android.ts @@ -1,8 +1,11 @@ /** - * Android specific http client implementation. + * Android specific http request implementation. */ import promises = require("promises/promises"); -import http = require("http/http-request"); +import http = require("http/http"); + +declare var exports; +require("utils/module-merge").merge(require("http/http-common"), exports); export function request(options: http.HttpRequestOptions): promises.Promise { var d = promises.defer(); diff --git a/http/http.d.ts b/http/http.d.ts index 5a453cc4f..d9fc397e3 100644 --- a/http/http.d.ts +++ b/http/http.d.ts @@ -1,15 +1,14 @@ import image = require("image-source/image-source"); import promises = require("promises/promises"); -import request = require("http/http-request"); export declare function getString(url: string): promises.Promise -export declare function getString(options: request.HttpRequestOptions): promises.Promise +export declare function getString(options: HttpRequestOptions): promises.Promise export declare function getJSON(url: string): promises.Promise -export declare function getJSON(options: request.HttpRequestOptions): promises.Promise +export declare function getJSON(options: HttpRequestOptions): promises.Promise export declare function getImage(url: string): promises.Promise -export declare function getImage(options: request.HttpRequestOptions): promises.Promise +export declare function getImage(options: HttpRequestOptions): promises.Promise export declare function request(options: HttpRequestOptions): promises.Promise; diff --git a/http/http-request.ios.ts b/http/http.ios.ts similarity index 93% rename from http/http-request.ios.ts rename to http/http.ios.ts index 1cc6bef16..3f5def2dc 100644 --- a/http/http-request.ios.ts +++ b/http/http.ios.ts @@ -1,8 +1,11 @@ /** - * iOS specific http client implementation. + * iOS specific http request implementation. */ import promises = require("promises/promises"); -import http = require("http/http-request"); +import http = require("http/http"); + +declare var exports; +require("utils/module-merge").merge(require("http/http-common"), exports); export function request(options: http.HttpRequestOptions): promises.Promise { var d = promises.defer(); diff --git a/http/index.ts b/http/index.ts index 5b9df928d..3c912a54c 100644 --- a/http/index.ts +++ b/http/index.ts @@ -1,2 +1,2 @@ declare var module, require; -module.exports = require("http/http-common"); \ No newline at end of file +module.exports = require("http/http"); \ No newline at end of file