Skip to content
Snippets Groups Projects
Select Git revision
  • ac97ce5ab2a49171baf844b97b6ddb193d552b8e
  • master default protected
  • 1.31
  • 4.24.3
  • 4.24.2
  • 4.24.1
  • 4.24.0
  • 4.23.6
  • 4.23.5
  • 4.23.4
  • 4.23.3
  • 4.23.2
  • 4.23.1
  • 4.23.0
  • 4.22.3
  • 4.22.2
  • 4.22.1
  • 4.22.0
  • 4.21.0
  • 4.20.1
  • 4.20.0
  • 4.19.0
  • 4.18.0
23 results

oroperator.js

Blame
  • handler.mjs 3.04 KiB
    
    
    /**
     * @author schukai GmbH
     */
    
    import {Base} from '../types/base.mjs';
    import {validateInstance, validateInteger} from "../types/validate.mjs";
    import {LogEntry} from "./logentry.mjs";
    import {ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN} from "./logger.mjs";
    
    export {Handler}
    
    /**
     * The log handler is the interface between the log entries and the log listeners.
     * 
     * ```
     * <script type="module">
     * import {ID} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@latest/source/logging/handler.mjs';
     * console.log(new Handler())
     * </script>
     * ```
     *
     * @since 1.5.0
     * @copyright schukai GmbH
     * @memberOf Monster.Logging
     */
     class Handler extends Base {
        constructor() {
            super();
    
            /**
             * Loglevel
             *
             * @type {integer}
             */
            this.loglevel = OFF;
        }
    
        /**
         * This is the central log function. this method must be
         * overwritten by derived handlers with their own logic.
         *
         * ALL > TRACE > DEBUG > INFO > WARN > ERROR > FATAL > OFF  (ALL = 0xff;OFF = 0x00;
         *
         * @param {LogEntry} entry
         * @returns {boolean}
         */
        log(entry) {
            validateInstance(entry, LogEntry);
    
            if (this.loglevel < entry.getLogLevel()) {
                return false;
            }
    
            return true;
        }
    
        /**
         * set loglevel
         *
         * @param {integer} loglevel
         * @returns {Handler}
         * @since 1.5.0
         */
        setLogLevel(loglevel) {
            validateInteger(loglevel)
            this.loglevel = loglevel;
            return this;
        }