ATL-983: Propose installing the required libs.

Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
Akos Kitta
2021-02-22 16:57:17 +01:00
committed by Akos Kitta
parent 0aef4b328f
commit 057904d38d
11 changed files with 253 additions and 103 deletions

View File

@@ -11,12 +11,12 @@ import {
PlatformListResp, Platform, PlatformUninstallResp, PlatformUninstallReq
} from './cli-protocol/commands/core_pb';
import { BoardDiscovery } from './board-discovery';
import { CoreClientProvider } from './core-client-provider';
import { CoreClientAware } from './core-client-provider';
import { BoardDetailsReq, BoardDetailsResp } from './cli-protocol/commands/board_pb';
import { ListProgrammersAvailableForUploadReq, ListProgrammersAvailableForUploadResp } from './cli-protocol/commands/upload_pb';
@injectable()
export class BoardsServiceImpl implements BoardsService {
export class BoardsServiceImpl extends CoreClientAware implements BoardsService {
@inject(ILogger)
protected logger: ILogger;
@@ -25,9 +25,6 @@ export class BoardsServiceImpl implements BoardsService {
@named('discovery')
protected discoveryLogger: ILogger;
@inject(CoreClientProvider)
protected readonly coreClientProvider: CoreClientProvider;
@inject(OutputService)
protected readonly outputService: OutputService;
@@ -49,25 +46,6 @@ export class BoardsServiceImpl implements BoardsService {
return this.boardDiscovery.getAvailablePorts();
}
private async coreClient(): Promise<CoreClientProvider.Client> {
const coreClient = await new Promise<CoreClientProvider.Client>(async resolve => {
const client = await this.coreClientProvider.client();
if (client) {
resolve(client);
return;
}
const toDispose = this.coreClientProvider.onClientReady(async () => {
const client = await this.coreClientProvider.client();
if (client) {
toDispose.dispose();
resolve(client);
return;
}
});
});
return coreClient;
}
async getBoardDetails(options: { fqbn: string }): Promise<BoardDetails | undefined> {
const coreClient = await this.coreClient();
const { client, instance } = coreClient;