//<feature logger> Ext.define('Ext.log.writer.Writer', { extend: 'Ext.log.Base', requires: ['Ext.log.formatter.Formatter'], config: { formatter: null, filters: {} }, constructor: function() { this.activeFilters = []; return this.callParent(arguments); }, updateFilters: function(filters) { var activeFilters = this.activeFilters, i, filter; activeFilters.length = 0; for (i in filters) { if (filters.hasOwnProperty(i)) { filter = filters[i]; activeFilters.push(filter); } } }, write: function(event) { var filters = this.activeFilters, formatter = this.getFormatter(), i, ln, filter; for (i = 0,ln = filters.length; i < ln; i++) { filter = filters[i]; if (!filters[i].accept(event)) { return this; } } if (formatter) { event.message = formatter.format(event); } this.doWrite(event); return this; }, // @private doWrite: Ext.emptyFn }); //</feature>