/// <summary> /// Executes a Delete request. /// </summary> /// <param name="url">Request URL.</param> /// <param name="client">REST client.</param> /// <returns></returns> protected static bool Delete(string url, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Delete, url); Response response = client.Request(request); return(response.StatusCode == HttpStatusCode.NoContent); }
/// <summary> /// Gets the media for the specified attachment. /// </summary> /// <param name="accountId">Account ID.</param> /// <param name="messageId">Message ID.</param> /// <param name="id">Attachment ID.</param> /// <param name="client">REST client.</param> /// <returns></returns> private static Media GetMedia(int accountId, int messageId, int id, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Get, Message.BuildGetAttachmentUrl(accountId, messageId, id, asJson: false)); Response response = client.Request(request); return(new Media(response.Content, response.ContentEncoding, response.ContentLength, response.RawBytes, response.ResponseUri)); }
/// <summary> /// Executes a Create or Update request with a raw response. /// </summary> /// <param name="method">HTTP method.</param> /// <param name="url">Request URL.</param> /// <param name="body">HTTP body.</param> /// <param name="client">REST client.</param> /// <returns></returns> private static string CreateOrUpdateRawContent(string method, string url, IBody body, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(method, url, body); Response response = client.Request(request); return(response.Content); }
/// <summary> /// Executes a Get request that returns the raw content. /// </summary> /// <param name="url">Request URL.</param> /// <param name="queryParams">Query string parameters.</param> /// <param name="client">REST client.</param> /// <returns></returns> protected static string GetRawContent(string url, IQueryParams queryParams = null, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Get, url, queryParams); Response response = client.Request(request); return(response.Content); }
/// <summary> /// Updates the user password. /// </summary> /// <param name="accountId">Account ID.</param> /// <param name="id">User ID.</param> /// <param name="updatePassword">Update password.</param> /// <param name="client">REST client.</param> /// <returns></returns> private static bool UpdatePassword(int accountId, int id, UpdatePassword updatePassword, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Put, BuildUpdatePasswordUrl(accountId, id), updatePassword); Response response = client.Request(request); return(response.StatusCode == HttpStatusCode.OK); }
/// <summary> /// Executes a Get request that returns a single instance. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url">URL.</param> /// <param name="queryParams">Query parameters.</param> /// <param name="includeRoot">if set to <c>true</c> [include root].</param> /// <param name="client">REST client.</param> /// <returns></returns> protected static T GetSingle <T> (string url, QueryParams queryParams = null, bool includeRoot = false, JsonConverter[] jsonConverters = null, IVcRestClient client = null) where T : IResourceEntity { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Get, url, queryParams); Response response = client.Request(request); JObject json = JObject.Parse(response.Content); return(JsonConvert.DeserializeObject <T>(includeRoot == true ? json.ToString() : json.First.First.ToString(), jsonConverters)); }
/// <summary> /// Executes a Count request. /// </summary> /// <param name="url">URL.</param> /// <param name="queryParams">Query parameters.</param> /// <param name="client">REST client.</param> /// <returns></returns> protected static int Count(string url, IQueryParams queryParams = null, IVcRestClient client = null) { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Get, url, queryParams); Response response = client.Request(request); JObject json = JObject.Parse(response.Content); return(JsonConvert.DeserializeObject <int>(json.First.First.ToString())); }
/// <summary> /// Executes a Create or Update request. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="method">HTTP method.</param> /// <param name="url">Request URL.</param> /// <param name="body">HTTP body.</param> /// <param name="client">REST client.</param> /// <returns></returns> private static T CreateOrUpdate <T>(string method, string url, IBody body, JsonConverter[] jsonConverters = null, IVcRestClient client = null) where T : IResourceEntity { client = client ?? VcClient.GetRestClient(); Request request = new Request(method, url, body); Response response = client.Request(request); JObject json = JObject.Parse(response.Content); return(JsonConvert.DeserializeObject <T>(json.First.First.ToString(), jsonConverters)); }
/// <summary> /// Executes a Get request that returns a list. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="url">Request URL.</param> /// <param name="queryParams">Query string parameters.</param> /// <param name="client">REST client.</param> /// <returns></returns> protected static List <T> Get <T> (string url, IQueryParams queryParams = null, JsonConverter[] jsonConverters = null, IVcRestClient client = null) where T : IResourceEntity { client = client ?? VcClient.GetRestClient(); Request request = new Request(Method.Get, url, queryParams); Response response = client.Request(request); JObject json = JObject.Parse(response.Content); return(JsonConvert.DeserializeObject <List <T> >(json.First.First.ToString(), jsonConverters)); }