|
Struts example source code file (Base.js)
The Struts Base.js source code/* 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.data.old.provider.Base"); dojo.require("dojo.lang.assert"); dojo.data.old.provider.Base = function () { this._countOfNestedTransactions = 0; this._changesInCurrentTransaction = null; }; dojo.data.old.provider.Base.prototype.beginTransaction = function () { if (this._countOfNestedTransactions === 0) { this._changesInCurrentTransaction = []; } this._countOfNestedTransactions += 1; }; dojo.data.old.provider.Base.prototype.endTransaction = function () { this._countOfNestedTransactions -= 1; dojo.lang.assert(this._countOfNestedTransactions >= 0); if (this._countOfNestedTransactions === 0) { var listOfChangesMade = this._saveChanges(); this._changesInCurrentTransaction = null; if (listOfChangesMade.length > 0) { this._notifyObserversOfChanges(listOfChangesMade); } } }; dojo.data.old.provider.Base.prototype.getNewItemToLoad = function () { return this._newItem(); }; dojo.data.old.provider.Base.prototype.newItem = function (itemName) { dojo.lang.assertType(itemName, String, {optional:true}); var item = this._newItem(); if (itemName) { item.set("name", itemName); } return item; }; dojo.data.old.provider.Base.prototype.newAttribute = function (attributeId) { dojo.lang.assertType(attributeId, String, {optional:true}); var attribute = this._newAttribute(attributeId); return attribute; }; dojo.data.old.provider.Base.prototype.getAttribute = function (attributeId) { dojo.unimplemented("dojo.data.old.provider.Base"); var attribute; return attribute; }; dojo.data.old.provider.Base.prototype.getAttributes = function () { dojo.unimplemented("dojo.data.old.provider.Base"); return this._arrayOfAttributes; }; dojo.data.old.provider.Base.prototype.fetchArray = function () { dojo.unimplemented("dojo.data.old.provider.Base"); return []; }; dojo.data.old.provider.Base.prototype.fetchResultSet = function () { dojo.unimplemented("dojo.data.old.provider.Base"); var resultSet; return resultSet; }; dojo.data.old.provider.Base.prototype.noteChange = function (item, attribute, value) { var change = {item:item, attribute:attribute, value:value}; if (this._countOfNestedTransactions === 0) { this.beginTransaction(); this._changesInCurrentTransaction.push(change); this.endTransaction(); } else { this._changesInCurrentTransaction.push(change); } }; dojo.data.old.provider.Base.prototype.addItemObserver = function (item, observer) { dojo.lang.assertType(item, dojo.data.old.Item); item.addObserver(observer); }; dojo.data.old.provider.Base.prototype.removeItemObserver = function (item, observer) { dojo.lang.assertType(item, dojo.data.old.Item); item.removeObserver(observer); }; dojo.data.old.provider.Base.prototype._newItem = function () { var item = new dojo.data.old.Item(this); return item; }; dojo.data.old.provider.Base.prototype._newAttribute = function (attributeId) { var attribute = new dojo.data.old.Attribute(this); return attribute; }; dojo.data.old.provider.Base.prototype._saveChanges = function () { var arrayOfChangesMade = this._changesInCurrentTransaction; return arrayOfChangesMade; }; dojo.data.old.provider.Base.prototype._notifyObserversOfChanges = function (arrayOfChanges) { var arrayOfResultSets = this._getResultSets(); for (var i in arrayOfChanges) { var change = arrayOfChanges[i]; var changedItem = change.item; var arrayOfItemObservers = changedItem.getObservers(); for (var j in arrayOfItemObservers) { var observer = arrayOfItemObservers[j]; observer.observedObjectHasChanged(changedItem, change); } for (var k in arrayOfResultSets) { var resultSet = arrayOfResultSets[k]; var arrayOfResultSetObservers = resultSet.getObservers(); for (var m in arrayOfResultSetObservers) { observer = arrayOfResultSetObservers[m]; observer.observedObjectHasChanged(resultSet, change); } } } }; dojo.data.old.provider.Base.prototype._getResultSets = function () { dojo.unimplemented("dojo.data.old.provider.Base"); return []; }; Other Struts examples (source code examples)Here is a short list of links related to this Struts Base.js source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.