public CallbackRegistration CreateCallback(string eventName, CallbackRegistration callback) { callback.Id = null; var callbackStr = Serializer.ToString(callback); var id = Hash(callbackStr); callback.Id = id; _table.GetChild(eventName).Create(id, callback); return(callback); }
private async Task Call(CallbackRegistration registration, NewBlockEvent evt) { CancellationTokenSource cancel = new CancellationTokenSource(); cancel.CancelAfter(Timeout); HttpClient client = new HttpClient(); try { var url = registration.Url; await client.SendAsync(new HttpRequestMessage(HttpMethod.Post, registration.Url) { Content = new ObjectContent <NewBlockEvent>(evt, Serializer.JsonMediaTypeFormatter) }, cancel.Token); } catch (Exception) //TODO : Debug log + Persistent registration { } }