UNPKG

@robotlegsjs/core

Version:

An architecture-based IoC framework for JavaScript/TypeScript

54 lines 2.15 kB
"use strict"; // ------------------------------------------------------------------------------ // Copyright (c) 2017-present, RobotlegsJS. All Rights Reserved. // // NOTICE: You are permitted to use, modify, and distribute this file // in accordance with the terms of the license agreement accompanying it. // ------------------------------------------------------------------------------ Object.defineProperty(exports, "__esModule", { value: true }); exports.ObjectProcessor = void 0; var ObjectHandler_1 = require("./ObjectHandler"); /** * Robotlegs object processor * * @private */ var ObjectProcessor = /** @class */ (function () { function ObjectProcessor() { /*============================================================================*/ /* Private Properties */ /*============================================================================*/ this._handlers = []; } /*============================================================================*/ /* Public Functions */ /*============================================================================*/ /** * Add a handler to process objects that match a given matcher. * * @param matcher The matcher * @param handler The handler function */ ObjectProcessor.prototype.addObjectHandler = function (matcher, handler) { this._handlers.push(new ObjectHandler_1.ObjectHandler(matcher, handler)); }; /** * Process an object by running it through all registered handlers * * @param object The object instance to process. */ ObjectProcessor.prototype.processObject = function (object) { this._handlers.forEach(function (handler) { handler.handle(object); }); }; /** * Removes all handlers */ ObjectProcessor.prototype.removeAllHandlers = function () { this._handlers = []; }; return ObjectProcessor; }()); exports.ObjectProcessor = ObjectProcessor; //# sourceMappingURL=ObjectProcessor.js.map