Remove AbpDaprOptions.AppId, introduce AbpDistributedLockDaprOptions.Owner.

pull/14015/head
Halil İbrahim Kalkan 3 years ago
parent ea2cf04762
commit 03936d0d25

@ -44,7 +44,10 @@ public class AbpDaprClientFactory : IAbpDaprClientFactory, ISingletonDependency
return Task.FromResult(builder.Build());
}
public Task<HttpClient> CreateHttpClientAsync(string? appId = null, string? daprEndpoint = null, string? daprApiToken = null)
public Task<HttpClient> CreateHttpClientAsync(
string? appId = null,
string? daprEndpoint = null,
string? daprApiToken = null)
{
if(daprEndpoint.IsNullOrWhiteSpace() &&
!DaprOptions.HttpEndpoint.IsNullOrWhiteSpace())

@ -2,8 +2,6 @@
public class AbpDaprOptions
{
public string AppId { get; set; }
public string HttpEndpoint { get; set; }
public string GrpcEndpoint { get; set; }

@ -4,6 +4,8 @@ public class AbpDistributedLockDaprOptions
{
public string StoreName { get; set; }
public string? Owner { get; set; }
public TimeSpan DefaultTimeout { get; set; }
public AbpDistributedLockDaprOptions()

@ -9,22 +9,19 @@ public class DaprAbpDistributedLock : IAbpDistributedLock, ITransientDependency
{
protected IAbpDaprClientFactory DaprClientFactory { get; }
protected AbpDistributedLockDaprOptions DistributedLockDaprOptions { get; }
protected AbpDaprOptions DaprOptions { get; }
protected IDistributedLockKeyNormalizer DistributedLockKeyNormalizer { get; }
public DaprAbpDistributedLock(
IAbpDaprClientFactory daprClientFactory,
IOptions<AbpDistributedLockDaprOptions> distributedLockDaprOptions,
IOptions<AbpDaprOptions> daprOptions,
IDistributedLockKeyNormalizer distributedLockKeyNormalizer)
{
DaprClientFactory = daprClientFactory;
DistributedLockKeyNormalizer = distributedLockKeyNormalizer;
DaprOptions = daprOptions.Value;
DistributedLockDaprOptions = distributedLockDaprOptions.Value;
}
public async Task<IAbpDistributedLockHandle> TryAcquireAsync(
public async Task<IAbpDistributedLockHandle?> TryAcquireAsync(
string name,
TimeSpan timeout = default,
CancellationToken cancellationToken = default)
@ -34,13 +31,13 @@ public class DaprAbpDistributedLock : IAbpDistributedLock, ITransientDependency
timeout = DistributedLockDaprOptions.DefaultTimeout;
}
var daprClient = await DaprClientFactory.CreateAsync();
var key = DistributedLockKeyNormalizer.NormalizeKey(name);
name = DistributedLockKeyNormalizer.NormalizeKey(name);
var daprClient = await DaprClientFactory.CreateAsync();
var lockResponse = await daprClient.Lock(
DistributedLockDaprOptions.StoreName,
key,
DaprOptions.AppId,
name,
DistributedLockDaprOptions.Owner ?? Guid.NewGuid().ToString(),
(int)timeout.TotalSeconds,
cancellationToken);

Loading…
Cancel
Save