/// <summary>
        ///  This method is used to get the group details of particular users from the server.
        /// </summary>
        /// <param name="user">User id, username or email of the user.</param>
        /// <returns>List of groups of the user.</returns>

        public ApiGroupListV2 GetGroupsOfUser(string user)
        {
            var overrideUrl = _baseUrl + "/users/" + user + "/groups";
            var result      = _serverClientV2.Get(new ApiGroupListV2(), overrideUrl);

            if (result != null)
            {
                return(JsonConvert.DeserializeObject <ApiGroupListV2>(result.Content));
            }
            else
            {
                return(new ApiGroupListV2());
            }
        }
        /// <summary>
        /// This method is used to get the list of permissions of a specific user.
        /// </summary>
        /// <param name="id">User Id</param>
        /// <returns>list of permissions of a specific user.</returns>

        public List <ApiUserPermissionDetail> GetUserPermission(int id)
        {
            var requestUrl     = _baseUrl + "/permissions/users/" + id;
            var userpermission = new List <ApiUserPermissionDetail>();
            var result         = _serverClientV2.Get(userpermission, requestUrl);

            if (result != null)
            {
                return(JsonConvert.DeserializeObject <List <ApiUserPermissionDetail> >(result.Content));
            }
            else
            {
                return(userpermission);
            }
        }
예제 #3
0
        /// <summary>
        /// This method returns item details for the values Category Id, Report Id, Datasource Id, Dataset Id, File Id and Schedule Id.
        /// </summary>
        /// <param name="id">The id values may be Category Id, Report Id, Datasource Id, Dataset Id, File Id and Schedule Id.</param>
        /// <returns>Item details for the values.</returns>

        public ApiSpecifiedItemDetail GetItemDetail(Guid id)
        {
            var overrideUrl = _baseUrl + "/items/" + id;
            var itemDetail  = new ApiSpecifiedItemDetail();
            var result      = _serverClientV2.Get(itemDetail, overrideUrl);

            if (result != null)
            {
                return(JsonConvert.DeserializeObject <ApiSpecifiedItemDetail>(result.Content));
            }
            else
            {
                return(itemDetail);
            }
        }
예제 #4
0
        /// <summary>
        /// This method returns list of items for the itemtype category, dashboard, datasource, widget and schedule.
        /// </summary>
        /// <param name="itemType">Item type (category, dashboard, datasource, widget and schedule)</param>
        /// <param name="serverPath">Category path</param>
        /// <returns>List of items for the itemtype.</returns>

        public List <ApiItems> GetItems([FromUri] ItemType itemType, [FromUri] string serverPath = null)
        {
            var requestUrl = _baseUrl + "/items";
            var items      = new List <ApiItems>();
            var param      = new Dictionary <string, object>();

            param.Add("itemtype", itemType);
            var result = _serverClientV2.Get(items, requestUrl, param);

            if (result != null)
            {
                return(JsonConvert.DeserializeObject <List <ApiItems> >(result.Content));
            }
            else
            {
                return(items);
            }
        }