mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-03-29 16:20:29 -04:00
* Updated Postgres Spec for where to find engine version, removed calling calling -ev in edit commands (#14735) * Added spec.engine.version, took out calling engine version with edit calls * Added text wrong place * missed updates * PR fix * Update Arc Postgres troubleshooting notebook Co-authored-by: Brian Bergeron <brberger@microsoft.com> * Remove AzdataSession from azdata commands (#14856) * remove session * Add in controller-context support * Revert "Add in controller-context support" This reverts commit 3b39b968efbf6054041cb01cb2d8443532643a82. * Add azdataContext to login * Undo book change * Undo change correctly * Add controller context support (#14862) * remove session * Add in controller-context support * Add params to fake * Fix tests * Add info and placeholder for controller URL/name (#14887) * Add info and placeholder for controller URL * add period + update name * update memento and allow editing of namespace/URL * vBump * vBump * Fix tests Co-authored-by: nasc17 <69922333+nasc17@users.noreply.github.com> Co-authored-by: Brian Bergeron <brian.e.bergeron@gmail.com> Co-authored-by: Brian Bergeron <brberger@microsoft.com>
68 lines
3.6 KiB
TypeScript
68 lines
3.6 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import * as vscode from 'vscode';
|
|
import * as azdata from 'azdata';
|
|
import * as loc from '../../../localizedConstants';
|
|
import { ControllerModel } from '../../../models/controllerModel';
|
|
import { PostgresModel } from '../../../models/postgresModel';
|
|
import { PostgresOverviewPage } from './postgresOverviewPage';
|
|
import { PostgresConnectionStringsPage } from './postgresConnectionStringsPage';
|
|
import { Dashboard } from '../../components/dashboard';
|
|
import { PostgresDiagnoseAndSolveProblemsPage } from './postgresDiagnoseAndSolveProblemsPage';
|
|
import { PostgresSupportRequestPage } from './postgresSupportRequestPage';
|
|
import { PostgresComputeAndStoragePage } from './postgresComputeAndStoragePage';
|
|
import { PostgresWorkerNodeParametersPage } from './postgresWorkerNodeParametersPage';
|
|
import { PostgresPropertiesPage } from './postgresPropertiesPage';
|
|
import { PostgresResourceHealthPage } from './postgresResourceHealthPage';
|
|
|
|
export class PostgresDashboard extends Dashboard {
|
|
constructor(private _context: vscode.ExtensionContext, private _controllerModel: ControllerModel, private _postgresModel: PostgresModel) {
|
|
super(loc.postgresDashboard(_postgresModel.info.name), 'ArcPgDashboard');
|
|
}
|
|
|
|
public async showDashboard(): Promise<void> {
|
|
await super.showDashboard();
|
|
|
|
// Kick off the model refresh but don't wait on it since that's all handled with callbacks anyways
|
|
this._controllerModel.refresh().catch(err => console.log(`Error refreshing controller model for Postgres dashboard ${err}`));
|
|
this._postgresModel.refresh().catch(err => console.log(`Error refreshing Postgres model for Postgres dashboard ${err}`));
|
|
}
|
|
|
|
protected async registerTabs(modelView: azdata.ModelView): Promise<(azdata.DashboardTab | azdata.DashboardTabGroup)[]> {
|
|
const overviewPage = new PostgresOverviewPage(modelView, this.dashboard, this._controllerModel, this._postgresModel);
|
|
const connectionStringsPage = new PostgresConnectionStringsPage(modelView, this.dashboard, this._postgresModel);
|
|
const computeAndStoragePage = new PostgresComputeAndStoragePage(modelView, this.dashboard, this._postgresModel);
|
|
const propertiesPage = new PostgresPropertiesPage(modelView, this.dashboard, this._controllerModel, this._postgresModel);
|
|
// TODO Add dashboard once backend is able to be connected for per role server parameter edits.
|
|
// const coordinatorNodeParametersPage = new PostgresCoordinatorNodeParametersPage(modelView, this._postgresModel);
|
|
const workerNodeParametersPage = new PostgresWorkerNodeParametersPage(modelView, this.dashboard, this._postgresModel);
|
|
const diagnoseAndSolveProblemsPage = new PostgresDiagnoseAndSolveProblemsPage(modelView, this.dashboard, this._context, this._controllerModel, this._postgresModel);
|
|
const supportRequestPage = new PostgresSupportRequestPage(modelView, this.dashboard, this._controllerModel, this._postgresModel);
|
|
const resourceHealthPage = new PostgresResourceHealthPage(modelView, this.dashboard, this._postgresModel);
|
|
|
|
return [
|
|
overviewPage.tab,
|
|
{
|
|
title: loc.settings,
|
|
tabs: [
|
|
propertiesPage.tab,
|
|
connectionStringsPage.tab,
|
|
computeAndStoragePage.tab,
|
|
workerNodeParametersPage.tab
|
|
]
|
|
},
|
|
{
|
|
title: loc.supportAndTroubleshooting,
|
|
tabs: [
|
|
resourceHealthPage.tab,
|
|
diagnoseAndSolveProblemsPage.tab,
|
|
supportRequestPage.tab
|
|
]
|
|
}
|
|
];
|
|
}
|
|
}
|