mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-25 11:08:51 +01:00
better error handling when resolving non-existent files, stop using async/await
This commit is contained in:
@@ -10,6 +10,7 @@ import { MainContext, IMainContext, ExtHostFileSystemShape, MainThreadFileSystem
|
||||
import * as vscode from 'vscode';
|
||||
import { IStat } from 'vs/platform/files/common/files';
|
||||
import { IDisposable } from 'vs/base/common/lifecycle';
|
||||
import { asWinJsPromise } from 'vs/base/common/async';
|
||||
|
||||
export class ExtHostFileSystem implements ExtHostFileSystemShape {
|
||||
|
||||
@@ -42,34 +43,34 @@ export class ExtHostFileSystem implements ExtHostFileSystemShape {
|
||||
}
|
||||
|
||||
$utimes(handle: number, resource: URI, mtime: number): TPromise<IStat, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).utimes(resource, mtime));
|
||||
return asWinJsPromise(token => this._provider.get(handle).utimes(resource, mtime));
|
||||
}
|
||||
$stat(handle: number, resource: URI): TPromise<IStat, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).stat(resource));
|
||||
return asWinJsPromise(token => this._provider.get(handle).stat(resource));
|
||||
}
|
||||
$read(handle: number, resource: URI): TPromise<void> {
|
||||
return TPromise.as<any>(this._provider.get(handle).read(resource, {
|
||||
return asWinJsPromise(token => this._provider.get(handle).read(resource, {
|
||||
report: (chunk) => {
|
||||
this._proxy.$reportFileChunk(handle, resource, [].slice.call(chunk));
|
||||
}
|
||||
}));
|
||||
}
|
||||
$write(handle: number, resource: URI, content: number[]): TPromise<void, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).write(resource, Buffer.from(content)));
|
||||
return asWinJsPromise(token => this._provider.get(handle).write(resource, Buffer.from(content)));
|
||||
}
|
||||
$unlink(handle: number, resource: URI): TPromise<void, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).unlink(resource));
|
||||
return asWinJsPromise(token => this._provider.get(handle).unlink(resource));
|
||||
}
|
||||
$move(handle: number, resource: URI, target: URI): TPromise<IStat, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).move(resource, target));
|
||||
return asWinJsPromise(token => this._provider.get(handle).move(resource, target));
|
||||
}
|
||||
$mkdir(handle: number, resource: URI): TPromise<IStat, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).mkdir(resource));
|
||||
return asWinJsPromise(token => this._provider.get(handle).mkdir(resource));
|
||||
}
|
||||
$readdir(handle: number, resource: URI): TPromise<[URI, IStat][], any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).readdir(resource));
|
||||
return asWinJsPromise(token => this._provider.get(handle).readdir(resource));
|
||||
}
|
||||
$rmdir(handle: number, resource: URI): TPromise<void, any> {
|
||||
return TPromise.as<any>(this._provider.get(handle).rmdir(resource));
|
||||
return asWinJsPromise(token => this._provider.get(handle).rmdir(resource));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user