/** @packageDocumentation * PluginGroup als Manager fuer Plugins. * * Letzte Aenderung: 28.06.2021 * Status: gruen * * @module core/plugin * @author SB */ import { PluginList } from './plugin-list'; import { IPlugin } from './plugin.interface'; import { Plugin } from './plugin'; import { IPluginGroup } from './plugin-group.interface'; /** * Definiert die Basisklasse aller PluginGroup */ export declare class PluginGroup extends Plugin implements IPluginGroup { /** * Liste aller eingefuegten Plugins * * @type {PluginList} */ protected mPluginList: PluginList; /** * Aktuell ausgewaehltes Plugin * * @type {Plugin} */ protected mCurrentPlugin: IPlugin; /** * Erzeugt eine Instanz von PluginGroup * * @param {string} aPluginGroupName - Name der PluginGroup * @param {boolean} aRegisterFlag - wenn true, dann wird PluginGroup in PluginManager eingetragen */ constructor(aPluginGroupName: string, aRegisterFlag?: boolean); getType(): string; getClass(): string; /** * Initalisiert die PluginGroup * * @param {any} aOption - optionale Parameter * @return {number} Fehlercode 0 oder -1 */ init(aOption?: any): number; /** * Gibt die PluginGroup frei * * @return {number} Fehlercode 0 oder -1 */ done(): number; /** * Konfiguration der PluginGroup eintragen * * @param {*} aFeatureInfo - Informationen zu den Features der PluginGroup * * @return {number} errorCode(0,-1) */ setFeatureList(aFeatureInfo: any): number; /** * Fehlerausgabe ueber die Konsole ein/ausschalten * * @protected * @param {boolean} aErrorOutputFlag - True, wenn Konsolenausgabe ein */ setErrorOutput(aErrorOutputFlag: boolean): void; /** * Einfuegen eines Plugins in die Komponente * * @param {string} aPluginName - Name des Plugins * @param {IPlugin} aPlugin - Plugin * * @return {number} errorCode(0,-1) - Fehlercode */ insertPlugin(aPluginName: string, aPlugin: IPlugin): number; /** * Entfernt das Plugin aus der Komponente * * @param {string} aPluginName - Name des Plugins * * @return {number} errorCode (0,-1) - Fehlercode */ removePlugin(aPluginName: string): number; /** * Entfernt alle Plugins aus der Komponente * * @return {number} errorCode (0,-1) - Fehlercode */ removeAllPlugin(): number; /** * Rueckgabe eines Plugins oder null, wenn das Plugin nicht gefunden wurde * * @param {string} aPluginName - Name des Plugins * * @return {IPlugin} - Rueckgabe des Plugins oder null */ findPlugin(aPluginName: string, aPluginType?: string): IPlugin; firstPlugin(): IPlugin; nextPlugin(): IPlugin; /** * Rueckgabe aller Plugin-Namen * * @return {Array} Liste aller Plugin-Namen */ getPluginNameList(): Array; /** * Aktuelles Plugins pruefen * * @return {boolean} True, aktuelles Plugin vorhanden, False sonst */ isCurrentPlugin(): boolean; /** * Existierendes Plugin zum ausgewaehlten Plugin machen. * * @param {string} aPluginName - Name des Plugins, welches zum aktuellen Plugin werden soll * * @return {number} Fehlercode 0 oder -1 */ setCurrentPlugin(aPluginName: string): number; /** * Aktuelles Plugin zurueckgeben * * @return {IPlugin} Rueckgabe des aktuellen Plugins oder null */ getCurrentPlugin(): IPlugin; /** * Rueckgabe des aktuellen Plugin-Namens * * @return {string} Name des Plugins oder '' */ getCurrentPluginName(): string; /** * pruefen, ob Plugin bereits eingefuegt wurde * * @param {string} aPluginName - Name des Plugins * * @return {boolean} pluginFlag - true, Plugin ist vorhanden */ isPlugin(aPluginName: string): boolean; /** * Anzahl der enthaltenen Plugins zurueckgeben * * @return {number} size */ getPluginSize(): number; /** * startet ein registriertes Plugin * * @param {string} aPluginName - Name des Plugins * @param {any} [aOption] - Optionale Parameter fuer das Plugin * * @return {number} errorCode (0,-1) - Fehlercode */ startPlugin(aPluginName: string, aOption?: any): number; /** * stoppt ein registriertes Plugin * * @param {string} aPluginName - Name des Plugins * * @return {number} errorCode (0,-1) - Fehlercode * @memberof PluginManager */ stopPlugin(aPluginName: string): number; /** * Startet alle registrierten Plugins * * @param {any} [aOption] - optionale Parameter fuer alle Plugins * * @return {number} errorCode (0,-1) - Fehlercode * @memberof PluginManager */ startAllPlugin(aOption?: any): number; /** * stoppt alle registrierten Plugins * * @return {number} errorCode (0,-1) - Fehlercode * @memberof PluginManager */ stopAllPlugin(): number; /** * setzt Errorausgabe ein/aus fuer alle Plugins * * @private * @param {boolean} aErrorOutputFlag - bestimmt die Ausgabe von Fehlern * * @return {number} errorCode (0,-1) - Fehlercode */ protected _setErrorOutputAllPlugin(aErrorOutputFlag: boolean): number; }