From e6181c24124d97f2fbc932b8a68311e625463156 Mon Sep 17 00:00:00 2001 From: uzvkl Date: Tue, 11 Jun 2019 23:05:52 +0200 Subject: Move dsa related stuff to subfolder --- FireBase/Query/QueryExtensions.cs | 210 -------------------------------------- 1 file changed, 210 deletions(-) delete mode 100644 FireBase/Query/QueryExtensions.cs (limited to 'FireBase/Query/QueryExtensions.cs') diff --git a/FireBase/Query/QueryExtensions.cs b/FireBase/Query/QueryExtensions.cs deleted file mode 100644 index df2edfc..0000000 --- a/FireBase/Query/QueryExtensions.cs +++ /dev/null @@ -1,210 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Threading.Tasks; -using Newtonsoft.Json; - -namespace Firebase.Database.Query -{ - /// - /// Query extensions providing linq like syntax for firebase server methods. - /// - public static class QueryExtensions - { - /// - /// Adds an auth parameter to the query. - /// - /// The child. - /// The auth token. - /// The . - internal static AuthQuery WithAuth(this FirebaseQuery node, string token) - { - return node.WithAuth(() => token); - } - - /// - /// Appends print=silent to save bandwidth. - /// - /// The child. - /// The . - internal static SilentQuery Silent(this FirebaseQuery node) - { - return new SilentQuery(node, node.Client); - } - - /// - /// References a sub child of the existing node. - /// - /// The child. - /// The path of sub child. - /// The . - public static ChildQuery Child(this ChildQuery node, string path) - { - return node.Child(() => path); - } - - /// - /// Order data by given . Note that this is used mainly for following filtering queries and - /// due to firebase implementation - /// the data may actually not be ordered. - /// - /// The child. - /// The property name. - /// The . - public static OrderQuery OrderBy(this ChildQuery child, string propertyName) - { - return child.OrderBy(() => propertyName); - } - - /// - /// Instructs firebase to send data greater or equal to the . This must be preceded by an OrderBy - /// query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery StartAt(this ParameterQuery child, string value) - { - return child.StartAt(() => value); - } - - /// - /// Instructs firebase to send data lower or equal to the . This must be preceded by an OrderBy - /// query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery EndAt(this ParameterQuery child, string value) - { - return child.EndAt(() => value); - } - - /// - /// Instructs firebase to send data equal to the . This must be preceded by an OrderBy query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery EqualTo(this ParameterQuery child, string value) - { - return child.EqualTo(() => value); - } - - /// - /// Instructs firebase to send data greater or equal to the . This must be preceded by an OrderBy - /// query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery StartAt(this ParameterQuery child, double value) - { - return child.StartAt(() => value); - } - - /// - /// Instructs firebase to send data lower or equal to the . This must be preceded by an OrderBy - /// query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery EndAt(this ParameterQuery child, double value) - { - return child.EndAt(() => value); - } - - /// - /// Instructs firebase to send data equal to the . This must be preceded by an OrderBy query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery EqualTo(this ParameterQuery child, double value) - { - return child.EqualTo(() => value); - } - - /// - /// Instructs firebase to send data equal to the . This must be preceded by an OrderBy query. - /// - /// Current node. - /// Value to start at. - /// The . - public static FilterQuery EqualTo(this ParameterQuery child, bool value) - { - return child.EqualTo(() => value); - } - - /// - /// Instructs firebase to send data equal to null. This must be preceded by an OrderBy query. - /// - /// Current node. - /// The . - public static FilterQuery EqualTo(this ParameterQuery child) - { - return child.EqualTo(() => null); - } - - /// - /// Limits the result to first items. - /// - /// Current node. - /// Number of elements. - /// The . - public static FilterQuery LimitToFirst(this ParameterQuery child, int count) - { - return child.LimitToFirst(() => count); - } - - /// - /// Limits the result to last items. - /// - /// Current node. - /// Number of elements. - /// The . - public static FilterQuery LimitToLast(this ParameterQuery child, int count) - { - return child.LimitToLast(() => count); - } - - public static Task PutAsync(this FirebaseQuery query, T obj) - { - return query.PutAsync(JsonConvert.SerializeObject(obj, query.Client.Options.JsonSerializerSettings)); - } - - public static Task PatchAsync(this FirebaseQuery query, T obj) - { - return query.PatchAsync(JsonConvert.SerializeObject(obj, query.Client.Options.JsonSerializerSettings)); - } - - public static async Task> PostAsync(this FirebaseQuery query, T obj, - bool generateKeyOffline = true) - { - var result = - await query.PostAsync(JsonConvert.SerializeObject(obj, query.Client.Options.JsonSerializerSettings), - generateKeyOffline); - - return new FirebaseObject(result.Key, obj); - } - - /// - /// Fan out given item to multiple locations at once. See - /// https://firebase.googleblog.com/2015/10/client-side-fan-out-for-data-consistency_73.html for details. - /// - /// Type of object to fan out. - /// Current node. - /// Object to fan out. - /// Locations where to store the item. - public static async Task FanOut(this ChildQuery child, T item, params string[] relativePaths) - { - if (relativePaths == null) throw new ArgumentNullException(nameof(relativePaths)); - - var fanoutObject = new Dictionary(relativePaths.Length); - - foreach (var path in relativePaths) fanoutObject.Add(path, item); - - await child.PatchAsync(fanoutObject); - } - } -} \ No newline at end of file -- cgit v1.2.3-54-g00ecf