99 SavedObjectsBaseOptions ,
1010 PluginInitializerContext ,
1111 CoreSetup ,
12- SavedObjectsLegacyService ,
13- KibanaRequest ,
14- LegacyRequest ,
1512} from 'src/core/server' ;
1613import { first } from 'rxjs/operators' ;
1714import { createConfig$ } from './config' ;
@@ -37,7 +34,6 @@ export interface PluginStartContract extends SavedObjectsSetup {
3734 * to function properly.
3835 */
3936export interface LegacyAPI {
40- savedObjects : SavedObjectsLegacyService < KibanaRequest | LegacyRequest > ;
4137 auditLogger : {
4238 log : ( eventType : string , message : string , data ?: Record < string , unknown > ) => void ;
4339 } ;
@@ -48,7 +44,7 @@ export interface LegacyAPI {
4844 */
4945export class Plugin {
5046 private readonly logger : Logger ;
51- private savedObjectsSetup ?: ReturnType < typeof setupSavedObjects > ;
47+ private savedObjectsSetup ! : SavedObjectsSetup ;
5248
5349 private legacyAPI ?: LegacyAPI ;
5450 private readonly getLegacyAPI = ( ) => {
@@ -66,7 +62,6 @@ export class Plugin {
6662 const config = await createConfig$ ( this . initializerContext )
6763 . pipe ( first ( ) )
6864 . toPromise ( ) ;
69- const adminClusterClient = await core . elasticsearch . adminClient$ . pipe ( first ( ) ) . toPromise ( ) ;
7065
7166 const service = Object . freeze (
7267 new EncryptedSavedObjectsService (
@@ -76,19 +71,12 @@ export class Plugin {
7671 )
7772 ) ;
7873
74+ this . savedObjectsSetup = setupSavedObjects ( { service, savedObjects : core . savedObjects } ) ;
75+
7976 return {
8077 registerType : ( typeRegistration : EncryptedSavedObjectTypeRegistration ) =>
8178 service . registerType ( typeRegistration ) ,
82- __legacyCompat : {
83- registerLegacyAPI : ( legacyAPI : LegacyAPI ) => {
84- this . legacyAPI = legacyAPI ;
85- this . savedObjectsSetup = setupSavedObjects ( {
86- adminClusterClient,
87- service,
88- savedObjects : legacyAPI . savedObjects ,
89- } ) ;
90- } ,
91- } ,
79+ __legacyCompat : { registerLegacyAPI : ( legacyAPI : LegacyAPI ) => ( this . legacyAPI = legacyAPI ) } ,
9280 } ;
9381 }
9482
@@ -98,10 +86,6 @@ export class Plugin {
9886 return {
9987 isEncryptionError : ( error : Error ) => error instanceof EncryptionError ,
10088 getDecryptedAsInternalUser : ( type : string , id : string , options ?: SavedObjectsBaseOptions ) => {
101- if ( ! this . savedObjectsSetup ) {
102- throw new Error ( 'Legacy SavedObjects API is not registered!' ) ;
103- }
104-
10589 return this . savedObjectsSetup . getDecryptedAsInternalUser ( type , id , options ) ;
10690 } ,
10791 } ;
0 commit comments