///<reference path="./IMacroReader.ts" />
///<reference path="./IMacroReaderResult.ts" />
///<reference path="../IMacroDefinition.ts" /> 
///<reference path="../../Container.ts" />
var econda;
(function (econda) {
    var tagmanager;
    (function (tagmanager) {
        var macro;
        (function (macro) {
            var reader;
            (function (reader) {
                /**
                 * Reads values from data layer
                 * @class econda.tagmanager.macro.reader.MacroReader
                 * @private
                 */
                var MacroReader = (function () {
                    function MacroReader(cfg) {
                        /**
                        * Reference to container
                        * @property {econda.tagmanager.Container} data
                        * @private
                        */
                        this.container = null;
                        this.container = cfg.container;
                    }
                    MacroReader.prototype.readValue = function (macroDefinition) {
                        var nameOfReferencedMacro = macroDefinition.patternSourceName;
                        var value = this.container.getValueByName(nameOfReferencedMacro);
                        return {
                            value: value,
                            success: true
                        };
                    };
                    MacroReader.prototype.readValueWithEvent = function (macroDefinition, eventData) {
                        return {
                            value: undefined,
                            success: false
                        };
                    };
                    return MacroReader;
                }());
                reader.MacroReader = MacroReader;
            })(reader = macro.reader || (macro.reader = {}));
        })(macro = tagmanager.macro || (tagmanager.macro = {}));
    })(tagmanager = econda.tagmanager || (econda.tagmanager = {}));
})(econda || (econda = {}));