/// <summary>
        /// Returns a list with all reports
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public async System.Threading.Tasks.Task <CatalogItem[]> GetItems(string path)
        {
            TrustedUserHeader header = new TrustedUserHeader();

            return(await System.Threading.Tasks.Task.Factory.FromAsync <CatalogItem[]>(
                       _service.BeginListChildren(header, path, true, null, null),
                       (ar) =>
            {
                CatalogItem[] items = null;
                _service.EndListChildren(ar, out items);
                return items;
            }));
        }