public Task Set(IWorkContext context, string path, NodeRegistrationModel nodeRegistrationModel) { nodeRegistrationModel.Verify(nameof(nodeRegistrationModel)).IsNotNull(); nodeRegistrationModel.NodeId !.Verify(nameof(nodeRegistrationModel.NodeId)).IsNotEmpty(); _data.AddOrUpdate(nodeRegistrationModel.NodeId !, nodeRegistrationModel, (k, v) => nodeRegistrationModel); return(Task.CompletedTask); }
public Task Set(IWorkContext context, string path, NodeRegistrationModel nodeRegistrationModel) { _createContainer.Execute(context); string data = JsonConvert.SerializeObject(nodeRegistrationModel); return(_blobRepository.Set(context, path, data)); }
public static RouteRegistrationRequest ConvertTo(this NodeRegistrationModel subject) { subject.Verify(nameof(subject)).IsNotNull(); return(new RouteRegistrationRequest { NodeId = subject.NodeId }); }
public async Task Set(IWorkContext context, NodeRegistrationModel nodeRegistrationModel) { context.Telemetry.Verbose(context, $"Set node registration {ActorKey.VectorKey}"); await _registerStore.Set(context, ActorKey.VectorKey, nodeRegistrationModel); _cache.Set(nodeRegistrationModel); }
public async Task <NodeRegistrationModel?> Get(IWorkContext context, string nodeId) { if (_routes.TryGetValue(nodeId, out CacheObject <NodeRegistrationModel> cacheModel)) { if (cacheModel.TryGetValue(out NodeRegistrationModel model)) { return(model); } } RouteLookupResponse?lookup = await _nameServer.Lookup(context, new RouteLookupRequest { SearchNodeId = nodeId }); if (lookup == null) { return(null); } NodeRegistrationModel lookupModel = lookup.ConvertTo(); _routes[nodeId] = new CacheObject <NodeRegistrationModel>(_timeToLive).Set(lookupModel); return(lookupModel); }