コード例 #1
0
        /// <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);
        }
コード例 #2
0
        /// <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));
        }
コード例 #3
0
        /// <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);
        }
コード例 #4
0
        /// <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);
        }
コード例 #5
0
        /// <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);
        }
コード例 #6
0
        /// <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));
        }
コード例 #7
0
        /// <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()));
        }
コード例 #8
0
        /// <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));
        }
コード例 #9
0
        /// <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));
        }
コード例 #10
0
 public static void SetUp()
 {
     VcClient.Init(10000, "123abc123abc123abc", "000111000111000");
 }