/** @packageDocumentation * Plugin Fabrik zur Erzeugung von Plugins * * Letzte Aenderung: 28.06.2021 * Status: gruen * * @module core/plugin * @author SB */ import { Factory } from './../factory/factory'; import { IPluginFactory } from './plugin-factory.interface'; import { IPlugin } from './plugin.interface'; /** * Implementiert die Plugin Fabrik * * @export * @class PluginFactory * @implements {IPluginFactory} */ export declare class PluginFactory extends Factory implements IPluginFactory { /** * Creates an instance of PluginFactory. * * @param {string} aFactoryName - Name der Fabrik */ constructor(aFactoryName?: string); getType(): string; /** * Name der PluginFactory zurueckgeben * * @return {string} factoryName */ getName(): string; protected _newPlugin(aPluginName: string, aPluginClass: string, aRegisterFlag: boolean): IPlugin; /** * Erzeugt ein neues Plugin * * @param [aPluginName] - Instanzen-Name des Plugins * @param [aPluginClass] - Klassen-Name des Plugins * @param [aRegisterFlag] - legt fest, ob Plugin in PluginManager eingetragen wird * * @return {IPlugin} plugin - Instanz des Plugins */ create(aPluginName?: string, aPluginClass?: string, aRegisterFlag?: boolean): IPlugin; }