Skip to content

Commit e6e1c3e

Browse files
ensure facade interfaces get registered in external service collection
1 parent 04dc114 commit e6e1c3e

File tree

5 files changed

+33
-10
lines changed

5 files changed

+33
-10
lines changed

src/Client/LanguageClientServiceCollectionExtensions.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,18 @@ public static IServiceCollection AddLanguageClient(this IServiceCollection servi
113113
{
114114
services.RemoveAll<LanguageClient>();
115115
services.RemoveAll<ILanguageClient>();
116+
services.RemoveAll<ILanguageClientFacade>();
116117
services.AddSingleton<ILanguageClient>(
117118
_ =>
118-
throw new NotSupportedException("LanguageClient has been registered multiple times, you must use LanguageClient instead")
119+
throw new NotSupportedException("LanguageClient has been registered multiple times, you must use LanguageClientResolver instead")
120+
);
121+
services.AddSingleton<ILanguageClientFacade>(
122+
_ =>
123+
throw new NotSupportedException("LanguageClient has been registered multiple times, you must use LanguageClientResolver instead")
119124
);
120125
services.AddSingleton<LanguageClient>(
121126
_ =>
122-
throw new NotSupportedException("LanguageClient has been registered multiple times, you must use LanguageClient instead")
127+
throw new NotSupportedException("LanguageClient has been registered multiple times, you must use LanguageClientResolver instead")
123128
);
124129
}
125130

@@ -129,6 +134,7 @@ public static IServiceCollection AddLanguageClient(this IServiceCollection servi
129134
services.TryAddSingleton<LanguageClientResolver>();
130135
services.TryAddSingleton(_ => _.GetRequiredService<LanguageClientResolver>().Get(name));
131136
services.TryAddSingleton<ILanguageClient>(_ => _.GetRequiredService<LanguageClientResolver>().Get(name));
137+
services.TryAddSingleton<ILanguageClientFacade>(_ => _.GetRequiredService<LanguageClientResolver>().Get(name));
132138

133139
if (configureOptions != null)
134140
{

src/Dap.Client/DebugAdapterClientServiceCollectionExtensions.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,13 +97,18 @@ public static IServiceCollection AddDebugAdapterClient(this IServiceCollection s
9797
{
9898
services.RemoveAll<DebugAdapterClient>();
9999
services.RemoveAll<IDebugAdapterClient>();
100+
services.RemoveAll<IDebugAdapterClientFacade>();
100101
services.AddSingleton<IDebugAdapterClient>(
101102
_ =>
102-
throw new NotSupportedException("DebugAdapterClient has been registered multiple times, you must use DebugAdapterClient instead")
103+
throw new NotSupportedException("DebugAdapterClient has been registered multiple times, you must use DebugAdapterClientResolver instead")
104+
);
105+
services.AddSingleton<IDebugAdapterClientFacade>(
106+
_ =>
107+
throw new NotSupportedException("DebugAdapterClient has been registered multiple times, you must use DebugAdapterClientResolver instead")
103108
);
104109
services.AddSingleton<DebugAdapterClient>(
105110
_ =>
106-
throw new NotSupportedException("DebugAdapterClient has been registered multiple times, you must use DebugAdapterClient instead")
111+
throw new NotSupportedException("DebugAdapterClient has been registered multiple times, you must use DebugAdapterClientResolver instead")
107112
);
108113
}
109114

@@ -113,6 +118,7 @@ public static IServiceCollection AddDebugAdapterClient(this IServiceCollection s
113118
services.TryAddSingleton<DebugAdapterClientResolver>();
114119
services.TryAddSingleton(_ => _.GetRequiredService<DebugAdapterClientResolver>().Get(name));
115120
services.TryAddSingleton<IDebugAdapterClient>(_ => _.GetRequiredService<DebugAdapterClientResolver>().Get(name));
121+
services.TryAddSingleton<IDebugAdapterClientFacade>(_ => _.GetRequiredService<DebugAdapterClientResolver>().Get(name));
116122

117123
if (configureOptions != null)
118124
{

src/Dap.Protocol/Client/IDebugAdapterClient.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@
44

55
namespace OmniSharp.Extensions.DebugAdapter.Protocol.Client
66
{
7-
public interface IDebugAdapterClient : IDebugAdapterClientProxy, IDisposable
7+
public interface IDebugAdapterClient : IDebugAdapterClientFacade, IDisposable
88
{
99
Task Initialize(CancellationToken token);
10-
IDebugAdapterClientProgressManager ProgressManager { get; }
1110
}
1211
}

src/Dap.Server/DebugAdapterServerServiceCollectionExtensions.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,18 @@ public static IServiceCollection AddDebugAdapterServer(this IServiceCollection s
8181
{
8282
services.RemoveAll<DebugAdapterServer>();
8383
services.RemoveAll<IDebugAdapterServer>();
84+
services.RemoveAll<IDebugAdapterServerFacade>();
8485
services.AddSingleton<IDebugAdapterServer>(
8586
_ =>
86-
throw new NotSupportedException("DebugAdapterServer has been registered multiple times, you must use DebugAdapterServer instead")
87+
throw new NotSupportedException("DebugAdapterServer has been registered multiple times, you must use DebugAdapterServerResolver instead")
88+
);
89+
services.AddSingleton<IDebugAdapterServerFacade>(
90+
_ =>
91+
throw new NotSupportedException("DebugAdapterServer has been registered multiple times, you must use DebugAdapterServerResolver instead")
8792
);
8893
services.AddSingleton<DebugAdapterServer>(
8994
_ =>
90-
throw new NotSupportedException("DebugAdapterServer has been registered multiple times, you must use DebugAdapterServer instead")
95+
throw new NotSupportedException("DebugAdapterServer has been registered multiple times, you must use DebugAdapterServerResolver instead")
9196
);
9297
}
9398

@@ -97,6 +102,7 @@ public static IServiceCollection AddDebugAdapterServer(this IServiceCollection s
97102
services.TryAddSingleton<DebugAdapterServerResolver>();
98103
services.TryAddSingleton(_ => _.GetRequiredService<DebugAdapterServerResolver>().Get(name));
99104
services.TryAddSingleton<IDebugAdapterServer>(_ => _.GetRequiredService<DebugAdapterServerResolver>().Get(name));
105+
services.TryAddSingleton<IDebugAdapterServerFacade>(_ => _.GetRequiredService<DebugAdapterServerResolver>().Get(name));
100106

101107
if (configureOptions != null)
102108
{

src/Server/LanguageServerServiceCollectionExtensions.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,13 +125,18 @@ public static IServiceCollection AddLanguageServer(this IServiceCollection servi
125125
{
126126
services.RemoveAll<LanguageServer>();
127127
services.RemoveAll<ILanguageServer>();
128+
services.RemoveAll<ILanguageServerFacade>();
128129
services.AddSingleton<ILanguageServer>(
129130
_ =>
130-
throw new NotSupportedException("LanguageServer has been registered multiple times, you must use LanguageServer instead")
131+
throw new NotSupportedException("LanguageServer has been registered multiple times, you must use LanguageServerResolver instead")
132+
);
133+
services.AddSingleton<ILanguageServerFacade>(
134+
_ =>
135+
throw new NotSupportedException("LanguageServer has been registered multiple times, you must use LanguageServerResolver instead")
131136
);
132137
services.AddSingleton<LanguageServer>(
133138
_ =>
134-
throw new NotSupportedException("LanguageServer has been registered multiple times, you must use LanguageServer instead")
139+
throw new NotSupportedException("LanguageServer has been registered multiple times, you must use LanguageServerResolver instead")
135140
);
136141
}
137142

@@ -141,6 +146,7 @@ public static IServiceCollection AddLanguageServer(this IServiceCollection servi
141146
services.TryAddSingleton<LanguageServerResolver>();
142147
services.TryAddSingleton(_ => _.GetRequiredService<LanguageServerResolver>().Get(name));
143148
services.TryAddSingleton<ILanguageServer>(_ => _.GetRequiredService<LanguageServerResolver>().Get(name));
149+
services.TryAddSingleton<ILanguageServerFacade>(_ => _.GetRequiredService<LanguageServerResolver>().Get(name));
144150

145151
if (configureOptions != null)
146152
{

0 commit comments

Comments
 (0)