lib/Operation.js
/**
 * @param name the name of the operation
 * @param implementation the implementation of the operation (a function to be executed when operation is invoked)
 * @constructor
 */
@param name the name of the operation
@param implementation the implementation of the operation (a function to be executed when operation is invoked)
@constructor
@param name the name of the operation @param implementation the implementation of the operation ( a function to be executed when operation is invoked ) @constructor
function Operation(name, implementation) {
    if (!name) throw new Error("ERROR: Name must be provided when constructing an Operation");
    if (!implementation || !(typeof implementation === "function")) throw new Error("ERROR: Value must be provided when constructing an Operation, and it must be a function");
    this._name = name;
    this._implementation = implementation;
}
function Operation ( name , implementation ) { if ( ! name ) throw new Error ( "ERROR: Name must be provided when constructing an Operation" ) ; if ( ! implementation || ! ( typeof implementation === "function" ) ) throw new Error ( "ERROR: Value must be provided when constructing an Operation, and it must be a function" ) ; this . _name = name ; this . _implementation = implementation ; }
@param name the name of the operation
 @param implementation the implementation of the operation (a function to be executed when operation is invoked)
 @constructor
@param name the name of the operation @param implementation the implementation of the operation ( a function to be executed when operation is invoked ) @constructor