LiskArchive / lisk-sdk

🔩 Lisk software development kit
https://lisk.com
Apache License 2.0
2.72k stars 457 forks source link

Implement load and init methods of RecoveryPlugin class #9183

Open ishantiw opened 6 months ago

ishantiw commented 6 months ago

Description

Implement load and init methods of RecoveryPlugin class

class RecoveryPlugin extends BasePlugin {
        private _recoveryManager: SidechainRecoveryManager | MainchainRecoveryManager;

    init(context: PluginInitContext<Record<string, unknown>>): Promise<void> {
        // assign all the config params
    }

    load(): Promise<void> {
        // check whether the chain is mainchain or sidechain

        if (mainchain) {
            this._recoveryManager = new MainchainRecoveryManager()
        } else {
                  // check for mainchainIPC/WS path in config and create               
                     mainchainClient and pass mainchainClient
            this._recoveryManager = new SidechainRecoveryManager()
        }
    }

       // call clean up on RecoveryManager to cleanup apiClients before app shutdown
        unload () {}
}

Acceptance Criteria