public override async Task OnActivateAsync() { // keep the registry proxy for comfort _registry = GrainFactory.GetGrain <IStorageRegistryGrain>(Guid.Empty); // cache any existing channel info from the registry _info = await _registry.GetChannelAsync(GrainKey); // cache latest messages _messages.Enqueue(await _registry.GetLatestMessagesByReceiverIdAsync(GrainKey, _options.MaxCachedMessages), _options.MaxCachedMessages); // cache members _members.UnionWith(await _registry.GetUsersByChannelAsync(GrainKey)); }
public override async Task OnActivateAsync() { // keep the registry proxy for comfort _registry = GrainFactory.GetGrain <IStorageRegistryGrain>(Guid.Empty); // cache any existing user info from the registry _info = await _registry.GetUserAsync(GrainKey); // cache latest messages _messages.Enqueue((await _registry.GetLatestMessagesByReceiverIdAsync(GrainKey, _options.MaxCachedMessages)).OrderBy(_ => _.Timestamp), _options.MaxCachedMessages); // cache joined channels _channels.UnionWith(await _registry.GetChannelsByUserAsync(GrainKey)); }