提交 1958209d 编写于 作者: M Matt Bierner

Include server id in TS server errors

上级 cc799ebf
...@@ -189,7 +189,7 @@ export class ProcessBasedTsServer extends Disposable implements ITypeScriptServe ...@@ -189,7 +189,7 @@ export class ProcessBasedTsServer extends Disposable implements ITypeScriptServe
// Special case where response itself is successful but there is not any data to return. // Special case where response itself is successful but there is not any data to return.
callback.onSuccess(ServerResponse.NoContent); callback.onSuccess(ServerResponse.NoContent);
} else { } else {
callback.onError(TypeScriptServerError.create(this._version, response)); callback.onError(TypeScriptServerError.create(this._serverId, this._version, response));
} }
} }
......
...@@ -9,20 +9,22 @@ import { TypeScriptVersion } from '../utils/versionProvider'; ...@@ -9,20 +9,22 @@ import { TypeScriptVersion } from '../utils/versionProvider';
export class TypeScriptServerError extends Error { export class TypeScriptServerError extends Error {
public static create( public static create(
serverId: string,
version: TypeScriptVersion, version: TypeScriptVersion,
response: Proto.Response response: Proto.Response
): TypeScriptServerError { ): TypeScriptServerError {
const parsedResult = TypeScriptServerError.parseErrorText(version, response); const parsedResult = TypeScriptServerError.parseErrorText(version, response);
return new TypeScriptServerError(version, response, parsedResult ? parsedResult.message : undefined, parsedResult ? parsedResult.stack : undefined); return new TypeScriptServerError(serverId, version, response, parsedResult ? parsedResult.message : undefined, parsedResult ? parsedResult.stack : undefined);
} }
private constructor( private constructor(
serverId: string,
version: TypeScriptVersion, version: TypeScriptVersion,
private readonly response: Proto.Response, private readonly response: Proto.Response,
public readonly serverMessage: string | undefined, public readonly serverMessage: string | undefined,
public readonly serverStack: string | undefined public readonly serverStack: string | undefined
) { ) {
super(`TypeScript Server Error (${version.versionString})\n${serverMessage}\n${serverStack}`); super(`<${serverId}> TypeScript Server Error (${version.versionString})\n${serverMessage}\n${serverStack}`);
} }
public get serverErrorText() { return this.response.message; } public get serverErrorText() { return this.response.message; }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册