Skip to content

Commit aa58a23

Browse files
adjust EndpointSettings
1 parent 5fdca6d commit aa58a23

File tree

4 files changed

+11
-10
lines changed

4 files changed

+11
-10
lines changed

src/UiPath.CoreIpc.BackCompat/ServiceHostBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public ServiceHostBuilder(IServiceProvider serviceProvider)
2020
public ServiceHostBuilder AddEndpoint(EndpointSettings settings)
2121
{
2222
settings = settings.WithServiceProvider(_serviceProvider);
23-
Endpoints.Add(settings.Name, settings);
23+
Endpoints.Add(settings.ContractType.Name, settings);
2424
return this;
2525
}
2626

src/UiPath.CoreIpc/Extensibility/ClientBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public TProxy GetProxy<TProxy>() where TProxy : class
2121

2222
internal void ValidateInternal()
2323
{
24-
var haveDeferredInjectedCallbacks = Callbacks?.Any(x => !x.Service.HasServiceProvider() && x.Service.MaybeGetInstance() is null) ?? false;
24+
var haveDeferredInjectedCallbacks = Callbacks?.Any(x => x.Service.MaybeGetServiceProvider() is null && x.Service.MaybeGetInstance() is null) ?? false;
2525

2626
if (haveDeferredInjectedCallbacks && ServiceProvider is null)
2727
{

src/UiPath.CoreIpc/Helpers/Router.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,13 @@ internal abstract record ServiceFactory
4040
public virtual ServiceFactory WithProvider(IServiceProvider? serviceProvider) => this;
4141

4242
internal virtual object? MaybeGetInstance() => null;
43-
internal virtual bool HasServiceProvider() => false;
43+
internal virtual IServiceProvider? MaybeGetServiceProvider() => null;
4444

4545
public sealed record Injected : ServiceFactory
4646
{
4747
public required IServiceProvider ServiceProvider { get; init; }
4848

49-
internal override bool HasServiceProvider() => ServiceProvider is not null;
49+
internal override IServiceProvider? MaybeGetServiceProvider() => ServiceProvider;
5050

5151
public override IDisposable? Get(out object service)
5252
{

src/UiPath.CoreIpc/Server/ServiceHostBuilder.cs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,13 @@
44

55
public record EndpointSettings
66
{
7-
internal TaskScheduler? Scheduler { get; set; }
7+
public TaskScheduler? Scheduler { get; set; }
88
public BeforeCallHandler? BeforeCall { get; set; }
9+
public Type ContractType => Service.Type;
10+
public object? ServiceInstance => Service.MaybeGetInstance();
11+
public IServiceProvider? ServiceProvider => Service.MaybeGetServiceProvider();
912
internal ServiceFactory Service { get; }
1013

11-
internal string Name => Service.Type.Name;
12-
1314
public EndpointSettings(Type contractType, object? serviceInstance) : this(
1415
serviceInstance is not null
1516
? new ServiceFactory.Instance()
@@ -42,20 +43,20 @@ public void Validate()
4243
}
4344
}
4445

45-
protected internal virtual EndpointSettings WithServiceProvider(IServiceProvider serviceProvider)
46+
public virtual EndpointSettings WithServiceProvider(IServiceProvider serviceProvider)
4647
=> new EndpointSettings(Service.Type, serviceProvider)
4748
{
4849
BeforeCall = BeforeCall,
4950
Scheduler = Scheduler
5051
};
5152
}
5253

53-
public record EndpointSettings<TContract> : EndpointSettings where TContract : class
54+
public sealed record EndpointSettings<TContract> : EndpointSettings where TContract : class
5455
{
5556
public EndpointSettings(TContract? serviceInstance = null) : base(typeof(TContract), serviceInstance) { }
5657
public EndpointSettings(IServiceProvider serviceProvider) : base(typeof(TContract), serviceProvider) { }
5758

58-
protected internal override EndpointSettings WithServiceProvider(IServiceProvider serviceProvider)
59+
public override EndpointSettings WithServiceProvider(IServiceProvider serviceProvider)
5960
=> new EndpointSettings<TContract>(serviceProvider)
6061
{
6162
BeforeCall = BeforeCall,

0 commit comments

Comments
 (0)