rem: this.registerAction(actionName, action); 
add: this.registerAction(actionName, action, false);   var waitActionName = actionName + "AndWait"; this.registerAction(waitActionName, action, true); 
context: function CommandFactory() {    this.actions = {};    this.asserts = {};    var self = this;    this.registerAction = function(name, action) {        var handler = new CommandHandler("action", true, action);        this.actions[name] = handler;    }    this.registerAssert = function(name, assertion, haltOnFailure) {        haltOnFailure = (haltOnFailure == undefined) ? false : haltOnFailure;        var handler = new CommandHandler("assert", haltOnFailure, assertion);        this.asserts[name] = handler;    }    this.getCommandHandler = function(name) {        return this.actions[name] || this.asserts[name] || null;    }    this.registerAll = function(commandObject) {        this.registerAllActions(commandObject);        this.registerAllAsserts(commandObject);    }    this.registerAllActions = function(commandObject) {        for (var functionName in commandObject) {            if (/^do([A-Z].+)$/.exec(functionName) != null) {                var actionName = RegExp["$1"].toCamelCase();                var action = commandObject[functionName];                this.registerAction(actionName, action);            }        }    }    this.registerAllAsserts = function(commandObject) {        for (var functionName in commandObject) {            if (/^assert([A-Z].+)$/.exec(functionName) != null) {                var assertName = functionName;                var verifyName = "verify" + RegExp["$1"];                var assert = commandObject[functionName];                this.registerAssert(assertName, assert, true);                this.registerAssert(verifyName, assert, false);            }        }    }}
meta: 3175	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/3175/4ef9dce64cb8bc638dd0887dfc6ace54d10ce2e4/selenium-api.js/clean/javascript/selenium-api.js