/**
* @fileoverview This file is generated by BoosterClientGenerator, do not edit.
* If this file needs to change consider updating the exporter
* code and re-run the export.
*
* @author anders.rejdebrant@spark-vision.com (Anders Rejdebrant)
*/
goog.provide('spv.ds.ipprot.IpadClient');
goog.require('goog.events.EventTarget');
goog.require('goog.json');
goog.require('goog.net.Jsonp');
goog.require('goog.net.XhrIo');
goog.require('goog.Uri.QueryData');
goog.require('spv.ds.ipprot.boosterconfig.FreshConfig');
goog.require('spv.ds.ipprot.boosterconfig.Result');
goog.require('spv.ds.ipprot.boostercshw.Bump');
goog.require('spv.ds.ipprot.boostercshw.ConfigBop');
goog.require('spv.ds.ipprot.boostercshw.OutBop');
goog.require('spv.ds.ipprot.boostercshw.OutBopUpdate');
goog.require('spv.ds.ipprot.boostercshw.OutResolvers');
goog.require('spv.ds.ipprot.boostercshw.PdfGenerationResult');
goog.require('spv.ds.ipprot.boostercshw.SavedUser');
goog.require('spv.ds.ipprot.boostermiddle.Category');
goog.require('spv.ds.ipprot.boostermiddle.FacebookShareData');
goog.require('spv.ds.ipprot.boostermiddle.ImageResponse');
goog.require('spv.ds.ipprot.dsproto.SessionInitData');
goog.require('spv.ds.ipprot.intropage.Root');
/**
* @constructor
* @struct
* @param {string} service_url
* @param {boolean} use_jsonp
*/
spv.ds.ipprot.IpadClient = function(
service_url,
use_jsonp)
{
this._service_url = service_url;
if (use_jsonp)
{
this._send_http_request = spv.ds.ipprot.IpadClient.sendJsonpHttpRequest;
this._api_name = 'jsonp';
}
else
{
this._send_http_request = spv.ds.ipprot.IpadClient.sendJsonHttpRequest;
this._api_name = 'api';
}
};
/**
* @param {string} session_id
* @param {string} category
* @param {string} input
* @param {function(spv.ds.ipprot.boostercshw.OutBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.bip = function(
session_id,
category,
input,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/bip';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('category', typeof(category) == "object" ? goog.json.serialize(category) : category);
query.set('input', typeof(input) == "object" ? goog.json.serialize(input) : input);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['bip']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} menu_query
* @param {string} readmore_mode
* @param {function(spv.ds.ipprot.dsproto.SessionInitData)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.create_session = function(
menu_query,
readmore_mode,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/create_session';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('menu_query', typeof(menu_query) == "object" ? goog.json.serialize(menu_query) : menu_query);
query.set('readmore_mode', typeof(readmore_mode) == "object" ? goog.json.serialize(readmore_mode) : readmore_mode);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['create_session']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} user_name
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.create_user = function(
session_id,
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/create_user';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} template_name
* @param {boolean} add_auto_print
* @param {boolean} show_print_dialog
* @param {function(spv.ds.ipprot.boostercshw.PdfGenerationResult)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.generate_pdf = function(
session_id,
template_name,
add_auto_print,
show_print_dialog,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/generate_pdf';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('template_name', typeof(template_name) == "object" ? goog.json.serialize(template_name) : template_name);
query.set('add_auto_print', typeof(add_auto_print) == "object" ? goog.json.serialize(add_auto_print) : add_auto_print);
query.set('show_print_dialog', typeof(show_print_dialog) == "object" ? goog.json.serialize(show_print_dialog) : show_print_dialog);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['generate_pdf']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} conf_name
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.generate_public_config = function(
session_id,
conf_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/generate_public_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('conf_name', typeof(conf_name) == "object" ? goog.json.serialize(conf_name) : conf_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['generate_public_config']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} category
* @param {function(spv.ds.ipprot.boostercshw.Bump)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_bump = function(
session_id,
category,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_bump';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('category', typeof(category) == "object" ? goog.json.serialize(category) : category);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_bump']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(Array.<spv.ds.ipprot.boostermiddle.Category>)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_categories = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_categories';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_categories']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} encoding
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_config_as_string = function(
session_id,
encoding,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_config_as_string';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('encoding', typeof(encoding) == "object" ? goog.json.serialize(encoding) : encoding);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_config_as_string']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} encoded_config
* @param {string} encoding
* @param {number} scaled_width
* @param {number} scaled_height
* @param {string} serie_name
* @param {number} frame
* @param {number} crop_x_ratio
* @param {number} crop_y_ratio
* @param {number} cropped_width
* @param {number} cropped_height
* @param {string} skip
* @param {string} skip_groups
* @param {string} only_use
* @param {string} only_use_groups
* @param {string} file_type
* @param {boolean} use_hd
* @param {boolean} keep_aspect_ratio
* @param {boolean} auto_crop
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_config_image = function(
encoded_config,
encoding,
scaled_width,
scaled_height,
serie_name,
frame,
crop_x_ratio,
crop_y_ratio,
cropped_width,
cropped_height,
skip,
skip_groups,
only_use,
only_use_groups,
file_type,
use_hd,
keep_aspect_ratio,
auto_crop,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_config_image';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('encoded_config', typeof(encoded_config) == "object" ? goog.json.serialize(encoded_config) : encoded_config);
query.set('encoding', typeof(encoding) == "object" ? goog.json.serialize(encoding) : encoding);
query.set('scaled_width', typeof(scaled_width) == "object" ? goog.json.serialize(scaled_width) : scaled_width);
query.set('scaled_height', typeof(scaled_height) == "object" ? goog.json.serialize(scaled_height) : scaled_height);
query.set('serie_name', typeof(serie_name) == "object" ? goog.json.serialize(serie_name) : serie_name);
query.set('frame', typeof(frame) == "object" ? goog.json.serialize(frame) : frame);
query.set('crop_x_ratio', typeof(crop_x_ratio) == "object" ? goog.json.serialize(crop_x_ratio) : crop_x_ratio);
query.set('crop_y_ratio', typeof(crop_y_ratio) == "object" ? goog.json.serialize(crop_y_ratio) : crop_y_ratio);
query.set('cropped_width', typeof(cropped_width) == "object" ? goog.json.serialize(cropped_width) : cropped_width);
query.set('cropped_height', typeof(cropped_height) == "object" ? goog.json.serialize(cropped_height) : cropped_height);
query.set('skip', typeof(skip) == "object" ? goog.json.serialize(skip) : skip);
query.set('skip_groups', typeof(skip_groups) == "object" ? goog.json.serialize(skip_groups) : skip_groups);
query.set('only_use', typeof(only_use) == "object" ? goog.json.serialize(only_use) : only_use);
query.set('only_use_groups', typeof(only_use_groups) == "object" ? goog.json.serialize(only_use_groups) : only_use_groups);
query.set('file_type', typeof(file_type) == "object" ? goog.json.serialize(file_type) : file_type);
query.set('use_hd', typeof(use_hd) == "object" ? goog.json.serialize(use_hd) : use_hd);
query.set('keep_aspect_ratio', typeof(keep_aspect_ratio) == "object" ? goog.json.serialize(keep_aspect_ratio) : keep_aspect_ratio);
query.set('auto_crop', typeof(auto_crop) == "object" ? goog.json.serialize(auto_crop) : auto_crop);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_config_image']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} encoded_config
* @param {string} encoding
* @param {number} output_width
* @param {number} output_height
* @param {string} serie_name
* @param {number} frame
* @param {string} file_type
* @param {boolean} keep_aspect_ratio
* @param {function(spv.ds.ipprot.boostermiddle.ImageResponse)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_config_image_light = function(
encoded_config,
encoding,
output_width,
output_height,
serie_name,
frame,
file_type,
keep_aspect_ratio,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_config_image_light';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('encoded_config', typeof(encoded_config) == "object" ? goog.json.serialize(encoded_config) : encoded_config);
query.set('encoding', typeof(encoding) == "object" ? goog.json.serialize(encoding) : encoding);
query.set('output_width', typeof(output_width) == "object" ? goog.json.serialize(output_width) : output_width);
query.set('output_height', typeof(output_height) == "object" ? goog.json.serialize(output_height) : output_height);
query.set('serie_name', typeof(serie_name) == "object" ? goog.json.serialize(serie_name) : serie_name);
query.set('frame', typeof(frame) == "object" ? goog.json.serialize(frame) : frame);
query.set('file_type', typeof(file_type) == "object" ? goog.json.serialize(file_type) : file_type);
query.set('keep_aspect_ratio', typeof(keep_aspect_ratio) == "object" ? goog.json.serialize(keep_aspect_ratio) : keep_aspect_ratio);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_config_image_light']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(spv.ds.ipprot.boosterconfig.Result)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_configs = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_configs';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_configs']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {number} scaled_width
* @param {number} scaled_height
* @param {string} serie_name
* @param {number} frame
* @param {number} crop_x_ratio
* @param {number} crop_y_ratio
* @param {number} cropped_width
* @param {number} cropped_height
* @param {string} skip
* @param {string} skip_groups
* @param {string} only_use
* @param {string} only_use_groups
* @param {string} file_type
* @param {boolean} use_hd
* @param {boolean} keep_aspect_ratio
* @param {boolean} auto_crop
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_current_config_image = function(
session_id,
scaled_width,
scaled_height,
serie_name,
frame,
crop_x_ratio,
crop_y_ratio,
cropped_width,
cropped_height,
skip,
skip_groups,
only_use,
only_use_groups,
file_type,
use_hd,
keep_aspect_ratio,
auto_crop,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_current_config_image';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('scaled_width', typeof(scaled_width) == "object" ? goog.json.serialize(scaled_width) : scaled_width);
query.set('scaled_height', typeof(scaled_height) == "object" ? goog.json.serialize(scaled_height) : scaled_height);
query.set('serie_name', typeof(serie_name) == "object" ? goog.json.serialize(serie_name) : serie_name);
query.set('frame', typeof(frame) == "object" ? goog.json.serialize(frame) : frame);
query.set('crop_x_ratio', typeof(crop_x_ratio) == "object" ? goog.json.serialize(crop_x_ratio) : crop_x_ratio);
query.set('crop_y_ratio', typeof(crop_y_ratio) == "object" ? goog.json.serialize(crop_y_ratio) : crop_y_ratio);
query.set('cropped_width', typeof(cropped_width) == "object" ? goog.json.serialize(cropped_width) : cropped_width);
query.set('cropped_height', typeof(cropped_height) == "object" ? goog.json.serialize(cropped_height) : cropped_height);
query.set('skip', typeof(skip) == "object" ? goog.json.serialize(skip) : skip);
query.set('skip_groups', typeof(skip_groups) == "object" ? goog.json.serialize(skip_groups) : skip_groups);
query.set('only_use', typeof(only_use) == "object" ? goog.json.serialize(only_use) : only_use);
query.set('only_use_groups', typeof(only_use_groups) == "object" ? goog.json.serialize(only_use_groups) : only_use_groups);
query.set('file_type', typeof(file_type) == "object" ? goog.json.serialize(file_type) : file_type);
query.set('use_hd', typeof(use_hd) == "object" ? goog.json.serialize(use_hd) : use_hd);
query.set('keep_aspect_ratio', typeof(keep_aspect_ratio) == "object" ? goog.json.serialize(keep_aspect_ratio) : keep_aspect_ratio);
query.set('auto_crop', typeof(auto_crop) == "object" ? goog.json.serialize(auto_crop) : auto_crop);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_current_config_image']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(spv.ds.ipprot.boostermiddle.FacebookShareData)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_facebook_share_data = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_facebook_share_data';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_facebook_share_data']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {number} ctime
* @param {number} limit
* @param {string} meta_filter
* @param {number} scale_width
* @param {number} scale_height
* @param {function(Array.<spv.ds.ipprot.boosterconfig.FreshConfig>)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_fresh_configs = function(
session_id,
ctime,
limit,
meta_filter,
scale_width,
scale_height,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_fresh_configs';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('ctime', typeof(ctime) == "object" ? goog.json.serialize(ctime) : ctime);
query.set('limit', typeof(limit) == "object" ? goog.json.serialize(limit) : limit);
query.set('meta_filter', typeof(meta_filter) == "object" ? goog.json.serialize(meta_filter) : meta_filter);
query.set('scale_width', typeof(scale_width) == "object" ? goog.json.serialize(scale_width) : scale_width);
query.set('scale_height', typeof(scale_height) == "object" ? goog.json.serialize(scale_height) : scale_height);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_fresh_configs']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {number} serie_index
* @param {number} frame_index
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_image = function(
session_id,
serie_index,
frame_index,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_image';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('serie_index', typeof(serie_index) == "object" ? goog.json.serialize(serie_index) : serie_index);
query.set('frame_index', typeof(frame_index) == "object" ? goog.json.serialize(frame_index) : frame_index);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_image']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} item_ids
* @param {function(Array.<spv.ds.ipprot.boostercshw.OutBopUpdate>)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_item_info = function(
session_id,
item_ids,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_item_info';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('item_ids', typeof(item_ids) == "object" ? goog.json.serialize(item_ids) : item_ids);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_item_info']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} item_id
* @param {function(spv.ds.ipprot.boostercshw.OutResolvers)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_state_resolvers = function(
session_id,
item_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_state_resolvers';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('item_id', typeof(item_id) == "object" ? goog.json.serialize(item_id) : item_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_state_resolvers']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} config_name
* @param {number} scaled_width
* @param {number} scaled_height
* @param {string} serie_name
* @param {number} frame
* @param {number} crop_x_ratio
* @param {number} crop_y_ratio
* @param {number} cropped_width
* @param {number} cropped_height
* @param {string} skip
* @param {string} skip_groups
* @param {string} only_use
* @param {string} only_use_groups
* @param {string} file_type
* @param {boolean} use_hd
* @param {boolean} keep_aspect_ratio
* @param {boolean} auto_crop
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.get_user_config_image = function(
session_id,
config_name,
scaled_width,
scaled_height,
serie_name,
frame,
crop_x_ratio,
crop_y_ratio,
cropped_width,
cropped_height,
skip,
skip_groups,
only_use,
only_use_groups,
file_type,
use_hd,
keep_aspect_ratio,
auto_crop,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/get_user_config_image';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
query.set('scaled_width', typeof(scaled_width) == "object" ? goog.json.serialize(scaled_width) : scaled_width);
query.set('scaled_height', typeof(scaled_height) == "object" ? goog.json.serialize(scaled_height) : scaled_height);
query.set('serie_name', typeof(serie_name) == "object" ? goog.json.serialize(serie_name) : serie_name);
query.set('frame', typeof(frame) == "object" ? goog.json.serialize(frame) : frame);
query.set('crop_x_ratio', typeof(crop_x_ratio) == "object" ? goog.json.serialize(crop_x_ratio) : crop_x_ratio);
query.set('crop_y_ratio', typeof(crop_y_ratio) == "object" ? goog.json.serialize(crop_y_ratio) : crop_y_ratio);
query.set('cropped_width', typeof(cropped_width) == "object" ? goog.json.serialize(cropped_width) : cropped_width);
query.set('cropped_height', typeof(cropped_height) == "object" ? goog.json.serialize(cropped_height) : cropped_height);
query.set('skip', typeof(skip) == "object" ? goog.json.serialize(skip) : skip);
query.set('skip_groups', typeof(skip_groups) == "object" ? goog.json.serialize(skip_groups) : skip_groups);
query.set('only_use', typeof(only_use) == "object" ? goog.json.serialize(only_use) : only_use);
query.set('only_use_groups', typeof(only_use_groups) == "object" ? goog.json.serialize(only_use_groups) : only_use_groups);
query.set('file_type', typeof(file_type) == "object" ? goog.json.serialize(file_type) : file_type);
query.set('use_hd', typeof(use_hd) == "object" ? goog.json.serialize(use_hd) : use_hd);
query.set('keep_aspect_ratio', typeof(keep_aspect_ratio) == "object" ? goog.json.serialize(keep_aspect_ratio) : keep_aspect_ratio);
query.set('auto_crop', typeof(auto_crop) == "object" ? goog.json.serialize(auto_crop) : auto_crop);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['get_user_config_image']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.heartbeat = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/heartbeat';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['heartbeat']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {function(spv.ds.ipprot.intropage.Root)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.init_settings = function(
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/init_settings';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['init_settings']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.initialize_session = function(
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/initialize_session';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['initialize_session']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} service_name
* @param {string} argument
* @param {function(Object.<string, string>)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.invoke_dynamic_service = function(
session_id,
service_name,
argument,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/invoke_dynamic_service';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('service_name', typeof(service_name) == "object" ? goog.json.serialize(service_name) : service_name);
query.set('argument', typeof(argument) == "object" ? goog.json.serialize(argument) : argument);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['invoke_dynamic_service']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} conf_name
* @param {function(spv.ds.ipprot.boostercshw.ConfigBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.load_config = function(
session_id,
conf_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/load_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('conf_name', typeof(conf_name) == "object" ? goog.json.serialize(conf_name) : conf_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['load_config']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} config
* @param {string} encoding
* @param {function(spv.ds.ipprot.boostercshw.ConfigBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.load_config_from_string = function(
session_id,
config,
encoding,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/load_config_from_string';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('config', typeof(config) == "object" ? goog.json.serialize(config) : config);
query.set('encoding', typeof(encoding) == "object" ? goog.json.serialize(encoding) : encoding);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['load_config_from_string']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} conf_name
* @param {function(spv.ds.ipprot.boostercshw.ConfigBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.load_public_config = function(
session_id,
conf_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/load_public_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('conf_name', typeof(conf_name) == "object" ? goog.json.serialize(conf_name) : conf_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['load_public_config']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} user_name
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.login = function(
session_id,
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/login';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['login']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(spv.ds.ipprot.boostercshw.OutBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.rebop = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/rebop';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['rebop']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} conf_name
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.remove_config = function(
session_id,
conf_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/remove_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('conf_name', typeof(conf_name) == "object" ? goog.json.serialize(conf_name) : conf_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['remove_config']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {function(spv.ds.ipprot.boostercshw.OutBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.reset = function(
session_id,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/reset';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['reset']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} conf_name
* @param {boolean} allow_overwrite
* @param {function(string)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.save_config = function(
session_id,
conf_name,
allow_overwrite,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/save_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('conf_name', typeof(conf_name) == "object" ? goog.json.serialize(conf_name) : conf_name);
query.set('allow_overwrite', typeof(allow_overwrite) == "object" ? goog.json.serialize(allow_overwrite) : allow_overwrite);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['save_config']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} menu_query
* @param {function(spv.ds.ipprot.boostercshw.OutBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.set_menu_query = function(
session_id,
menu_query,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/set_menu_query';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('menu_query', typeof(menu_query) == "object" ? goog.json.serialize(menu_query) : menu_query);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['set_menu_query']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} lid
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.set_price_localization = function(
session_id,
lid,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/set_price_localization';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('lid', typeof(lid) == "object" ? goog.json.serialize(lid) : lid);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['set_price_localization']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.test_internal_server_error = function(
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/test_internal_server_error';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['test_internal_server_error']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} config_name
* @param {string} flag
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_add_flag = function(
user_name,
config_name,
flag,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_add_flag';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_add_flag']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} flag
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_add_flag_to_all = function(
user_name,
flag,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_add_flag_to_all';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_add_flag_to_all']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} flag
* @param {Array.<string>} ignore_flags
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_add_flag_to_all_ignoring_flags = function(
user_name,
flag,
ignore_flags,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_add_flag_to_all_ignoring_flags';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
query.set('ignore_flags', typeof(ignore_flags) == "object" ? goog.json.serialize(ignore_flags) : ignore_flags);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_add_flag_to_all_ignoring_flags']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {function(spv.ds.ipprot.boostercshw.SavedUser)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_list = function(
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_list';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_list']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {Array.<string>} ignore_flags
* @param {function(spv.ds.ipprot.boostercshw.SavedUser)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_list_ignoring_flags = function(
user_name,
ignore_flags,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_list_ignoring_flags';
var http_method = 'GET';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('ignore_flags', typeof(ignore_flags) == "object" ? goog.json.serialize(ignore_flags) : ignore_flags);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_list_ignoring_flags']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} user_name
* @param {string} config_name
* @param {function(spv.ds.ipprot.boostercshw.ConfigBop)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_load = function(
session_id,
user_name,
config_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_load';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_load']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_all_configs = function(
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_all_configs';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} config_name
* @param {string} flag
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_flag = function(
user_name,
config_name,
flag,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_flag';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_remove_flag']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} flag
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_flag_from_all = function(
user_name,
flag,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_flag_from_all';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_remove_flag_from_all']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} flag
* @param {Array.<string>} ignore_flags
* @param {function(boolean)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_flag_from_all_ignoring_flags = function(
user_name,
flag,
ignore_flags,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_flag_from_all_ignoring_flags';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('flag', typeof(flag) == "object" ? goog.json.serialize(flag) : flag);
query.set('ignore_flags', typeof(ignore_flags) == "object" ? goog.json.serialize(ignore_flags) : ignore_flags);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success(result_obj['user_config_remove_flag_from_all_ignoring_flags']);
}
this._send_http_request(full_url,
http_method,
query,
false,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_user = function(
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_user';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @param {string} user_name
* @param {string} config_name
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_remove_user_config = function(
user_name,
config_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_remove_user_config';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} user_name
* @param {string} config_name
* @param {boolean} allow_overwrite
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_save = function(
session_id,
user_name,
config_name,
allow_overwrite,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_save';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
query.set('config_name', typeof(config_name) == "object" ? goog.json.serialize(config_name) : config_name);
query.set('allow_overwrite', typeof(allow_overwrite) == "object" ? goog.json.serialize(allow_overwrite) : allow_overwrite);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @param {string} session_id
* @param {string} user_name
* @param {Function} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.prototype.user_config_save_user_data = function(
session_id,
user_name,
on_success,
on_failure)
{
var full_url = this._service_url + '/' + this._api_name + '/user_config_save_user_data';
var http_method = 'POST';
var query = new goog.Uri.QueryData();
query.set('session_id', typeof(session_id) == "object" ? goog.json.serialize(session_id) : session_id);
query.set('user_name', typeof(user_name) == "object" ? goog.json.serialize(user_name) : user_name);
/** @type {function(Object)} */
var on_http_success = function(result_obj)
{
on_success();
}
this._send_http_request(full_url,
http_method,
query,
true,
on_http_success,
on_failure);
};
/**
* @private
* @param {goog.Uri.QueryData} query
* @return {string}
*/
spv.ds.ipprot.IpadClient.makeSpecialQueryString = function (query)
{
var result = '';
var keys = query.getKeys();
for (var i = 0; i < keys.length; i++)
{
if (0 != i)
{
result += '&';
}
var key = keys[i];
var val = query.get(key, '').toString();
var val_enc = encodeURIComponent(val);
result += keys[i] + '=' + val_enc;
}
return result;
}
/**
* @private
* @param {goog.net.XhrIo} xhr
*/
spv.ds.ipprot.IpadClient.getProtocolErrorMessage = function(xhr)
{
var mess = 'protocol error: ' + xhr.getStatusText();
mess += ', ' + xhr.getResponseText();
return mess;
}
/**
* @private
* @param {goog.Uri.QueryData} query
* @return {Object}
*/
spv.ds.ipprot.IpadClient.makeJsonpPayload = function(query)
{
var result = {};
var keys = query.getKeys();
for (var i = 0; i < keys.length; i++)
{
var key = keys[i];
result[key] = query.get(key);
}
var t = new Date().getTime();
result['cachebuster'] = t;
return result;
}
/**
* @private
* @param {Object} response
* @return {Error}
*/
spv.ds.ipprot.IpadClient.makeResponseError = function(response)
{
var message = 'Jsonp error: ';
var error_carrier = spv.ds.ipprot.IpadClient.getResponseErrorCarrier(response);
if (null == error_carrier)
{
message += 'no error information available';
}
else
{
message += error_carrier['message'];
}
return new Error(message);
}
/**
* @private
* @param {Object} response
* @return {Object|null}
*/
spv.ds.ipprot.IpadClient.getResponseErrorCarrier = function(response)
{
if (!response)
{
return null;
}
if (!response['error'])
{
return null;
}
return response['error'];
}
/**
* @private
* @param {Object} response
* @return {boolean}
*/
spv.ds.ipprot.IpadClient.hasErrorCarrier = function(response)
{
return null != spv.ds.ipprot.IpadClient.getResponseErrorCarrier(response);
}
/**
* @private
* @param {string} url
* @param {string} http_method
* @param {goog.Uri.QueryData} query
* @param {boolean} return_is_void
* @param {function(Object)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.sendJsonHttpRequest = function(
url,
http_method,
query,
return_is_void,
on_success,
on_failure)
{
var cbk = function(e)
{
try
{
/** @type {goog.net.XhrIo} */
var xhr = e.target;
if (!xhr.isSuccess())
{
var mess = spv.ds.ipprot.IpadClient.getProtocolErrorMessage(xhr);
throw new Error(mess);
}
if (return_is_void)
{
on_success(null);
return;
}
var obj = xhr.getResponseJson();
if (obj == undefined)
{
throw new Error('http response is undefined');
}
on_success(obj);
}
catch (response_err)
{
on_failure(response_err);
}
};
if('POST' == http_method || 'GET' == http_method)
{
var body_query = spv.ds.ipprot.IpadClient.makeSpecialQueryString(query);
goog.net.XhrIo.send(url, cbk, 'POST', body_query);
}
else
{
throw new Error('Method not supported: ' + http_method);
}
};
/**
* @private
* @param {string} url
* @param {string} http_method
* @param {goog.Uri.QueryData} query
* @param {boolean} return_is_void
* @param {function(Object)} on_success
* @param {function(Error)} on_failure
*/
spv.ds.ipprot.IpadClient.sendJsonpHttpRequest = function(
url,
http_method,
query,
return_is_void,
on_success,
on_failure)
{
var on_jsonp_reply = function (response)
{
try
{
if (spv.ds.ipprot.IpadClient.hasErrorCarrier(response))
{
var err = spv.ds.ipprot.IpadClient.makeResponseError(response);
throw err;
}
if (return_is_void)
{
on_success(null);
return;
}
on_success(response);
}
catch (response_err)
{
on_failure(response_err);
}
};
var on_jsonp_error = function(response)
{
var jsonp_error = spv.ds.ipprot.IpadClient.makeResponseError(response);
on_failure(jsonp_error);
};
var payload = spv.ds.ipprot.IpadClient.makeJsonpPayload(query);
var jp = new goog.net.Jsonp(url);
var timeout_ms = 60 * 1000 * 10;
jp.setRequestTimeout(timeout_ms);
jp.send(payload, on_jsonp_reply, on_jsonp_error);
};