if (!dojo._hasResource["dojox.wire.TableAdapter"]) { // _hasResource checks // added by build. Do // not use _hasResource // directly in your // code. dojo._hasResource["dojox.wire.TableAdapter"] = true; dojo.provide("dojox.wire.TableAdapter"); dojo.require("dojox.wire.CompositeWire"); dojo.declare("dojox.wire.TableAdapter", dojox.wire.CompositeWire, { // summary: // A composite Wire for table rows // description: // This class has multiple child Wires for object properties or // array // elements of a table row. // The root object for this class must be an array. // When an object with Wires is specified to 'columns' property, // they // are used to get a row object with property values. // When an array of Wires is specified to 'columns' property, // they // are used to get a row array with element values. // The row values are returned in an array. // This class only supports getValue(), but not setValue(). _wireClass : "dojox.wire.TableAdapter", constructor : function(/* Object */args) { // summary: // Initialize properties // description: // If object properties or array elements specified in // 'columns' // property are not Wires, Wires are created from them as // arguments, with 'parent' property set to this Wire // instance. // args: // Arguments to initialize properties // columns: // An object or array containing child Wires for column // values this._initializeChildren(this.columns); }, _getValue : function(/* Array */object) { // summary: // Return an array of table row value (object or array) // description: // This method iterates over an array specified to 'object' // argument and calls getValue() method of the child Wires // with // each element of the array to get a row object or array. // Finally, an array with the row objects or arrays are // retuned. // object: // A root array // returns: // An array of table row value if (!object || !this.columns) { return object; // Array } var array = object; if (!dojo.isArray(array)) { array = [array]; } var rows = []; for (var i in array) { var row = this._getRow(array[i]); rows.push(row); } return rows; // Array }, _setValue : function(/* Array */object, /* Array */value) { // summary: // Not supported throw new Error("Unsupported API: " + this._wireClass + "._setValue"); }, _getRow : function(/* Object||Array */object) { // summary: // Return an array or object for a table row // description: // This method calls getValue() method of the child Wires to // create a row object or array. // returns: // An array or object for a table row var row = (dojo.isArray(this.columns) ? [] : {}); // array // or // object for (var c in this.columns) { row[c] = this.columns[c].getValue(object); } return row; // Array||Object } }); }