Skip to content

Commit bdec4c7

Browse files
Added Direction method attribute, updated all methods and handlers to have delegates (#247)
1 parent 878897c commit bdec4c7

File tree

847 files changed

+10941
-7076
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

847 files changed

+10941
-7076
lines changed

Directory.Build.targets

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,13 @@
3232
<PackageReference Update="XunitXml.TestLogger" Version="2.1.26"/>
3333
<PackageReference Update="coverlet.collector" Version="1.2.0"/>
3434
<PackageReference Update="coverlet.msbuild" Version="2.8.0"/>
35-
<PackageReference Update="System.Reactive" Version="4.3.2"/>
35+
<PackageReference Update="System.Reactive" Version="4.4.1"/>
3636
<PackageReference Update="Microsoft.Reactive.Testing" Version="4.3.2"/>
3737
<PackageReference Update="MediatR" Version="8.0.1"/>
3838
<PackageReference Update="MediatR.Extensions.Microsoft.DependencyInjection" Version="8.0.0"/>
3939
<PackageReference Update="Bogus" Version="29.0.1"/>
4040
<PackageReference Update="Snapper" Version="2.2.4"/>
4141
<PackageReference Update="Xunit.SkippableFact" Version="1.4.8" />
42+
<PackageReference Update="DynamicData" Version="6.14.18" />
4243
</ItemGroup>
4344
</Project>

LSP.sln

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = ".build", ".build\.build.csp
5757
EndProject
5858
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".build", ".build", "{26522B49-0743-4CBE-BA67-6D17FF65CAB9}"
5959
EndProject
60+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dap.Tests", "test\Dap.Tests\Dap.Tests.csproj", "{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}"
61+
EndProject
6062
Global
6163
GlobalSection(SolutionConfigurationPlatforms) = preSolution
6264
Debug|Any CPU = Debug|Any CPU
@@ -193,6 +195,18 @@ Global
193195
{28B13787-A442-4D28-BF9A-3D65BF13AAEC}.Release|Any CPU.ActiveCfg = Release|Any CPU
194196
{28B13787-A442-4D28-BF9A-3D65BF13AAEC}.Release|x64.ActiveCfg = Release|Any CPU
195197
{28B13787-A442-4D28-BF9A-3D65BF13AAEC}.Release|x86.ActiveCfg = Release|Any CPU
198+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
199+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
200+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|x64.ActiveCfg = Debug|Any CPU
201+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|x64.Build.0 = Debug|Any CPU
202+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|x86.ActiveCfg = Debug|Any CPU
203+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Debug|x86.Build.0 = Debug|Any CPU
204+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
205+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|Any CPU.Build.0 = Release|Any CPU
206+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|x64.ActiveCfg = Release|Any CPU
207+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|x64.Build.0 = Release|Any CPU
208+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|x86.ActiveCfg = Release|Any CPU
209+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8}.Release|x86.Build.0 = Release|Any CPU
196210
EndGlobalSection
197211
GlobalSection(SolutionProperties) = preSolution
198212
HideSolutionNode = FALSE
@@ -209,6 +223,7 @@ Global
209223
{F2C9D555-118E-442B-A953-9A7B58A53F33} = {D764E024-3D3F-4112-B932-2DB722A1BACC}
210224
{E1A9123B-A236-4240-8C82-A61BD85C3BF4} = {D764E024-3D3F-4112-B932-2DB722A1BACC}
211225
{28B13787-A442-4D28-BF9A-3D65BF13AAEC} = {26522B49-0743-4CBE-BA67-6D17FF65CAB9}
226+
{F3DF7917-6AD3-4EAA-A549-555032DDC4F8} = {2F323ED5-EBF8-45E1-B9D3-C014561B3DDA}
212227
EndGlobalSection
213228
GlobalSection(ExtensibilityGlobals) = postSolution
214229
SolutionGuid = {D38DD0EC-D095-4BCD-B8AF-2D788AF3B9AE}

sample/SampleServer/DidChangeWatchedFilesHandler.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
using MediatR;
44
using OmniSharp.Extensions.LanguageServer.Protocol.Client.Capabilities;
55
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
6-
using OmniSharp.Extensions.LanguageServer.Protocol.Server;
6+
using OmniSharp.Extensions.LanguageServer.Protocol.Workspace;
77

88
namespace SampleServer
99
{

sample/SampleServer/FoldingRangeHandler.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
using System.Threading.Tasks;
33
using OmniSharp.Extensions.LanguageServer.Protocol.Client.Capabilities;
44
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
5-
using OmniSharp.Extensions.LanguageServer.Protocol.Server;
5+
using OmniSharp.Extensions.LanguageServer.Server;
66

77
namespace SampleServer
88
{

sample/SampleServer/Program.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ static void Main(string[] args)
2020
static async Task MainAsync(string[] args)
2121
{
2222
// Debugger.Launch();
23-
// while (!System.Diagnostics.Debugger.IsAttached)
23+
// while (!Debugger.IsAttached)
2424
// {
2525
// await Task.Delay(100);
2626
// }
@@ -66,7 +66,7 @@ static async Task MainAsync(string[] args)
6666
});
6767
})
6868
.OnInitialize(async (server, request, token) => {
69-
var manager = server.ProgressManager.WorkDone(request, new WorkDoneProgressBegin() {
69+
var manager = server.WorkDoneManager.For(request, new WorkDoneProgressBegin() {
7070
Title = "Server is starting...",
7171
Percentage = 10,
7272
});
@@ -94,7 +94,7 @@ static async Task MainAsync(string[] args)
9494
workDone.OnCompleted();
9595
})
9696
.OnStarted(async (languageServer, result, token) => {
97-
using var manager = languageServer.ProgressManager.Create(new WorkDoneProgressBegin() { Title = "Doing some work..." });
97+
using var manager = await languageServer.WorkDoneManager.Create(new WorkDoneProgressBegin() { Title = "Doing some work..." });
9898

9999
manager.OnNext(new WorkDoneProgressReport() { Message = "doing things..." });
100100
await Task.Delay(10000);

sample/SampleServer/SemanticTokens.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
using Microsoft.Extensions.Logging;
88
using Newtonsoft.Json;
99
using OmniSharp.Extensions.LanguageServer.Protocol;
10-
using OmniSharp.Extensions.LanguageServer.Protocol.Document.Server.Proposals;
10+
using OmniSharp.Extensions.LanguageServer.Protocol.Document.Proposals;
1111
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
1212
using OmniSharp.Extensions.LanguageServer.Protocol.Models.Proposals;
1313

sample/SampleServer/TextDocumentHandler.cs

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
using System;
21
using System.Collections.Generic;
32
using System.IO;
43
using System.Threading;
@@ -7,10 +6,13 @@
76
using Microsoft.Extensions.Logging;
87
using OmniSharp.Extensions.LanguageServer.Protocol;
98
using OmniSharp.Extensions.LanguageServer.Protocol.Client.Capabilities;
9+
using OmniSharp.Extensions.LanguageServer.Protocol.Document;
1010
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
11+
using OmniSharp.Extensions.LanguageServer.Protocol.Progress;
1112
using OmniSharp.Extensions.LanguageServer.Protocol.Server;
1213
using OmniSharp.Extensions.LanguageServer.Protocol.Server.Capabilities;
13-
using OmniSharp.Extensions.LanguageServer.Server;
14+
using OmniSharp.Extensions.LanguageServer.Protocol.Server.WorkDone;
15+
using OmniSharp.Extensions.LanguageServer.Protocol.Workspace;
1416

1517
namespace SampleServer
1618
{
@@ -104,11 +106,11 @@ public TextDocumentAttributes GetTextDocumentAttributes(DocumentUri uri)
104106
}
105107
}
106108

107-
class MyDocumentSymbolHandler : OmniSharp.Extensions.LanguageServer.Protocol.Server.DocumentSymbolHandler
109+
class MyDocumentSymbolHandler : DocumentSymbolHandler
108110
{
109-
public MyDocumentSymbolHandler(ProgressManager progressManager) : base(new DocumentSymbolRegistrationOptions() {
111+
public MyDocumentSymbolHandler() : base(new DocumentSymbolRegistrationOptions() {
110112
DocumentSelector = DocumentSelector.ForLanguage("csharp")
111-
}, progressManager)
113+
})
112114
{
113115
}
114116

@@ -155,26 +157,31 @@ public override async Task<SymbolInformationOrDocumentSymbolContainer> Handle(Do
155157
}
156158
}
157159

158-
class MyWorkspaceSymbolsHandler : OmniSharp.Extensions.LanguageServer.Protocol.Server.WorkspaceSymbolsHandler
160+
class MyWorkspaceSymbolsHandler : WorkspaceSymbolsHandler
159161
{
162+
private readonly IServerWorkDoneManager _manager;
163+
private readonly IServerWorkDoneManager _serverWorkDoneManager;
164+
private readonly IProgressManager _progressManager;
160165
private readonly ILogger<MyWorkspaceSymbolsHandler> logger;
161166

162-
public MyWorkspaceSymbolsHandler(ProgressManager progressManager, ILogger<MyWorkspaceSymbolsHandler> logger) :
163-
base(new WorkspaceSymbolRegistrationOptions() { }, progressManager)
167+
public MyWorkspaceSymbolsHandler(IServerWorkDoneManager serverWorkDoneManager, IProgressManager progressManager, ILogger<MyWorkspaceSymbolsHandler> logger) :
168+
base(new WorkspaceSymbolRegistrationOptions() { })
164169
{
170+
_serverWorkDoneManager = serverWorkDoneManager;
171+
_progressManager = progressManager;
165172
this.logger = logger;
166173
}
167174

168175
public override async Task<Container<SymbolInformation>> Handle(WorkspaceSymbolParams request,
169176
CancellationToken cancellationToken)
170177
{
171-
using var reporter = ProgressManager.WorkDone(request, new WorkDoneProgressBegin() {
178+
using var reporter = _serverWorkDoneManager.For(request, new WorkDoneProgressBegin() {
172179
Cancellable = true,
173180
Message = "This might take a while...",
174181
Title = "Some long task....",
175182
Percentage = 0
176183
});
177-
using var partialResults = ProgressManager.For(request, cancellationToken);
184+
using var partialResults = _progressManager.For(request, cancellationToken);
178185
if (partialResults != null)
179186
{
180187
await Task.Delay(2000, cancellationToken);

src/Client/Clients/TextDocumentClient.Completions.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
using System;
21
using System.Threading;
32
using System.Threading.Tasks;
4-
using OmniSharp.Extensions.LanguageServer.Client.Utilities;
53
using OmniSharp.Extensions.LanguageServer.Protocol;
64
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
75

@@ -32,7 +30,7 @@ public partial class TextDocumentClient
3230
/// </returns>
3331
public Task<CompletionList> Completions(DocumentUri documentUri, int line, int column, CancellationToken cancellationToken = default(CancellationToken))
3432
{
35-
return PositionalRequest<CompletionList>(DocumentNames.Completion, documentUri, line, column, cancellationToken);
33+
return PositionalRequest<CompletionList>(TextDocumentNames.Completion, documentUri, line, column, cancellationToken);
3634
}
3735
}
3836
}

src/Client/Clients/TextDocumentClient.Definition.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
using System;
21
using System.Threading;
32
using System.Threading.Tasks;
4-
using OmniSharp.Extensions.LanguageServer.Client.Utilities;
53
using OmniSharp.Extensions.LanguageServer.Protocol;
64
using OmniSharp.Extensions.LanguageServer.Protocol.Models;
75

@@ -32,7 +30,7 @@ public partial class TextDocumentClient
3230
/// </returns>
3331
public Task<LocationOrLocationLinks> Definition(DocumentUri documentUri, int line, int column, CancellationToken cancellationToken = default(CancellationToken))
3432
{
35-
return PositionalRequest<LocationOrLocationLinks>(DocumentNames.Definition, documentUri, line, column, cancellationToken);
33+
return PositionalRequest<LocationOrLocationLinks>(TextDocumentNames.Definition, documentUri, line, column, cancellationToken);
3634
}
3735
}
3836
}

src/Client/Clients/TextDocumentClient.Diagnostics.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public IDisposable OnPublishDiagnostics(PublishDiagnosticsHandler handler)
2727
if (handler == null)
2828
throw new ArgumentNullException(nameof(handler));
2929

30-
return Client.HandleNotification<PublishDiagnosticsParams>(DocumentNames.PublishDiagnostics, notification =>
30+
return Client.HandleNotification<PublishDiagnosticsParams>(TextDocumentNames.PublishDiagnostics, notification =>
3131
{
3232
if (notification.Diagnostics == null)
3333
if (notification.Diagnostics == null)

0 commit comments

Comments
 (0)