Add migration service calls to migration wizard (#12090)

* Hook up migration apis WIP

* WIP 2

* WIP 3

* Fix build breaks

* Break 2

* WIP 4

* SKU recommendation page work

* WIP 5

* A few minor fixes

* Merge main

* Add back assessment dialog

* Address feedback

Co-authored-by: Amir Omidi <amomidi@microsoft.com>
This commit is contained in:
Karl Burtram
2020-09-02 16:15:39 -07:00
committed by GitHub
parent 65e253ae0d
commit c5e90d0236
11 changed files with 290 additions and 15 deletions

View File

@@ -0,0 +1,43 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the Source EULA. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as mssql from '../mssql';
import { AppContext } from '../appContext';
import { SqlOpsDataClient, ISqlOpsFeature } from 'dataprotocol-client';
import { ClientCapabilities } from 'vscode-languageclient';
import * as constants from '../constants';
import * as contracts from '../contracts';
export class SqlMigrationService implements mssql.ISqlMigrationService {
public static asFeature(context: AppContext): ISqlOpsFeature {
return class extends SqlMigrationService {
constructor(client: SqlOpsDataClient) {
super(context, client);
}
fillClientCapabilities(capabilities: ClientCapabilities): void {
}
initialize(): void {
}
};
}
private constructor(context: AppContext, protected readonly client: SqlOpsDataClient) {
context.registerService(constants.SqlMigrationService, this);
}
async getAssessments(ownerUri: string): Promise<mssql.SqlMigrationAssessmentResult | undefined> {
let params: contracts.SqlMigrationAssessmentParams = { ownerUri: ownerUri };
try {
return this.client.sendRequest(contracts.GetSqlMigrationAssessmentItemsRequest.type, params);
}
catch (e) {
this.client.logFailedRequest(contracts.GetSqlMigrationAssessmentItemsRequest.type, e);
}
return undefined;
}
}