private void OnExpiryCalculated(object sender, ExpiryManager.ExpiryCalculationArgs e) { var keyMatches = GrainKeyHelper.KeyMatches(this, e.GrainPrimaryKeyAsString); if (!keyMatches) { return; } SetTimer(e.Expiry.Expiry); }
public override async Task CalculateAsync(ExpiryManager.ExpiryCalculationArgs e) { try { var model = JsonConvert.DeserializeObject <TState>(e.Data); await this.PerformCalculationAsync(e, model); } catch (Exception ex) { e.SetException(this.ExpiryOnError, ex); } }
protected abstract Task PerformCalculationAsync(ExpiryManager.ExpiryCalculationArgs e, TState model);
public abstract Task CalculateAsync(ExpiryManager.ExpiryCalculationArgs e);