diff --git a/plugins/catalog-backend/src/service/CatalogPlugin.ts b/plugins/catalog-backend/src/service/CatalogPlugin.ts index ed356df5a2..64e1e52494 100644 --- a/plugins/catalog-backend/src/service/CatalogPlugin.ts +++ b/plugins/catalog-backend/src/service/CatalogPlugin.ts @@ -35,12 +35,16 @@ class CatalogExtensionPointImpl implements CatalogProcessingExtensionPoint { #processors = new Array(); #entityProviders = new Array(); - addProcessor(processor: CatalogProcessor): void { - this.#processors.push(processor); + addProcessor( + ...processors: Array> + ): void { + this.#processors.push(...processors.flat()); } - addEntityProvider(provider: EntityProvider): void { - this.#entityProviders.push(provider); + addEntityProvider( + ...providers: Array> + ): void { + this.#entityProviders.push(...providers.flat()); } get processors() { diff --git a/plugins/catalog-node/api-report.md b/plugins/catalog-node/api-report.md index 46e3efef99..26617910b9 100644 --- a/plugins/catalog-node/api-report.md +++ b/plugins/catalog-node/api-report.md @@ -13,9 +13,13 @@ import { JsonValue } from '@backstage/types'; // @alpha (undocumented) export interface CatalogProcessingExtensionPoint { // (undocumented) - addEntityProvider(provider: EntityProvider): void; + addEntityProvider( + ...providers: Array> + ): void; // (undocumented) - addProcessor(processor: CatalogProcessor): void; + addProcessor( + ...processors: Array> + ): void; } // @alpha (undocumented) diff --git a/plugins/catalog-node/src/extensions.ts b/plugins/catalog-node/src/extensions.ts index 80fbd7630f..8dd9d8579a 100644 --- a/plugins/catalog-node/src/extensions.ts +++ b/plugins/catalog-node/src/extensions.ts @@ -21,8 +21,12 @@ import { CatalogProcessor } from './api/processor'; * @alpha */ export interface CatalogProcessingExtensionPoint { - addProcessor(processor: CatalogProcessor): void; - addEntityProvider(provider: EntityProvider): void; + addProcessor( + ...processors: Array> + ): void; + addEntityProvider( + ...providers: Array> + ): void; } /**