Ejemplo n.º 1
0
        public List <string> GetTitleAutocomplete(string query, BookTypeEnumContract?bookType = null,
                                                  ProjectTypeContract?projectType             = null,
                                                  IList <int> selectedCategoryIds             = null, IList <long> selectedProjectIds = null)
        {
            try
            {
                var url = UrlQueryBuilder.Create("metadata/title/autocomplete")
                          .AddParameter("query", query)
                          .AddParameter("bookType", bookType)
                          .AddParameter("projectType", projectType)
                          .AddParameterList("selectedCategoryIds", selectedCategoryIds)
                          .AddParameterList("selectedProjectIds", selectedProjectIds)
                          .ToResult();

                var result = m_client.Get <List <string> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 2
0
        public PagedResultList <ProjectDetailContract> GetProjectList(int start, int count, ProjectTypeContract projectType,
                                                                      ProjectOwnerTypeContract projectOwnerType = ProjectOwnerTypeContract.AllProjects, string filterByName = null, bool fetchPageCount = false,
                                                                      bool fetchLatestChangedResource           = false, bool fetchPermissions = false)
        {
            try
            {
                var url = UrlQueryBuilder.Create("project")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("projectType", projectType)
                          .AddParameter("projectOwnerType", projectOwnerType)
                          .AddParameter("filterByName", filterByName)
                          .AddParameter("fetchPageCount", fetchPageCount)
                          .AddParameter("fetchLatestChangedResource", fetchLatestChangedResource)
                          .AddParameter("fetchPermissions", fetchPermissions)
                          .ToResult();
                var result = m_client.GetPagedList <ProjectDetailContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 3
0
        public PagedResultList <FavoriteBaseInfoContract> GetFavoriteItems(int start, int count, long?filterByLabelId,
                                                                           FavoriteTypeEnumContract?filterByType, string filterByTitle, FavoriteSortEnumContract?sort)
        {
            try
            {
                var url = UrlQueryBuilder.Create("favorite")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("filterByLabelId", filterByLabelId)
                          .AddParameter("filterByType", filterByType)
                          .AddParameter("filterByTitle", filterByTitle)
                          .AddParameter("sort", sort)
                          .ToResult();

                var result = m_client.GetPagedList <FavoriteBaseInfoContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 4
0
        public PagedResultList <FeedbackContract> GetFeedbackList(int start,
                                                                  int count,
                                                                  FeedbackSortEnumContract sort,
                                                                  SortDirectionEnumContract sortDirection,
                                                                  IList <FeedbackCategoryEnumContract> filterCategories,
                                                                  PortalTypeContract portalType)
        {
            try
            {
                var url = UrlQueryBuilder.Create("feedback")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("sort", sort)
                          .AddParameter("sortDirection", sortDirection)
                          .AddParameterList("filterCategories", filterCategories)
                          .AddParameter("portalType", portalType)
                          .ToResult();
                var result = m_client.GetPagedList <FeedbackContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
        public IRawMeasuresCollector CreateCollector(DateTime?from, DateTime?to)
        {
            var builder = new UrlQueryBuilder
            {
                From = from ?? DateTime.Today.AddDays(-1),
                To   = to ?? DateTime.Today
            };

            return(new RawMeasuresCollector(_clientFactory.CreateClient(Constants.ClientName), builder));
        }
        /// <summary>
        /// Build url query string from parameters dictionary.
        /// Converts both key and value to <see cref="string"/> with default converter.
        /// </summary>
        public static string ToUrlQueryString <TValue>(this IDictionary <string, TValue> parameters)
        {
            _ = parameters ?? throw new ArgumentNullException(nameof(parameters));

            var builder = new UrlQueryBuilder
            {
                parameters
            };

            return(builder.ToString());
        }
        public void BuildLevelQueryTest()
        {
            var builder = new UrlQueryBuilder
            {
                From = DateTime.Parse("2020-11-23T00:00:00"),
                To   = DateTime.Parse("2020-11-24T00:00:00")
            };
            var actual   = builder.BuildLevelQuery();
            var expected = "de/fluesse/wasserstand/isar/muenchen-himmelreichbruecke-16515005/messwerte/tabelle?beginn=23.11.2020&ende=24.11.2020";

            Assert.AreEqual(expected, actual);
        }
Ejemplo n.º 8
0
        /// <inheritdoc cref="IDictionaryExtensions.ToUrlQueryString{TValue}(IDictionary{string, TValue})"/>
        public static string ToUrlQueryString(this NameValueCollection source)
        {
            _ = source ?? throw new ArgumentNullException(nameof(source));

            var dictionary = source.AllKeys.ToDictionary(key => key, key => source[key]);
            var builder    = new UrlQueryBuilder
            {
                dictionary
            };

            return(builder.ToString());
        }
Ejemplo n.º 9
0
        public List <FavoriteHeadwordContract> GetFavoriteHeadwords()
        {
            try
            {
                var url    = UrlQueryBuilder.Create("favorite/headword").ToResult();
                var result = m_client.Get <List <FavoriteHeadwordContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 10
0
        public List <FavoriteLabelContract> GetFavoriteLabelList(int?count = null)
        {
            try
            {
                var result = m_client.Get <List <FavoriteLabelContract> >(UrlQueryBuilder.Create("favorite/label").AddParameter("count", count)
                                                                          .ToResult());
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 11
0
        public List <BucketShortContract> GetBuckets(string cardFileId, string headword = null)
        {
            try
            {
                var url = UrlQueryBuilder.Create($"cardfile/{cardFileId}/bucket")
                          .AddParameter("headword", headword)
                          .ToResult();
                var result = m_client.Get <List <BucketShortContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 12
0
        public BookContract GetBookInfoByExternalId(string externalId, ProjectTypeContract projectType)
        {
            try
            {
                var url = UrlQueryBuilder.Create("book/info")
                          .AddParameter("externalId", externalId)
                          .AddParameter("projectType", projectType)
                          .ToResult();
                var result = m_client.Get <BookContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 13
0
        public List <UserGroupContract> GetSingleUserGroupAutocomplete(string query, bool includeSearchInUsers)
        {
            try
            {
                var url = UrlQueryBuilder.Create("singleusergroup/autocomplete")
                          .AddParameter("query", query)
                          .AddParameter("includeSearchInUsers", includeSearchInUsers)
                          .ToResult();
                var result = m_client.Get <List <UserGroupContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 14
0
        public IList <ResourceVersionContract> GetResourceVersionHistory(long resourceId, int?higherVersion, int lowerVersion)
        {
            try
            {
                var url = UrlQueryBuilder.Create($"project/resource/{resourceId}/version")
                          .AddParameter("higherVersion", higherVersion)
                          .AddParameter("lowerVersion", lowerVersion)
                          .ToResult();
                var result = m_client.Get <IList <ResourceVersionContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 15
0
        public List <FavoriteLabelWithBooksAndCategories> GetFavoriteLabelsWithBooksAndCategories(BookTypeEnumContract bookType, ProjectTypeContract?projectType)
        {
            try
            {
                var url = UrlQueryBuilder.Create("favorite/label/with-books-and-categories")
                          .AddParameter("bookType", bookType)
                          .AddParameter("projectType", projectType)
                          .ToResult();
                var result = m_client.Get <List <FavoriteLabelWithBooksAndCategories> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 16
0
        public List <FavoriteBookGroupedContract> GetFavoriteLabeledBooks(IList <long> projectIds, BookTypeEnumContract?bookType, ProjectTypeContract?projectType)
        {
            try
            {
                var url = UrlQueryBuilder.Create("favorite/book/grouped")
                          .AddParameterList("projectIds", projectIds)
                          .AddParameter("bookType", bookType)
                          .ToResult();

                var result = m_client.Get <List <FavoriteBookGroupedContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 17
0
        public List <OriginalAuthorContract> GetOriginalAuthorAutocomplete(string query,
                                                                           BookTypeEnumContract?bookType = null)
        {
            try
            {
                var url = UrlQueryBuilder.Create("author/autocomplete")
                          .AddParameter("query", query)
                          .AddParameter("bookType", bookType)
                          .ToResult();

                var result = m_client.Get <List <OriginalAuthorContract> >(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 18
0
        public PagedResultList <UserContract> GetUsersByGroup(int groupId, int start, int count, string query)
        {
            try
            {
                var url = UrlQueryBuilder.Create($"usergroup/{groupId}/user")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("filterByName", query)
                          .ToResult();

                var result = m_client.GetPagedList <UserContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 19
0
        public PagedResultList <NewsSyndicationItemContract> GetNewsSyndicationItems(int start, int count, NewsTypeEnumContract?itemType, PortalTypeContract portalType)
        {
            try
            {
                var url = UrlQueryBuilder.Create("news")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("itemType", itemType)
                          .AddParameter("portalType", portalType)
                          .ToResult();
                var result = m_client.GetPagedList <NewsSyndicationItemContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 20
0
        public PagedResultList <SnapshotAggregatedInfoContract> GetSnapshotList(long projectId, int start, int count, string query)
        {
            try
            {
                var url = UrlQueryBuilder.Create($"project/{projectId}/snapshot")
                          .AddParameter("start", start)
                          .AddParameter("count", count)
                          .AddParameter("filterByComment", query)
                          .ToResult();

                var result = m_client.GetPagedList <SnapshotAggregatedInfoContract>(url);
                return(result);
            }
            catch (HttpRequestException e)
            {
                if (m_logger.IsErrorEnabled())
                {
                    m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e);
                }

                throw;
            }
        }
Ejemplo n.º 21
0
 public static UrlQueryBuilder AddMatchesCount(this UrlQueryBuilder builder, int count)
 {
     builder.Add("count", count.ToString());
     return(builder);
 }
Ejemplo n.º 22
0
 public static UrlQueryBuilder AddMessagePageToken(this UrlQueryBuilder builder, string pageToken)
 {
     builder.Add("page_token", pageToken);
     return(builder);
 }