⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rpcservice.js

📁 尚学堂oa项目源码,用户管理
💻 JS
字号:
/*	Copyright (c) 2004-2006, The Dojo Foundation	All Rights Reserved.	Licensed under the Academic Free License version 2.1 or above OR the	modified BSD license. For more information on Dojo licensing, see:		http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.rpc.RpcService");dojo.require("dojo.io.*");dojo.require("dojo.json");dojo.require("dojo.lang.func");dojo.require("dojo.Deferred");dojo.rpc.RpcService = function (url) {	if (url) {		this.connect(url);	}};dojo.lang.extend(dojo.rpc.RpcService, {strictArgChecks:true, serviceUrl:"", parseResults:function (obj) {	return obj;}, errorCallback:function (deferredRequestHandler) {	return function (type, e) {		deferredRequestHandler.errback(new Error(e.message));	};}, resultCallback:function (deferredRequestHandler) {	var tf = dojo.lang.hitch(this, function (type, obj, e) {		if (obj["error"] != null) {			var err = new Error(obj.error);			err.id = obj.id;			deferredRequestHandler.errback(err);		} else {			var results = this.parseResults(obj);			deferredRequestHandler.callback(results);		}	});	return tf;}, generateMethod:function (method, parameters, url) {	return dojo.lang.hitch(this, function () {		var deferredRequestHandler = new dojo.Deferred();		if ((this.strictArgChecks) && (parameters != null) && (arguments.length != parameters.length)) {			dojo.raise("Invalid number of parameters for remote method.");		} else {			this.bind(method, arguments, deferredRequestHandler, url);		}		return deferredRequestHandler;	});}, processSmd:function (object) {	dojo.debug("RpcService: Processing returned SMD.");	if (object.methods) {		dojo.lang.forEach(object.methods, function (m) {			if (m && m["name"]) {				dojo.debug("RpcService: Creating Method: this.", m.name, "()");				this[m.name] = this.generateMethod(m.name, m.parameters, m["url"] || m["serviceUrl"] || m["serviceURL"]);				if (dojo.lang.isFunction(this[m.name])) {					dojo.debug("RpcService: Successfully created", m.name, "()");				} else {					dojo.debug("RpcService: Failed to create", m.name, "()");				}			}		}, this);	}	this.serviceUrl = object.serviceUrl || object.serviceURL;	dojo.debug("RpcService: Dojo RpcService is ready for use.");}, connect:function (smdUrl) {	dojo.debug("RpcService: Attempting to load SMD document from:", smdUrl);	dojo.io.bind({url:smdUrl, mimetype:"text/json", load:dojo.lang.hitch(this, function (type, object, e) {		return this.processSmd(object);	}), sync:true});}});

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -