Skip to content

Commit ea88cb0

Browse files
Merge pull request #102 from DustinCampbell/cleanup
Lots of code clean up
2 parents 730963f + 89991a3 commit ea88cb0

29 files changed

+1720
-665
lines changed

package.json

Lines changed: 372 additions & 357 deletions
Large diffs are not rendered by default.

src/coreclr-debug.ts

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export function installCoreClrDebug(context: vscode.ExtensionContext) {
2828

2929
if (!isOnPath('dotnet')) {
3030
// TODO: In a future release, this should be an error. For this release, we will let it go
31-
console.log("The .NET CLI tools are not installed. .NET Core debugging will not be enabled.")
31+
console.log("The .NET CLI tools are not installed. .NET Core debugging will not be enabled.");
3232
return;
3333
}
3434

@@ -38,7 +38,7 @@ export function installCoreClrDebug(context: vscode.ExtensionContext) {
3838
// Create our log file and override _channel.append to also outpu to the log
3939
_installLog = fs.createWriteStream(path.join(_coreClrDebugDir, 'install.log'));
4040
(function() {
41-
var proxied = _channel.append;
41+
let proxied = _channel.append;
4242
_channel.append = function(val: string) {
4343
_installLog.write(val);
4444
proxied.apply(this, arguments);
@@ -48,8 +48,8 @@ export function installCoreClrDebug(context: vscode.ExtensionContext) {
4848
_channel.appendLine("Downloading and configuring the .NET Core Debugger...");
4949
_channel.show(vscode.ViewColumn.Three);
5050

51-
var installStage = 'dotnet restore';
52-
var installError = '';
51+
let installStage = 'dotnet restore';
52+
let installError = '';
5353

5454
spawnChildProcess('dotnet', ['--verbose', 'restore', '--configfile', 'NuGet.config'], _channel, _coreClrDebugDir)
5555
.then(function() {
@@ -59,8 +59,8 @@ export function installCoreClrDebug(context: vscode.ExtensionContext) {
5959
installStage = "ensureAd7";
6060
return ensureAd7EngineExists(_channel, _debugAdapterDir);
6161
}).then(function() {
62-
installStage = "additionalTasks"
63-
var promises: Promise<void>[] = [];
62+
installStage = "additionalTasks";
63+
let promises: Promise<void>[] = [];
6464

6565
promises.push(renameDummyEntrypoint());
6666
promises.push(removeLibCoreClrTraceProvider());
@@ -86,7 +86,7 @@ export function installCoreClrDebug(context: vscode.ExtensionContext) {
8686

8787
function initializeTelemetry(context: vscode.ExtensionContext) {
8888
// parse our own package.json into json
89-
var packageJson = JSON.parse(fs.readFileSync(path.join(context.extensionPath, 'package.json')).toString());
89+
const packageJson = JSON.parse(fs.readFileSync(path.join(context.extensionPath, 'package.json')).toString());
9090

9191
let extensionId = packageJson["publisher"] + "." + packageJson["name"];
9292
let extensionVersion = packageJson["version"];
@@ -116,13 +116,13 @@ function writeCompletionFile() : Promise<void> {
116116
}
117117

118118
function renameDummyEntrypoint() : Promise<void> {
119-
var src = path.join(_debugAdapterDir, 'dummy');
120-
var dest = path.join(_debugAdapterDir, 'OpenDebugAD7');
119+
let src = path.join(_debugAdapterDir, 'dummy');
120+
let dest = path.join(_debugAdapterDir, 'OpenDebugAD7');
121121

122122
src += getPlatformExeExtension();
123123
dest += getPlatformExeExtension();
124124

125-
var promise = new Promise<void>(function(resolve, reject) {
125+
const promise = new Promise<void>(function(resolve, reject) {
126126
fs.rename(src, dest, function(err) {
127127
if (err) {
128128
reject(err.code);
@@ -137,7 +137,7 @@ function renameDummyEntrypoint() : Promise<void> {
137137

138138
function removeLibCoreClrTraceProvider() : Promise<void>
139139
{
140-
var filePath = path.join(_debugAdapterDir, 'libcoreclrtraceptprovider' + getPlatformLibExtension());
140+
const filePath = path.join(_debugAdapterDir, 'libcoreclrtraceptprovider' + getPlatformLibExtension());
141141

142142
if (!existsSync(filePath)) {
143143
return Promise.resolve();
@@ -204,11 +204,12 @@ function isOnPath(command : string) : boolean {
204204
}
205205

206206
let pathSegments: string[] = pathValue.split(seperatorChar);
207-
for (var segment of pathSegments) {
207+
for (let segment of pathSegments) {
208208
if (segment.length === 0 || !path.isAbsolute(segment)) {
209209
continue;
210210
}
211-
var segmentPath = path.join(segment, fileName);
211+
212+
const segmentPath = path.join(segment, fileName);
212213
if (existsSync(segmentPath)) {
213214
return true;
214215
}
@@ -236,7 +237,7 @@ function ensureAd7EngineExists(channel: vscode.OutputChannel, outputDirectory: s
236237
}
237238

238239
function spawnChildProcess(process: string, args: string[], channel: vscode.OutputChannel, workingDirectory: string) : Promise<void> {
239-
var promise = new Promise<void>( function (resolve, reject) {
240+
const promise = new Promise<void>(function(resolve, reject) {
240241
const child = child_process.spawn(process, args, {cwd: workingDirectory});
241242

242243
child.stdout.on('data', (data) => {

src/features/changeForwarding.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import {Disposable, Uri, workspace} from 'vscode';
99
import {OmnisharpServer} from '../omnisharpServer';
10-
import * as proto from '../protocol';
10+
import * as serverUtils from '../omnisharpUtils';
1111

1212
function forwardDocumentChanges(server: OmnisharpServer): Disposable {
1313

@@ -22,10 +22,7 @@ function forwardDocumentChanges(server: OmnisharpServer): Disposable {
2222
return;
2323
}
2424

25-
server.makeRequest(proto.UpdateBuffer, <proto.Request>{
26-
Buffer: document.getText(),
27-
Filename: document.fileName
28-
}).catch(err => {
25+
serverUtils.updateBuffer(server, {Buffer: document.getText(), Filename: document.fileName}).catch(err => {
2926
console.error(err);
3027
return err;
3128
});
@@ -38,9 +35,11 @@ function forwardFileChanges(server: OmnisharpServer): Disposable {
3835
if (!server.isRunning()) {
3936
return;
4037
}
38+
4139
let req = { Filename: uri.fsPath };
42-
server.makeRequest<boolean>(proto.FilesChanged, [req]).catch(err => {
43-
console.warn('[o] failed to forward file change event for ' + uri.fsPath, err);
40+
41+
serverUtils.filesChanged(server, [req]).catch(err => {
42+
console.warn(`[o] failed to forward file change event for ${uri.fsPath}`, err);
4443
return err;
4544
});
4645
}

src/features/codeActionProvider.ts

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@
88
import {CodeActionProvider, CodeActionContext, Command, CancellationToken, TextDocument, WorkspaceEdit, TextEdit, Range, Uri, workspace, commands} from 'vscode';
99
import {OmnisharpServer} from '../omnisharpServer';
1010
import AbstractProvider from './abstractProvider';
11-
import {TextChange, V2} from '../protocol';
11+
import * as protocol from '../protocol';
1212
import {toRange2} from '../typeConvertion';
13+
import * as serverUtils from '../omnisharpUtils';
1314

1415
export default class OmnisharpCodeActionProvider extends AbstractProvider implements CodeActionProvider {
1516

@@ -37,32 +38,32 @@ export default class OmnisharpCodeActionProvider extends AbstractProvider implem
3738
return;
3839
}
3940

40-
let req: V2.GetCodeActionsRequest = {
41+
let req: protocol.V2.GetCodeActionsRequest = {
4142
Filename: document.fileName,
4243
Selection: OmnisharpCodeActionProvider._asRange(range)
43-
}
44+
};
4445

45-
return this._server.makeRequest<V2.GetCodeActionsResponse>(V2.GetCodeActions, req, token).then(response => {
46-
return response.CodeActions.map(ca => {
46+
return serverUtils.getCodeActions(this._server, req, token).then(response => {
47+
return response.CodeActions.map(codeAction => {
4748
return {
48-
title: ca.Name,
49+
title: codeAction.Name,
4950
command: this._commandId,
50-
arguments: [<V2.RunCodeActionRequest>{
51+
arguments: [<protocol.V2.RunCodeActionRequest>{
5152
Filename: document.fileName,
5253
Selection: OmnisharpCodeActionProvider._asRange(range),
53-
Identifier: ca.Identifier,
54+
Identifier: codeAction.Identifier,
5455
WantsTextChanges: true
5556
}]
5657
};
5758
});
5859
}, (error) => {
59-
return Promise.reject('Problem invoking \'GetCodeActions\' on OmniSharp server: ' + error);
60+
return Promise.reject(`Problem invoking 'GetCodeActions' on OmniSharp server: ${error}`);
6061
});
6162
}
6263

63-
private _runCodeAction(req: V2.RunCodeActionRequest): Promise<any> {
64+
private _runCodeAction(req: protocol.V2.RunCodeActionRequest): Promise<any> {
6465

65-
return this._server.makeRequest<V2.RunCodeActionResponse>(V2.RunCodeAction, req).then(response => {
66+
return serverUtils.runCodeAction(this._server, req).then(response => {
6667

6768
if (response && Array.isArray(response.Changes)) {
6869

@@ -86,7 +87,7 @@ export default class OmnisharpCodeActionProvider extends AbstractProvider implem
8687
});
8788
}
8889

89-
private static _asRange(range: Range): V2.Range {
90+
private static _asRange(range: Range): protocol.V2.Range {
9091
let {start, end} = range;
9192
return {
9293
Start: { Line: start.line + 1, Column: start.character + 1 },

src/features/codeLensProvider.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,11 @@
55

66
'use strict';
77

8-
import {CancellationToken, CodeLens, SymbolKind, Range, Uri, TextDocument, CodeLensProvider, Position} from 'vscode';
9-
import {createRequest, toRange, toLocation} from '../typeConvertion';
8+
import {CancellationToken, CodeLens, Range, Uri, TextDocument, CodeLensProvider} from 'vscode';
9+
import {toRange, toLocation} from '../typeConvertion';
1010
import AbstractSupport from './abstractProvider';
11-
import * as proto from '../protocol';
11+
import * as protocol from '../protocol';
12+
import * as serverUtils from '../omnisharpUtils';
1213

1314
class OmniSharpCodeLens extends CodeLens {
1415

@@ -31,16 +32,14 @@ export default class OmniSharpCodeLensProvider extends AbstractSupport implement
3132

3233
provideCodeLenses(document: TextDocument, token: CancellationToken): CodeLens[] | Thenable<CodeLens[]> {
3334

34-
return this._server.makeRequest<proto.CurrentFileMembersAsTreeResponse>(proto.CurrentFileMembersAsTree, {
35-
Filename: document.fileName
36-
}, token).then(tree => {
37-
var ret: CodeLens[] = [];
35+
return serverUtils.currentFileMembersAsTree(this._server, { Filename: document.fileName }, token).then(tree => {
36+
let ret: CodeLens[] = [];
3837
tree.TopLevelTypeDefinitions.forEach(node => OmniSharpCodeLensProvider._convertQuickFix(ret, document.fileName, node));
3938
return ret;
4039
});
4140
}
4241

43-
private static _convertQuickFix(bucket: CodeLens[], fileName:string, node: proto.Node): void {
42+
private static _convertQuickFix(bucket: CodeLens[], fileName:string, node: protocol.Node): void {
4443

4544
if (node.Kind === 'MethodDeclaration' && OmniSharpCodeLensProvider.filteredSymbolNames[node.Location.Text]) {
4645
return;
@@ -57,18 +56,19 @@ export default class OmniSharpCodeLensProvider extends AbstractSupport implement
5756
resolveCodeLens(codeLens: CodeLens, token: CancellationToken): Thenable<CodeLens> {
5857
if (codeLens instanceof OmniSharpCodeLens) {
5958

60-
let req = <proto.FindUsagesRequest>{
59+
let req = <protocol.FindUsagesRequest>{
6160
Filename: codeLens.fileName,
6261
Line: codeLens.range.start.line + 1,
6362
Column: codeLens.range.start.character + 1,
6463
OnlyThisFile: false,
6564
ExcludeDefinition: true
6665
};
6766

68-
return this._server.makeRequest<proto.QuickFixResponse>(proto.FindUsages, req, token).then(res => {
67+
return serverUtils.findUsages(this._server, req, token).then(res => {
6968
if (!res || !Array.isArray(res.QuickFixes)) {
7069
return;
7170
}
71+
7272
let len = res.QuickFixes.length;
7373
codeLens.command = {
7474
title: len === 1 ? '1 reference' : `${len} references`,

0 commit comments

Comments
 (0)