提交 948c258a 编写于 作者: J Johannes Rieken

💄 #1800

上级 3bdfca7c
......@@ -4,7 +4,6 @@
*--------------------------------------------------------------------------------------------*/
'use strict';
import { TPromise } from 'vs/base/common/winjs.base';
import { URI, UriComponents } from 'vs/base/common/uri';
import { IModeService } from 'vs/editor/common/services/modeService';
import { IModelService } from 'vs/editor/common/services/modelService';
......@@ -14,34 +13,30 @@ import { extHostNamedCustomer } from 'vs/workbench/api/electron-browser/extHostC
@extHostNamedCustomer(MainContext.MainThreadLanguages)
export class MainThreadLanguages implements MainThreadLanguagesShape {
private _modeService: IModeService;
private _modelService: IModelService;
constructor(
extHostContext: IExtHostContext,
@IModeService modeService: IModeService,
@IModelService modelService: IModelService
_extHostContext: IExtHostContext,
@IModeService private readonly _modeService: IModeService,
@IModelService private readonly _modelService: IModelService
) {
this._modeService = modeService;
this._modelService = modelService;
}
public dispose(): void {
dispose(): void {
// nothing
}
$getLanguages(): Thenable<string[]> {
return TPromise.as(this._modeService.getRegisteredModes());
return Promise.resolve(this._modeService.getRegisteredModes());
}
$changeLanguage(resource: UriComponents, languageId: string): Thenable<void> {
const uri = URI.revive(resource);
let model = this._modelService.getModel(uri);
if (!model) {
return TPromise.wrapError(new Error('Invalid uri'));
return Promise.reject(new Error('Invalid uri'));
}
return this._modeService.getOrCreateMode(languageId).then(mode => {
if (mode.getId() !== languageId) {
return TPromise.wrapError<void>(new Error(`Unknown language id: ${languageId}`));
return Promise.reject(new Error(`Unknown language id: ${languageId}`));
}
this._modelService.setMode(model, mode);
return undefined;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册