dataservice.debug.js
来自「AJAX Client For ADONET Data Services」· JavaScript 代码 · 共 798 行 · 第 1/3 页
JS
798 行
}
function Sys$Data$DataService$loadProperty(item, property, succeededCallback, failedCallback, userContext, webRequest) {
/// <summary locid="M:J#Sys.Data.DataService.loadProperty" />
/// <param name="item" type="Object"></param>
/// <param name="property" type="String"></param>
/// <param name="succeededCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="failedCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="userContext" mayBeNull="true" optional="true"></param>
/// <param name="webRequest" type="Sys.Net.WebRequest" mayBeNull="true" optional="true"></param>
var e = Function._validateParams(arguments, [
{name: "item", type: Object},
{name: "property", type: String},
{name: "succeededCallback", type: Function, mayBeNull: true, optional: true},
{name: "failedCallback", type: Function, mayBeNull: true, optional: true},
{name: "userContext", mayBeNull: true, optional: true},
{name: "webRequest", type: Sys.Net.WebRequest, mayBeNull: true, optional: true}
]);
if (e) throw e;
var succeededHelper = function(result, context, operation) {
item[operation] = result;
if (!succeededCallback) {
succeededCallback = this._defaultSucceededCallback;
}
if (succeededCallback) {
succeededCallback(item, context, operation);
}
};
var uri;
if (item[property] && item[property].__metadata && item[property].__metadata.uri) {
uri = item[property].__metadata.uri;
}
else if (item.__metadata && item.__metadata.uri) {
uri = item.__metadata.uri + '/' + property;
}
else {
throw Error.create(Sys.Data.Res.dataServiceLoadPropertyUriNotPresent);
}
var wRequest = this._prepWebRequest(null, uri, "GET", succeededHelper, failedCallback, userContext, property, webRequest);
wRequest.invoke();
}
function Sys$Data$DataService$insert(item, resourceSetUri, succeededCallback, failedCallback, userContext, webRequest) {
/// <summary locid="M:J#succeededHelper" />
/// <param name="item" type="Object"></param>
/// <param name="resourceSetUri" type="String" mayBeNull="true"></param>
/// <param name="succeededCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="failedCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="userContext" mayBeNull="true" optional="true"></param>
/// <param name="webRequest" type="Sys.Net.WebRequest" mayBeNull="true" optional="true"></param>
var e = Function._validateParams(arguments, [
{name: "item", type: Object},
{name: "resourceSetUri", type: String, mayBeNull: true},
{name: "succeededCallback", type: Function, mayBeNull: true, optional: true},
{name: "failedCallback", type: Function, mayBeNull: true, optional: true},
{name: "userContext", mayBeNull: true, optional: true},
{name: "webRequest", type: Sys.Net.WebRequest, mayBeNull: true, optional: true}
]);
if (e) throw e;
var wRequest = this._prepWebRequest(null, resourceSetUri, "POST", succeededCallback, failedCallback, userContext, "insert", webRequest);
wRequest.set_body(Sys.Serialization.JavaScriptSerializer.serialize(item));
wRequest.get_headers()["Content-Type"] = "application/json";
wRequest.invoke();
}
function Sys$Data$DataService$update(item, resourceUri, succeededCallback, failedCallback, userContext, webRequest) {
/// <summary locid="M:J#succeededHelper" />
/// <param name="item" type="Object"></param>
/// <param name="resourceUri" type="String" mayBeNull="true"></param>
/// <param name="succeededCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="failedCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="userContext" mayBeNull="true" optional="true"></param>
/// <param name="webRequest" type="Sys.Net.WebRequest" mayBeNull="true" optional="true"></param>
var e = Function._validateParams(arguments, [
{name: "item", type: Object},
{name: "resourceUri", type: String, mayBeNull: true},
{name: "succeededCallback", type: Function, mayBeNull: true, optional: true},
{name: "failedCallback", type: Function, mayBeNull: true, optional: true},
{name: "userContext", mayBeNull: true, optional: true},
{name: "webRequest", type: Sys.Net.WebRequest, mayBeNull: true, optional: true}
]);
if (e) throw e;
var wRequest = this._prepWebRequest(item, resourceUri, "PUT", succeededCallback, failedCallback, userContext, "update", webRequest);
wRequest.get_headers()["Content-Type"] = "application/json";
wRequest.invoke();
}
function Sys$Data$DataService$remove(item, resourceUri, succeededCallback, failedCallback, userContext, webRequest) {
/// <summary locid="M:J#succeededHelper" />
/// <param name="item" type="Object" mayBeNull="true"></param>
/// <param name="resourceUri" type="String" mayBeNull="true" optional="true"></param>
/// <param name="succeededCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="failedCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="userContext" mayBeNull="true" optional="true"></param>
/// <param name="webRequest" type="Sys.Net.WebRequest" mayBeNull="true" optional="true"></param>
var e = Function._validateParams(arguments, [
{name: "item", type: Object, mayBeNull: true},
{name: "resourceUri", type: String, mayBeNull: true, optional: true},
{name: "succeededCallback", type: Function, mayBeNull: true, optional: true},
{name: "failedCallback", type: Function, mayBeNull: true, optional: true},
{name: "userContext", mayBeNull: true, optional: true},
{name: "webRequest", type: Sys.Net.WebRequest, mayBeNull: true, optional: true}
]);
if (e) throw e;
if (!((item && item.__metadata && item.__metadata.uri) || resourceUri)) {
throw Error.create(Sys.Data.Res.dataServiceRemoveUriNotPresent);
}
var wRequest = this._prepWebRequest(item, resourceUri, "DELETE",
this._cbReplaceResult(succeededCallback, null) ,
failedCallback, userContext, "remove", webRequest);
delete wRequest.get_headers()["Content-Type"];
wRequest.set_body(null);
wRequest.invoke();
}
function Sys$Data$DataService$invoke(operationUri, httpVerb, parameters, succeededCallback, failedCallback, userContext, webRequest) {
/// <summary locid="M:J#succeededHelper" />
/// <param name="operationUri" type="String"></param>
/// <param name="httpVerb" type="String" maybeNull="true" optional="true"></param>
/// <param name="parameters" type="Object" maybeNull="true" optional="true"></param>
/// <param name="succeededCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="failedCallback" type="Function" mayBeNull="true" optional="true"></param>
/// <param name="userContext" mayBeNull="true" optional="true"></param>
/// <param name="webRequest" type="Sys.Net.WebRequest" mayBeNull="true" optional="true"></param>
var e = Function._validateParams(arguments, [
{name: "operationUri", type: String},
{name: "httpVerb", type: String, optional: true},
{name: "parameters", type: Object, optional: true},
{name: "succeededCallback", type: Function, mayBeNull: true, optional: true},
{name: "failedCallback", type: Function, mayBeNull: true, optional: true},
{name: "userContext", mayBeNull: true, optional: true},
{name: "webRequest", type: Sys.Net.WebRequest, mayBeNull: true, optional: true}
]);
if (e) throw e;
var qb = new Sys.Data.QueryBuilder(operationUri);
for (key in parameters) {
qb.get_queryParams()[encodeURIComponent(key)] = encodeURIComponent(parameters[key]);
}
var wRequest = this._prepWebRequest(null, qb.toString(), httpVerb, succeededCallback, failedCallback, userContext, operationUri, webRequest);
if (httpVerb == "POST") {
wRequest.get_headers()["X-Service-Post"] = "true";
}
wRequest.invoke();
}
function Sys$Data$DataService$createActionSequence() {
/// <summary locid="M:J#succeededHelper" />
/// <returns type="Sys.Data.ActionSequence"></returns>
if (arguments.length !== 0) throw Error.parameterCount();
return new Sys.Data.ActionSequence(this);
}
function Sys$Data$DataService$_prepWebRequest(item, relUri, verb, onSuccess, onFailure, context, operation, wRequest) {
if (!relUri) {
relUri = "";
}
if (!wRequest) {
wRequest = new Sys.Net.WebRequest();
}
wRequest.set_url(Sys.Data.DataService._concatUris(this._serviceUri, relUri));
wRequest.set_httpVerb(verb);
wRequest.set_timeout(this.get_timeout());
var headers = wRequest.get_headers();
headers["Accept"] = "application/json";
if (item) {
wRequest.set_body(Sys.Serialization.JavaScriptSerializer.serialize(item));
headers["Content-Type"] = "application/json";
if (item.__metadata && item.__metadata.uri)
wRequest.set_url(item.__metadata.uri);
}
if (!onSuccess) {
onSuccess = this._defaultSucceededCallback;
}
if (!onFailure) {
onFailure = this._defaultFailedCallback;
}
if (!context) {
context = this._defaultUserContext;
}
wRequest.add_completed(function(executor, eventArgs) {
Sys.Data.DataService._callbackHelper(executor, eventArgs, onSuccess, onFailure, context, operation);
});
return wRequest;
}
function Sys$Data$DataService$_cbReplaceResult(cb, retVal) {
if (!cb) {
cb = this._defaultSucceededCallback;
}
return (cb)
? function(result, context, operation) { cb(retVal, context, operation); }
: null;
}
Sys.Data.DataService.prototype = {
get_serviceUri: Sys$Data$DataService$get_serviceUri,
get_timeout: Sys$Data$DataService$get_timeout,
set_timeout: Sys$Data$DataService$set_timeout,
get_defaultUserContext: Sys$Data$DataService$get_defaultUserContext,
set_defaultUserContext: Sys$Data$DataService$set_defaultUserContext,
get_defaultSucceededCallback: Sys$Data$DataService$get_defaultSucceededCallback,
set_defaultSucceededCallback: Sys$Data$DataService$set_defaultSucceededCallback,
get_defaultFailedCallback: Sys$Data$DataService$get_defaultFailedCallback,
set_defaultFailedCallback: Sys$Data$DataService$set_defaultFailedCallback,
query: Sys$Data$DataService$query,
loadProperty: Sys$Data$DataService$loadProperty,
insert: Sys$Data$DataService$insert,
update: Sys$Data$DataService$update,
remove: Sys$Data$DataService$remove,
invoke: Sys$Data$DataService$invoke,
createActionSequence: Sys$Data$DataService$createActionSequence,
_prepWebRequest: Sys$Data$DataService$_prepWebRequest,
_cbReplaceResult: Sys$Data$DataService$_cbReplaceResult
}
Sys.Data.DataService._concatUris = function Sys$Data$DataService$_concatUris(serviceUri, resourceUri) {
if (serviceUri.endsWith('/')) {
serviceUri = serviceUri.substr(0, serviceUri.length - 1);
}
if (resourceUri.startsWith('/')) {
resourceUri = resourceUri.substr(1);
}
return serviceUri + '/' + resourceUri;
};
Sys.Data.DataService._callbackHelper = function Sys$Data$DataService$_callbackHelper(executor, eventArgs, onSuccess, onFailure, userContext, operation) {
if (executor.get_responseAvailable()) {
var statusCode = executor.get_statusCode();
if (statusCode == 1223) {
statusCode = 204;
}
var result = null;
try {
var contentType = executor.getResponseHeader("Content-Type");
if (contentType.startsWith("application/json")) {
result = executor.get_object();
}
else if (contentType.startsWith("text/xml")) {
result = executor.get_xml();
}
else {
result = executor.get_responseData();
}
} catch (ex) {
}
var error = executor.getResponseHeader("jsonerror");
var errorObj = (error === "true");
if (errorObj) {
if (result) {
result = new Sys.Data.DataServiceError(false, result.Message, result.StackTrace, result.ExceptionType);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?