modules/enterprise/remoting/cli/src/main/samples/modules/util.js | 30 ++-------- 1 file changed, 6 insertions(+), 24 deletions(-)
New commits: commit af19b17b92d9484c918ac335537795b548c65205 Author: John Sanda jsanda@redhat.com Date: Mon Dec 9 22:02:45 2013 -0500
fixing bugs in foreach with criteria query
diff --git a/modules/enterprise/remoting/cli/src/main/samples/modules/util.js b/modules/enterprise/remoting/cli/src/main/samples/modules/util.js index 18c34b3..7de3db0 100644 --- a/modules/enterprise/remoting/cli/src/main/samples/modules/util.js +++ b/modules/enterprise/remoting/cli/src/main/samples/modules/util.js @@ -57,7 +57,7 @@ exports.foreach = function (obj, fn) { MeasurementDefinition: function(criteria) { return MeasurementDefinitionManager.findMeasurementDefinitionsByCriteria(criteria); }, JPADriftChangeSet: function(criteria) { return DriftManager.findDriftChangeSetsByCriteria(criteria); }, JPADrift: function(criteria) { return DriftManager.findDriftsByCriteria(criteria); }, - MeasurementSchedule: function(criteria) { return MeasurementScheduleManager,findSchedulesByCriteria(criteria); }, + MeasurementSchedule: function(criteria) { return MeasurementScheduleManager.findSchedulesByCriteria(criteria); }, OperationDefinition: function(criteria) { return OperationManager.findOperationDefinitionsByCriteria(criteria); }, ResourceOperationHistory: function(criteria) { return OperationManager.findResourceOperationHistoriesByCriteria(criteria); }, ResourceType: function(criteria) { return ResourceTypeManager.findResourceTypesByCriteria(criteria); }, @@ -79,24 +79,24 @@ exports.foreach = function (obj, fn) { fn(iterator.next()); } } else if (obj instanceof java.util.Map) { - var iterator = obj.entrySet().iterator() + var iterator = obj.entrySet().iterator(); while (iterator.hasNext()) { var entry = iterator.next(); fn(entry.key, entry.value); } } else if (obj instanceof Criteria) { var criteria = obj; - var executeQuery = criteriaExecutors[criteria.persistentClass]; + var executeQuery = criteriaExecutors[criteria.persistentClass.simpleName];
if (executeQuery == null) { throw "No criteria executor found for " + criteria.getClass().name + ". A new executor may need to be added to " + "this script."; }
- var currentPage = executeQuery(); + var currentPage = executeQuery(criteria);
while (!currentPage.isEmpty()) { - util.foreach(currentPage, fn); + this.foreach(currentPage, fn); if (currentPage.pageControl == null && currentPage.pageControlOverrides == null) { reachedEnd = true; } else { @@ -107,7 +107,7 @@ exports.foreach = function (obj, fn) { }
currentPage.clear(); - currentPage = executeQuery(); + currentPage = executeQuery(criteria); } } } else { // assume we have a generic object @@ -349,22 +349,4 @@ exports.asHash = function(configuration) { })(configuration);
return ret; -} - -exports.walkTree = function(root, visitorFn, nodesProperty, filterFn) { - var nodes = root[nodesProperty]; - var stack = []; - var pushChildNodesOntoStack = function(node) { - exports.foreach(node[nodesProperty], function(childNode) { - stack.push(childNode); - }); - } - - pushChildNodesOntoStack(root); - - while (stack.length > 0) { - var node = stack.pop(); - pushChildNodesOntoStack(node); - - } } \ No newline at end of file
rhq-commits@lists.fedorahosted.org