"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.cast_de_nrw_schule_svws_core_Service = exports.Service = void 0;
const JavaObject_1 = require("../java/lang/JavaObject");
const Logger_1 = require("../logger/Logger");
const LogConsumerVector_1 = require("../logger/LogConsumerVector");
class Service extends JavaObject_1.JavaObject {
    logger = new Logger_1.Logger();
    log = new LogConsumerVector_1.LogConsumerVector();
    /**
     * Erstellt einen neuen Service, dessen Logger automatisch in einen Vector loggt.
     */
    constructor() {
        super();
        this.logger.addConsumer(this.log);
    }
    /**
     * Gibt die Logger-Instanz von diesem Service zurück.
     *
     * @return die Logger-Instanz.
     */
    getLogger() {
        return this.logger;
    }
    /**
     * Gibt das Log dieses Services zurück.
     *
     * @return das Log dieses Services
     */
    getLog() {
        return this.log;
    }
    isTranspiledInstanceOf(name) {
        return ['de.nrw.schule.svws.core.Service'].includes(name);
    }
}
exports.Service = Service;
function cast_de_nrw_schule_svws_core_Service(obj) {
    return obj;
}
exports.cast_de_nrw_schule_svws_core_Service = cast_de_nrw_schule_svws_core_Service;
//# sourceMappingURL=Service.js.map