orange-orm
Version:
Object Relational Mapper
19 lines (16 loc) • 712 B
JavaScript
var newSingleCommand = require('./delete/newSingleCommand');
function newCommand(context, queries, table, filter, strategy, relations, concurrencyState) {
var singleCommand = newSingleCommand(context, table, filter, relations, concurrencyState);
for (var name in strategy) {
if (!(strategy[name] === null || strategy[name]))
continue;
var childStrategy = strategy[name];
var childRelation = table._relations[name];
var joinRelation = childRelation.joinRelation;
var childRelations = [joinRelation].concat(relations);
newCommand(context, queries, childRelation.childTable, filter, childStrategy, childRelations);
}
queries.push(singleCommand);
return queries;
}
module.exports = newCommand;