Merge pull request #24376 from marleypowell/marley/provide-default-events-factory
fix: added `eventsServiceFactory` to `defaultServiceFactories`
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
|
||||
```ts
|
||||
import { LoggerService } from '@backstage/backend-plugin-api';
|
||||
import { ServiceFactory } from '@backstage/backend-plugin-api';
|
||||
import { ServiceRef } from '@backstage/backend-plugin-api';
|
||||
|
||||
// @public
|
||||
@@ -61,6 +62,12 @@ export interface EventsService {
|
||||
// @public (undocumented)
|
||||
export type EventsServiceEventHandler = (params: EventParams) => Promise<void>;
|
||||
|
||||
// @public (undocumented)
|
||||
export const eventsServiceFactory: () => ServiceFactory<
|
||||
EventsService,
|
||||
'plugin'
|
||||
>;
|
||||
|
||||
// @public
|
||||
export const eventsServiceRef: ServiceRef<EventsService, 'plugin'>;
|
||||
|
||||
|
||||
@@ -22,4 +22,4 @@
|
||||
|
||||
export * from './api';
|
||||
export * from './deprecated';
|
||||
export { eventsServiceRef } from './service';
|
||||
export { eventsServiceRef, eventsServiceFactory } from './service';
|
||||
|
||||
@@ -30,18 +30,19 @@ import { EventsService, DefaultEventsService } from './api';
|
||||
export const eventsServiceRef = createServiceRef<EventsService>({
|
||||
id: 'events.service',
|
||||
scope: 'plugin',
|
||||
defaultFactory: async service =>
|
||||
createServiceFactory({
|
||||
service,
|
||||
deps: {
|
||||
pluginMetadata: coreServices.pluginMetadata,
|
||||
rootLogger: coreServices.rootLogger,
|
||||
},
|
||||
async createRootContext({ rootLogger }) {
|
||||
return DefaultEventsService.create({ logger: rootLogger });
|
||||
},
|
||||
async factory({ pluginMetadata }, eventsService) {
|
||||
return eventsService.forPlugin(pluginMetadata.getId());
|
||||
},
|
||||
}),
|
||||
});
|
||||
|
||||
/** @public */
|
||||
export const eventsServiceFactory = createServiceFactory({
|
||||
service: eventsServiceRef,
|
||||
deps: {
|
||||
pluginMetadata: coreServices.pluginMetadata,
|
||||
rootLogger: coreServices.rootLogger,
|
||||
},
|
||||
async createRootContext({ rootLogger }) {
|
||||
return DefaultEventsService.create({ logger: rootLogger });
|
||||
},
|
||||
async factory({ pluginMetadata }, eventsService) {
|
||||
return eventsService.forPlugin(pluginMetadata.getId());
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user