Skip to content

Commit dac35f0

Browse files
committed
Adds custom saved object repository
Signed-off-by: Bandini Bhopi <bandinib@amazon.com>
1 parent 89213eb commit dac35f0

File tree

3 files changed

+1190
-15
lines changed

3 files changed

+1190
-15
lines changed

server/plugin.ts

+5-15
Original file line numberDiff line numberDiff line change
@@ -12,47 +12,37 @@ import {
1212
} from '../../../src/core/server';
1313
import { MetadataPluginSetup, MetadataPluginStart } from './types';
1414
import { defineRoutes } from './routes';
15-
import { PostgresClientWrapper } from './saved_object_wrapper';
1615
import { MetaStorageConfigType } from '.';
16+
import { PostgresRepository, repositoryFactoryProvider } from './postgres_repository';
1717

1818
export class MetadataPlugin implements Plugin<MetadataPluginSetup, MetadataPluginStart> {
1919
private readonly logger: Logger;
20-
private savedObjectClientWrapper: PostgresClientWrapper;
2120
private readonly config$;
22-
private config: MetaStorageConfigType;
2321

2422
constructor(initializerContext: PluginInitializerContext) {
2523
this.logger = initializerContext.logger.get();
26-
this.savedObjectClientWrapper = new PostgresClientWrapper();
2724
this.config$ = initializerContext.config.create<MetaStorageConfigType>();
2825
}
2926

3027
public async setup(core: CoreSetup) {
3128
this.logger.info('metadata-plugin: Setup');
3229

33-
this.config = await this.config$.pipe(first()).toPromise();
30+
const config = await this.config$.pipe(first()).toPromise();
3431

3532
const router = core.http.createRouter();
3633

3734
// Register server side APIs
3835
defineRoutes(router);
3936

40-
core.savedObjects.addClientWrapper(
41-
0,
42-
'postgres-saved-object-client-wrapper',
43-
this.savedObjectClientWrapper.wrapperFactory
44-
);
37+
PostgresRepository.metaSrorageConfig = config;
38+
39+
core.savedObjects.registerRepositoryFactoryProvider(repositoryFactoryProvider);
4540

4641
return {};
4742
}
4843

4944
public async start(core: CoreStart) {
5045
this.logger.info('metadata-plugin: Started');
51-
52-
this.savedObjectClientWrapper.typeRegistry = core.savedObjects.getTypeRegistry();
53-
console.log(`this.savedObjectClientWrapper.typeRegistry : ${this.savedObjectClientWrapper.typeRegistry}`);
54-
this.savedObjectClientWrapper.metaSrorageConfig = this.config;
55-
this.savedObjectClientWrapper.setup();
5646
return {};
5747
}
5848

0 commit comments

Comments
 (0)