AdapterRegistry.js
资源名称:oa.rar [点击查看]
上传用户:kimgenplus
上传日期:2016-06-05
资源大小:20877k
文件大小:1k
源码类别:
OA系统
开发平台:
Java
- /*
- 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.AdapterRegistry");
- dojo.require("dojo.lang.func");
- dojo.AdapterRegistry = function (returnWrappers) {
- this.pairs = [];
- this.returnWrappers = returnWrappers || false;
- };
- dojo.lang.extend(dojo.AdapterRegistry, {register:function (name, check, wrap, directReturn, override) {
- var type = (override) ? "unshift" : "push";
- this.pairs[type]([name, check, wrap, directReturn]);
- }, match:function () {
- for (var i = 0; i < this.pairs.length; i++) {
- var pair = this.pairs[i];
- if (pair[1].apply(this, arguments)) {
- if ((pair[3]) || (this.returnWrappers)) {
- return pair[2];
- } else {
- return pair[2].apply(this, arguments);
- }
- }
- }
- throw new Error("No match found");
- }, unregister:function (name) {
- for (var i = 0; i < this.pairs.length; i++) {
- var pair = this.pairs[i];
- if (pair[0] == name) {
- this.pairs.splice(i, 1);
- return true;
- }
- }
- return false;
- }});