/// <summary> /// Initializes a new instance of the <see cref="FirebaseSubscription{T}"/> class. /// </summary> /// <param name="observer"> The observer. </param> /// <param name="query"> The query. </param> /// <param name="cache"> The cache. </param> public FirebaseSubscription(IObserver <FirebaseEvent <T> > observer, IFirebaseQuery query, string elementRoot, FirebaseCache <T> cache) { this.observer = observer; this.query = query; this.elementRoot = elementRoot; this.cancel = new CancellationTokenSource(); this.cache = cache; this.client = query.Client; }
public NodeStreamer( RestfulFirebaseApp app, IFirebaseQuery query, EventHandler <StreamObject> onNext, EventHandler <Exception> onError) { App = app; this.query = query; this.onNext = onNext; this.onError = onError; cancel = new CancellationTokenSource(); var httpClient = App.Config.HttpStreamFactory.GetHttpClient(); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/event-stream")); http = httpClient; }
/// <summary> /// Initializes a new instance of the <see cref="FirebaseSubscription{T}"/> class. /// </summary> /// <param name="observer"> The observer. </param> /// <param name="query"> The query. </param> /// <param name="cache"> The cache. </param> public FirebaseSubscription(IObserver <FirebaseEvent <T> > observer, IFirebaseQuery query, string elementRoot, FirebaseCache <T> cache) { this.observer = observer; this.query = query; this.elementRoot = elementRoot; this.cancel = new CancellationTokenSource(); this.httpClient = new HttpClient(); this.cache = cache; var handler = new HttpClientHandler { AllowAutoRedirect = true, MaxAutomaticRedirections = 10, }; this.httpClient = new HttpClient(handler, true) { Timeout = TimeSpan.FromMilliseconds(Timeout.Infinite), }; this.httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/event-stream")); }
internal RealtimeWire(RestfulFirebaseApp app, IFirebaseQuery query) : base(app, query) { }