Compare commits

..

2 Commits

Author SHA1 Message Date
Levi Yan
781518976e release 0.3.9 2025-06-22 16:22:55 +08:00
Levi Yan
c18fc24016 refactor(main): if devstarDomain_sessionId exist and isn't null, use it first 2025-06-22 16:22:33 +08:00
2 changed files with 14 additions and 6 deletions

View File

@@ -2,7 +2,7 @@
"name": "devstar",
"displayName": "%displayName%",
"description": "%description%",
"version": "0.3.8",
"version": "0.3.9",
"keywords": [],
"publisher": "mengning",
"engines": {

View File

@@ -28,16 +28,24 @@ export class DevStarExtension {
// 如果global state中devstarDomain的值不为空则在global state中存储一个键值对为devstarDomain_<sessionId>和devstar domain并把devstarDomain的值置空.
// 这时如果remote窗口需要打开项目且global state中的devstarDomain_<sessionId>键存在、值不为空,
// 则取出并清掉devstarDomain_<sessionId>键值对并通过参数将devstar domain传递给/openProjectSkippingLoginCheck由其将devstar domain继续存储在devstarDomain中
const devstarDomain: string|undefined = context.globalState.get('devstarDomain')
if (devstarDomain != undefined && devstarDomain != "") {
// 则取出其值并通过参数将devstar domain传递给/openProjectSkippingLoginCheck
//
// 如果global state中devstarDomain_<sessionId>存在,直接使用
const devstarDomain_sessionId: string | undefined = context.globalState.get('devstarDomain_' + vscode.env.sessionId)
const devstarDomain: string | undefined = context.globalState.get('devstarDomain')
if (devstarDomain_sessionId != undefined && devstarDomain_sessionId != "") {
this.user = new User(context, devstarDomain_sessionId)
this.remoteContainer = new RemoteContainer(this.user);
this.dsHome = new DSHome(context, this.user, devstarDomain_sessionId)
} else if (devstarDomain != undefined && devstarDomain != "") {
console.log('domain in global state', devstarDomain)
// global state中存在devstarDomain
this.user = new User(context, devstarDomain)
this.remoteContainer = new RemoteContainer(this.user);
this.dsHome = new DSHome(context, this.user, devstarDomain)
context.globalState.update('devstarDomain_'+vscode.env.sessionId, devstarDomain)
context.globalState.update('devstarDomain_' + vscode.env.sessionId, devstarDomain)
context.globalState.update('devstarDomain', "")
} else {
this.user = new User(context);
@@ -72,7 +80,7 @@ export class DevStarExtension {
// 修改user、remote-container、home中的devstar domain和hostname
this.user.setDevstarDomain(devstarDomain)
this.remoteContainer.setUser(this.user)
this.dsHome.setDevstarDomain(devstarDomain)
this.dsHome.setDevstarDomainAndHomePageURL(devstarDomain)
this.dsHome.setUser(this.user)
this.dsHome.setRemoteContainer(this.remoteContainer)
vscode.commands.executeCommand('devstar.showHome');