2016-05-16 15:28:23 +02:00
|
|
|
(function () {
|
|
|
|
'use strict';
|
|
|
|
|
2016-11-06 15:41:28 +01:00
|
|
|
angular.module('ariaNg').factory('aria2HttpRpcService', ['$http', 'ariaNgSettingService', 'ariaNgLogService', function ($http, ariaNgSettingService, ariaNgLogService) {
|
2016-05-16 18:59:27 +02:00
|
|
|
var rpcUrl = ariaNgSettingService.getJsonRpcUrl();
|
2016-05-16 15:28:23 +02:00
|
|
|
|
|
|
|
return {
|
|
|
|
request: function (context) {
|
|
|
|
if (!context) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
var requestContext = {
|
|
|
|
url: rpcUrl,
|
|
|
|
method: 'POST',
|
|
|
|
data: context.requestBody
|
|
|
|
};
|
|
|
|
|
2016-12-10 18:01:28 +01:00
|
|
|
ariaNgLogService.debug('[aria2HttpRpcService.request] request start', requestContext);
|
2016-11-06 15:41:28 +01:00
|
|
|
|
2016-08-28 15:47:29 +02:00
|
|
|
return $http(requestContext).success(function (data) {
|
2016-12-10 18:01:28 +01:00
|
|
|
ariaNgLogService.debug('[aria2HttpRpcService.request] response success', data);
|
2016-11-06 15:41:28 +01:00
|
|
|
|
2016-05-31 18:01:16 +02:00
|
|
|
if (!data) {
|
2016-05-16 15:28:23 +02:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2016-06-10 13:23:16 +02:00
|
|
|
if (context.successCallback) {
|
|
|
|
context.successCallback(data.id, data.result);
|
2016-05-16 15:28:23 +02:00
|
|
|
}
|
2016-08-28 15:47:29 +02:00
|
|
|
}).error(function (data) {
|
2016-12-10 18:01:28 +01:00
|
|
|
ariaNgLogService.debug('[aria2HttpRpcService.request] response error', data);
|
2016-11-06 15:41:28 +01:00
|
|
|
|
2016-06-02 18:16:27 +02:00
|
|
|
if (!data) {
|
2016-08-28 15:47:29 +02:00
|
|
|
data = {
|
|
|
|
id: '-1',
|
|
|
|
error: {
|
|
|
|
// code: '-1',
|
|
|
|
// message: 'Unknown Error',
|
|
|
|
innerError: true
|
|
|
|
}
|
|
|
|
};
|
2016-06-02 18:16:27 +02:00
|
|
|
}
|
|
|
|
|
2016-06-04 11:08:42 +02:00
|
|
|
if (context.errorCallback) {
|
2016-06-10 13:23:16 +02:00
|
|
|
context.errorCallback(data.id, data.error);
|
2016-06-02 18:16:27 +02:00
|
|
|
}
|
2016-05-16 15:28:23 +02:00
|
|
|
});
|
2016-06-28 18:18:17 +02:00
|
|
|
},
|
|
|
|
on: function (eventName, callback) {
|
|
|
|
//Not implement
|
2016-05-16 15:28:23 +02:00
|
|
|
}
|
|
|
|
};
|
|
|
|
}]);
|
2016-08-01 16:49:16 +02:00
|
|
|
}());
|