MCPcopy
hub / github.com/PowerShell/vscode-powershell / setSessionStatus

Method setSessionStatus

src/session.ts:1202–1252  ·  view source on GitHub ↗
(detail: string, status: SessionStatus)

Source from the content-addressed store, hash-verified

1200 }
1201
1202 private setSessionStatus(detail: string, status: SessionStatus): void {
1203 this.logger.writeDebug(
1204 `Session status changing from '${this.sessionStatus}' to '${status}'.`,
1205 );
1206 this.sessionStatus = status;
1207 this.languageStatusItem.text = "$(terminal-powershell)";
1208 this.languageStatusItem.detail = "PowerShell";
1209
1210 if (this.versionDetails !== undefined) {
1211 const semver = new SemVer(this.versionDetails.version);
1212 this.languageStatusItem.text += ` ${semver.major}.${semver.minor}`;
1213 this.languageStatusItem.detail += ` ${this.versionDetails.commit} (${this.versionDetails.architecture.toLowerCase()})`;
1214 } else if (this.PowerShellExeDetails?.displayName) {
1215 // When it hasn't started yet.
1216 this.languageStatusItem.text += ` ${this.PowerShellExeDetails.displayName}`;
1217 this.languageStatusItem.detail += ` at '${this.PowerShellExeDetails.exePath}'`;
1218 } else if (this.sessionSettings.powerShellDefaultVersion) {
1219 // When it hasn't been found yet.
1220 this.languageStatusItem.text += ` ${this.sessionSettings.powerShellDefaultVersion}`;
1221 this.languageStatusItem.detail = `Looking for '${this.sessionSettings.powerShellDefaultVersion}'...`;
1222 }
1223
1224 if (detail) {
1225 this.languageStatusItem.detail += ": " + detail;
1226 }
1227
1228 switch (status) {
1229 case SessionStatus.Running:
1230 case SessionStatus.NotStarted:
1231 this.languageStatusItem.busy = false;
1232 this.languageStatusItem.severity =
1233 vscode.LanguageStatusSeverity.Information;
1234 break;
1235 case SessionStatus.Busy:
1236 this.languageStatusItem.busy = true;
1237 this.languageStatusItem.severity =
1238 vscode.LanguageStatusSeverity.Information;
1239 break;
1240 case SessionStatus.Starting:
1241 case SessionStatus.Stopping:
1242 this.languageStatusItem.busy = true;
1243 this.languageStatusItem.severity =
1244 vscode.LanguageStatusSeverity.Warning;
1245 break;
1246 case SessionStatus.Failed:
1247 this.languageStatusItem.busy = false;
1248 this.languageStatusItem.severity =
1249 vscode.LanguageStatusSeverity.Error;
1250 break;
1251 }
1252 }
1253
1254 // Refreshes the Language Status Item details with ehe same status.
1255 private refreshSessionStatus(): void {

Callers 9

startMethod · 0.95
stopMethod · 0.95
refreshSessionStatusMethod · 0.95
setSessionBusyStatusMethod · 0.95

Calls 1

writeDebugMethod · 0.65

Tested by

no test coverage detected