Task RecordEndpointInstanceId(IMessageHandlerContext context) { var instanceId = EndpointInstanceId.From(context.MessageHeaders); endpointRegistry.Record(instanceId); activityTracker.Record(instanceId, DateTime.UtcNow); return(TaskEx.Completed); }
public bool IsStale(EndpointInstanceId endpointInstance) { if (endpointsInstances.TryGetValue(endpointInstance, out var lastActivityTime)) { var age = DateTime.UtcNow - lastActivityTime; return(age > StalenessThreshold); } return(true); }
public bool IsStale(EndpointInstanceId endpointInstance) { DateTime lastActivityTime; if (endpointsInstances.TryGetValue(endpointInstance, out lastActivityTime)) { var timeSpan = DateTime.UtcNow - lastActivityTime; return(timeSpan > StalenessThreshold); } return(false); }
public void Remove(EndpointInstanceId instanceId) { endpointsInstances.TryRemove(instanceId, out _); }
public void Record(EndpointInstanceId instanceId, DateTime utcNow) { endpointsInstances.AddOrUpdate(instanceId, utcNow, (_, __) => utcNow); }
protected bool Equals(EndpointInstanceId other) { return(string.Equals(EndpointName, other.EndpointName) && string.Equals(InstanceId, other.InstanceId)); }