コード例 #1
0
        protected static BunqResponse <T> FromJson <T>(BunqResponseRaw responseRaw)
        {
            var responseItemObject = GetResponseItemObject(responseRaw);
            var responseValue      = BunqJsonConvert.DeserializeObject <T>(responseItemObject.ToString());

            return(new BunqResponse <T>(responseValue, responseRaw.Headers));
        }
コード例 #2
0
        private static JObject GetResponseItemObject(BunqResponseRaw responseRaw)
        {
            var json = Encoding.UTF8.GetString(responseRaw.BodyBytes);
            var responseWithWrapper = BunqJsonConvert.DeserializeObject <JObject>(json);

            return(responseWithWrapper.GetValue(FIELD_RESPONSE).ToObject <JArray>().Value <JObject>(INDEX_FIRST));
        }
コード例 #3
0
        /// <summary>
        /// De-serialize an object from JSON.
        /// </summary>
        protected static BunqResponse <T> FromJson <T>(BunqResponseRaw responseRaw, string wrapper)
        {
            var responseItemObject      = GetResponseItemObject(responseRaw);
            var unwrappedItemJsonString = GetUnwrappedItemJsonString(responseItemObject, wrapper);
            var responseValue           = BunqJsonConvert.DeserializeObject <T>(unwrappedItemJsonString);

            return(new BunqResponse <T>(responseValue, responseRaw.Headers));
        }
コード例 #4
0
        /// <summary>
        /// De-serializes an UUID object and returns its string value.
        /// </summary>
        protected static BunqResponse <string> ProcessForUuid(BunqResponseRaw responseRaw)
        {
            var responseItemObject      = GetResponseItemObject(responseRaw);
            var unwrappedItemJsonString = GetUnwrappedItemJsonString(responseItemObject, FIELD_UUID);
            var responseValue           = BunqJsonConvert.DeserializeObject <Uuid>(unwrappedItemJsonString).UuidString;

            return(new BunqResponse <string>(responseValue, responseRaw.Headers));
        }
コード例 #5
0
        /// <summary>
        /// De-serializes an ID object and returns its integer value.
        /// </summary>
        protected static BunqResponse <int> ProcessForId(BunqResponseRaw responseRaw)
        {
            var responseItemObject      = GetResponseItemObject(responseRaw);
            var unwrappedItemJsonString = GetUnwrappedItemJsonString(responseItemObject, FIELD_ID);
            var responseValue           = BunqJsonConvert.DeserializeObject <Id>(unwrappedItemJsonString).IdInt;

            return(new BunqResponse <int>(responseValue, responseRaw.Headers));
        }
コード例 #6
0
        /// <summary>
        /// De-serializes an object from a JSON format specific to Installation and SessionServer.
        /// </summary>
        protected static BunqResponse <T> FromJsonArrayNested <T>(BunqResponseRaw responseRaw)
        {
            var json            = Encoding.UTF8.GetString(responseRaw.BodyBytes);
            var jObject         = BunqJsonConvert.DeserializeObject <JObject>(json);
            var jsonArrayString = jObject.GetValue(FIELD_RESPONSE).ToString();
            var responseValue   = BunqJsonConvert.DeserializeObject <T>(jsonArrayString);

            return(new BunqResponse <T>(responseValue, responseRaw.Headers));
        }
コード例 #7
0
        protected static BunqResponse <List <T> > FromJsonList <T>(BunqResponseRaw responseRaw)
        {
            var responseObject = DeserializeResponseObject(responseRaw);
            var responseValue  = responseObject
                                 .GetValue(FIELD_RESPONSE).ToObject <JArray>()
                                 .Select(itemObject => BunqJsonConvert.DeserializeObject <T>(itemObject.ToString()))
                                 .ToList();
            var pagination = DeserializePagination(responseObject);

            return(new BunqResponse <List <T> >(responseValue, responseRaw.Headers, pagination));
        }
コード例 #8
0
        private static JObject DeserializeResponseObject(BunqResponseRaw responseRaw)
        {
            var json = Encoding.UTF8.GetString(responseRaw.BodyBytes);

            return(BunqJsonConvert.DeserializeObject <JObject>(json));
        }