configure Redis cache and distributed locks
This commit is contained in:
@@ -23,17 +23,29 @@ public class DefaultRouteTableUpdater(
|
||||
var stimulusName = HttpStimulusNames.HttpEndpoint;
|
||||
var triggerFilter = new TriggerFilter
|
||||
{
|
||||
Name = stimulusName
|
||||
Name = stimulusName,
|
||||
TenantAgnostic = true
|
||||
};
|
||||
var bookmarkFilter = new BookmarkFilter
|
||||
{
|
||||
Name = stimulusName
|
||||
Name = stimulusName,
|
||||
TenantAgnostic = true
|
||||
};
|
||||
var triggers = (await triggerStore.FindManyAsync(triggerFilter, cancellationToken)).ToList();
|
||||
var bookmarks = (await bookmarkStore.FindManyAsync(bookmarkFilter, cancellationToken)).ToList();
|
||||
|
||||
await AddRoutesAsync(triggers, cancellationToken);
|
||||
await AddRoutesAsync(bookmarks, cancellationToken);
|
||||
var routes = new List<HttpRouteData>();
|
||||
foreach (var trigger in Filter(triggers))
|
||||
{
|
||||
var context = new HttpEndpointRouteProviderContext(trigger.GetPayload<HttpEndpointBookmarkPayload>(), trigger.TenantId, cancellationToken);
|
||||
routes.AddRange(await httpEndpointRoutesProvider.GetRoutesAsync(context));
|
||||
}
|
||||
foreach (var bookmark in Filter(bookmarks))
|
||||
{
|
||||
var context = new HttpEndpointRouteProviderContext(bookmark.GetPayload<HttpEndpointBookmarkPayload>(), bookmark.TenantId, cancellationToken);
|
||||
routes.AddRange(await httpEndpointRoutesProvider.GetRoutesAsync(context));
|
||||
}
|
||||
routeTable.Replace(routes);
|
||||
}
|
||||
|
||||
public async Task AddRoutesAsync(IEnumerable<StoredTrigger> triggers, CancellationToken cancellationToken = default)
|
||||
@@ -107,4 +119,4 @@ public class DefaultRouteTableUpdater(
|
||||
var stimulusName = HttpStimulusNames.HttpEndpoint;
|
||||
return bookmarks.Where(x => x.Name == stimulusName && x.Payload != null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user