Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 15 additions & 8 deletions packages/core/src/awsService/cloudformation/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import {
CloseHandlerResult,
} from 'vscode-languageclient/node'
import { CloseAction, ErrorAction, Message } from 'vscode-languageclient/node'
import { formatMessage, toString } from './utils'
import { toString } from './utils'
import globals from '../../shared/extensionGlobals'
import { getServiceEnvVarConfig } from '../../shared/vscode/env'
import { DevSettings } from '../../shared/settings'
Expand Down Expand Up @@ -167,21 +167,30 @@ async function startClient(context: ExtensionContext) {
},
errorHandler: {
error: (error: Error, message: Message | undefined, count: number | undefined): ErrorHandlerResult => {
void window.showErrorMessage(formatMessage(`Error count = ${count}): ${toString(message)}`))
getLogger().warn(`CloudFormation LSP error (count: ${count}): ${toString(message)}`)
return { action: ErrorAction.Continue }
},
closed: (): CloseHandlerResult => {
void window.showWarningMessage(formatMessage(`Server connection closed`))
return { action: CloseAction.DoNotRestart }
getLogger().info('CloudFormation LSP connection closed')
return { action: CloseAction.DoNotRestart, message: '' }
},
},
initializationFailedHandler: () => {
getLogger().error('CloudFormation LSP initialization failed')
return false
},
}

client = new LanguageClient(ExtensionId, ExtensionName, serverOptions, clientOptions)

const stacksManager = new StacksManager(client)

await client.start()
try {
await client.start()
} catch (error) {
getLogger().error(`CloudFormation LSP failed to start: ${toString(error)}`)
return
}

const documentManager = new DocumentManager(client)
const resourceSelector = new ResourceSelector(client)
Expand Down Expand Up @@ -322,9 +331,7 @@ export async function activate(context: ExtensionContext) {
try {
await restartClient(context)
} catch (error) {
void window.showErrorMessage(
formatMessage(`Failed to restart CloudFormation language server: ${toString(error)}`)
)
getLogger().error(`Failed to restart CloudFormation language server: ${toString(error)}`)
}
})
)
Expand Down
Loading