diff options
Diffstat (limited to 'FireBase/Http')
-rw-r--r-- | FireBase/Http/HttpClientExtensions.cs | 123 | ||||
-rw-r--r-- | FireBase/Http/PostResult.cs | 13 |
2 files changed, 0 insertions, 136 deletions
diff --git a/FireBase/Http/HttpClientExtensions.cs b/FireBase/Http/HttpClientExtensions.cs deleted file mode 100644 index 6582769..0000000 --- a/FireBase/Http/HttpClientExtensions.cs +++ /dev/null @@ -1,123 +0,0 @@ -using System; -using System.Collections; -using System.Collections.Generic; -using System.Linq; -using System.Net; -using System.Net.Http; -using System.Threading.Tasks; -using Newtonsoft.Json; - -namespace Firebase.Database.Http -{ - /// <summary> - /// The http client extensions for object deserializations. - /// </summary> - internal static class HttpClientExtensions - { - /// <summary> - /// The get object collection async. - /// </summary> - /// <param name="client"> The client. </param> - /// <param name="requestUri"> The request uri. </param> - /// <param name="jsonSerializerSettings"> The specific JSON Serializer Settings. </param> - /// <typeparam name="T"> The type of entities the collection should contain. </typeparam> - /// <returns> The <see cref="Task" />. </returns> - public static async Task<IReadOnlyCollection<FirebaseObject<T>>> GetObjectCollectionAsync<T>( - this HttpClient client, string requestUri, - JsonSerializerSettings jsonSerializerSettings) - { - var responseData = string.Empty; - var statusCode = HttpStatusCode.OK; - - try - { - var response = await client.GetAsync(requestUri).ConfigureAwait(false); - statusCode = response.StatusCode; - responseData = await response.Content.ReadAsStringAsync().ConfigureAwait(false); - - response.EnsureSuccessStatusCode(); - - var dictionary = - JsonConvert.DeserializeObject<Dictionary<string, T>>(responseData, jsonSerializerSettings); - - if (dictionary == null) return new FirebaseObject<T>[0]; - - return dictionary.Select(item => new FirebaseObject<T>(item.Key, item.Value)).ToList(); - } - catch (Exception ex) - { - throw new FirebaseException(requestUri, string.Empty, responseData, statusCode, ex); - } - } - - /*/// <summary> - /// The get object collection async. - /// </summary> - /// <param name="client"> The client. </param> - /// <param name="requestUri"> The request uri. </param> - /// /// <param name="dataType"> The Data Type. </param> - /// <param name="jsonSerializerSettings"> The specific JSON Serializer Settings. </param> - /// <typeparam name="T"> The type of entities the collection should contain. </typeparam> - /// <returns> The <see cref="Task"/>. </returns> - public static async Task<IReadOnlyCollection<FirebaseObject<object>>> GetObjectCollectionAsync(this HttpClient client, string requestUri, - JsonSerializerSettings jsonSerializerSettings, Type dataType) - { - var responseData = string.Empty; - var statusCode = HttpStatusCode.OK; - - try - { - var response = await client.GetAsync(requestUri).ConfigureAwait(false); - statusCode = response.StatusCode; - responseData = await response.Content.ReadAsStringAsync().ConfigureAwait(false); - - response.EnsureSuccessStatusCode(); - - Type dicType = typeof(Dictionary<,>).MakeGenericType(typeof(string), dataType); - - var dictionary = JsonConvert.DeserializeObject(responseData,dicType, jsonSerializerSettings) as Dictionary<string, object>; - - if (dictionary == null) - { - return new FirebaseObject<object>[0]; - } - - return dictionary.Select(item => new FirebaseObject<object>(item.Key, item.Value)).ToList(); - } - catch (Exception ex) - { - throw new FirebaseException(requestUri, string.Empty, responseData, statusCode, ex); - } - }*/ - - /// <summary> - /// The get object collection async. - /// </summary> - /// <param name="data"> The json data. </param> - /// <param name="elementType"> The type of entities the collection should contain. </param> - /// <returns> The <see cref="Task" />. </returns> - public static IEnumerable<FirebaseObject<object>> GetObjectCollection(this string data, Type elementType) - { - var dictionaryType = typeof(Dictionary<,>).MakeGenericType(typeof(string), elementType); - IDictionary dictionary = null; - - if (data.StartsWith("[")) - { - var listType = typeof(List<>).MakeGenericType(elementType); - var list = JsonConvert.DeserializeObject(data, listType) as IList; - dictionary = Activator.CreateInstance(dictionaryType) as IDictionary; - var index = 0; - foreach (var item in list) dictionary.Add(index++.ToString(), item); - } - else - { - dictionary = JsonConvert.DeserializeObject(data, dictionaryType) as IDictionary; - } - - if (dictionary == null) yield break; - - foreach (DictionaryEntry item in dictionary) - yield return new FirebaseObject<object>((string) item.Key, item.Value); - } - } -}
\ No newline at end of file diff --git a/FireBase/Http/PostResult.cs b/FireBase/Http/PostResult.cs deleted file mode 100644 index 15a4894..0000000 --- a/FireBase/Http/PostResult.cs +++ /dev/null @@ -1,13 +0,0 @@ -namespace Firebase.Database.Http -{ - /// <summary> - /// Represents data returned after a successful POST to firebase server. - /// </summary> - public class PostResult - { - /// <summary> - /// Gets or sets the generated key after a successful post. - /// </summary> - public string Name { get; set; } - } -}
\ No newline at end of file |