http module refactored

This commit is contained in:
Vladimir Enchev
2014-05-16 10:18:25 +03:00
parent 4faced08aa
commit 2b47aebbe8
7 changed files with 22 additions and 48 deletions

View File

@ -147,7 +147,6 @@
<TypeScriptCompile Include="utils\module-merge.ts" />
<TypeScriptCompile Include="utils\utils_android.ts" />
<TypeScriptCompile Include="utils\utils_ios.ts" />
<TypeScriptCompile Include="http\http-request.d.ts" />
</ItemGroup>
<ItemGroup>
<TypeScriptCompile Include="http\index.ts" />
@ -180,14 +179,14 @@
<TypeScriptCompile Include="file-system\file-system-access.ios.ts">
<DependentUpon>file-system-access.d.ts</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="http\http-request.android.ts">
<DependentUpon>http-request.d.ts</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="http\http-request.ios.ts">
<DependentUpon>http-request.d.ts</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="application\application-common.ts" />
<TypeScriptCompile Include="http\http-common.ts" />
<TypeScriptCompile Include="http\http.android.ts">
<DependentUpon>http.d.ts</DependentUpon>
</TypeScriptCompile>
<TypeScriptCompile Include="http\http.ios.ts">
<DependentUpon>http.d.ts</DependentUpon>
</TypeScriptCompile>
<Content Include="image-source\Readme.md" />
<TypeScriptCompile Include="http\http.d.ts" />
<TypeScriptCompile Include="local-settings\index.ts" />

View File

@ -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<string> {
var d = promises.defer<string>();

View File

@ -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<HttpResponse>;
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;
}

View File

@ -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<http.HttpResponse> {
var d = promises.defer<http.HttpResponse>();

7
http/http.d.ts vendored
View File

@ -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<string>
export declare function getString(options: request.HttpRequestOptions): promises.Promise<string>
export declare function getString(options: HttpRequestOptions): promises.Promise<string>
export declare function getJSON<T>(url: string): promises.Promise<T>
export declare function getJSON<T>(options: request.HttpRequestOptions): promises.Promise<T>
export declare function getJSON<T>(options: HttpRequestOptions): promises.Promise<T>
export declare function getImage(url: string): promises.Promise<image.ImageSource>
export declare function getImage(options: request.HttpRequestOptions): promises.Promise<image.ImageSource>
export declare function getImage(options: HttpRequestOptions): promises.Promise<image.ImageSource>
export declare function request(options: HttpRequestOptions): promises.Promise<HttpResponse>;

View File

@ -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<http.HttpResponse> {
var d = promises.defer<http.HttpResponse>();

View File

@ -1,2 +1,2 @@
declare var module, require;
module.exports = require("http/http-common");
module.exports = require("http/http");