org.xwiki.query.Query类的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(9.7k)|赞(0)|评价(0)|浏览(156)

本文整理了Java中org.xwiki.query.Query类的一些代码示例,展示了Query类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query类的具体详情如下:
包路径:org.xwiki.query.Query
类名称:Query

Query介绍

[英]This is a Query interface, representing all queries in various languages for various stores.

Note that it was modeled after the JCR Query interface.
[中]这是一个查询接口,用各种语言表示各种商店的所有查询。
注意,它是按照JCR查询接口建模的。

代码示例

代码示例来源:origin: phenotips/phenotips

  1. private List<String> runQuery(String queryString, String formattedInput, int resultsLimit)
  2. {
  3. Query query = null;
  4. List<String> queryResults = null;
  5. try {
  6. query = this.qm.createQuery(queryString, Query.XWQL);
  7. if (resultsLimit > 0) {
  8. query.setLimit(resultsLimit);
  9. query.setOffset(0);
  10. }
  11. if (StringUtils.isNotBlank(formattedInput)) {
  12. query.bindValue(UsersAndGroups.INPUT_PARAMETER, formattedInput);
  13. }
  14. queryResults = query.execute();
  15. } catch (QueryException e) {
  16. this.logger.error("Error while performing query: [{}] ", queryString, e.getMessage());
  17. return Collections.emptyList();
  18. }
  19. return queryResults;
  20. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-wikistream-instance-oldcore

  1. @Override
  2. public List<String> getDocuments(String wiki, String space) throws WikiStreamException
  3. {
  4. try {
  5. Query query =
  6. this.queryManager
  7. .createQuery(
  8. "select distinct doc.name from Document doc where doc.space = :space order by doc.name asc",
  9. Query.XWQL);
  10. query.bindValue("space", space);
  11. query.setWiki(wiki);
  12. return query.execute();
  13. } catch (QueryException e) {
  14. throw new WikiStreamException(String.format(
  15. "Failed to get the list of documents in wiki [%s] and space [%s]", wiki, space), e);
  16. }
  17. }
  18. }

代码示例来源:origin: org.phenotips/pingback-client-api

  1. @Override
  2. public Map<String, Object> provideData()
  3. {
  4. Map<String, Object> jsonMap = new HashMap<>();
  5. try {
  6. Query q = this.qm.createQuery("from doc.object(XWiki.XWikiUsers) as user", Query.XWQL);
  7. q.addFilter(this.countFilter);
  8. long count = 0;
  9. for (String instanceId : this.wikiManager.getAllIds()) {
  10. q.setWiki(instanceId);
  11. List<Object> results = q.execute();
  12. long instanceCount = (long) results.get(0);
  13. count += instanceCount;
  14. }
  15. jsonMap.put(PROPERTY_USER_COUNT, count);
  16. } catch (QueryException | WikiManagerException e) {
  17. logWarning("Error getting users count", e);
  18. }
  19. return jsonMap;
  20. }

代码示例来源:origin: com.xpn.xwiki.platform/xwiki-rest-server

  1. private List<String> getDocumentsWithTag(String tag) throws QueryException
  2. {
  3. String query =
  4. "select doc.fullName from XWikiDocument as doc, BaseObject as obj, DBStringListProperty as prop "
  5. + "where obj.name=doc.fullName and obj.className='XWiki.TagClass' and obj.id=prop.id.id "
  6. + "and prop.id.name='tags' and :tag in elements(prop.list) order by doc.name asc";
  7. List<String> documentsWithTag = queryManager.createQuery(query, Query.HQL).bindValue("tag", tag).execute();
  8. return documentsWithTag;
  9. }
  10. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-search-solr-api

  1. /**
  2. * Fetches the next 'page' of results from the database.
  3. */
  4. private void fetchNextResults()
  5. {
  6. try {
  7. // We use basic pagination (absolute offset) because we don't expect the database to change too much while
  8. // the synchronization takes place. Also, the database is used as the reference store, meaning that we
  9. // update the Solr index to match the database, not the other way around.
  10. results = getQuery().setWiki(wiki).setOffset(offset).execute();
  11. offset += LIMIT;
  12. } catch (QueryException e) {
  13. results = Collections.emptyList();
  14. logger.error("Failed to query the database.", e);
  15. }
  16. }

代码示例来源:origin: com.xpn.xwiki.platform.plugins/xwiki-plugin-activitystream

  1. /**
  2. * {@inheritDoc}
  3. *
  4. * @see EventStream#searchEvents(Query)
  5. */
  6. public List<Event> searchEvents(Query query) throws QueryException
  7. {
  8. Query q = this.qm.createQuery("select event from ActivityEventImpl event "
  9. + query.getStatement(), query.getLanguage());
  10. for (Map.Entry<String, Object> entry : query.getNamedParameters().entrySet()) {
  11. q.bindValue(entry.getKey(), entry.getValue());
  12. }
  13. for (Map.Entry<Integer, Object> entry : query.getPositionalParameters().entrySet()) {
  14. q.bindValue(entry.getKey(), entry.getValue());
  15. }
  16. List<ActivityEvent> events = q.execute();
  17. return convertActivitiesToEvents(events);
  18. }

代码示例来源:origin: org.phenotips/family-studies-api

  1. private List<String> runQuery(String queryString, String input, int resultsLimit)
  2. {
  3. String formattedInput = String.format(PhenotipsFamilyExport.INPUT_FORMAT, input);
  4. // Query patients
  5. Query query = null;
  6. List<String> queryResults = null;
  7. try {
  8. query = this.qm.createQuery(queryString, Query.XWQL);
  9. query.setLimit(resultsLimit);
  10. query.bindValue(PhenotipsFamilyExport.INPUT_PARAMETER, formattedInput);
  11. queryResults = query.execute();
  12. } catch (QueryException e) {
  13. this.logger.error("Error while performing patiets query: [{}] ", e.getMessage());
  14. return Collections.emptyList();
  15. }
  16. return queryResults;
  17. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-wikistream-instance-oldcore

  1. @Override
  2. public List<String> getSpaces(String wiki) throws WikiStreamException
  3. {
  4. try {
  5. return this.queryManager.getNamedQuery("getSpaces").setWiki(wiki).execute();
  6. } catch (QueryException e) {
  7. throw new WikiStreamException(String.format("Failed to get the list of spaces in wiki [%s]", wiki), e);
  8. }
  9. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-query-manager

  1. @Override
  2. public <T> List<T> execute() throws QueryException
  3. {
  4. return this.query.execute();
  5. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-query-manager

  1. countQuery.setWiki(getWiki());
  2. for (Map.Entry<Integer, Object> entry : getPositionalParameters().entrySet()) {
  3. countQuery.bindValue(entry.getKey(), entry.getValue());
  4. countQuery.bindValue(entry.getKey(), entry.getValue());
  5. countQuery.addFilter(filter);
  6. countQuery.addFilter(this.componentManager.<QueryFilter>getInstance(QueryFilter.class, "count"));
  7. List<Long> results = countQuery.execute();
  8. result = results.get(0);
  9. } catch (Exception e) {

代码示例来源:origin: org.phenotips/family-studies-api

  1. private long getLastUsedId() throws QueryException
  2. {
  3. this.logger.debug("getLastUsedId()");
  4. long crtMaxID = 0;
  5. Query q = this.qm.createQuery("select family.identifier "
  6. + "from Document doc, "
  7. + " doc.object(PhenoTips.FamilyClass) as family "
  8. + "where family.identifier is not null "
  9. + "order by family.identifier desc", Query.XWQL).setLimit(1);
  10. List<Long> crtMaxIDList = q.execute();
  11. if (crtMaxIDList.size() > 0 && crtMaxIDList.get(0) != null) {
  12. crtMaxID = crtMaxIDList.get(0);
  13. }
  14. crtMaxID = Math.max(crtMaxID, 0);
  15. return crtMaxID;
  16. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-watchlist-api

  1. query.setOffset(start);
  2. query.setLimit(nb);
  3. query.bindValues(values);
  4. String wikiPrefix = wiki + DefaultWatchListStore.WIKI_SPACE_SEP;
  5. try {
  6. query.setWiki(wiki);
  7. List<String> upDocsInWiki = query.execute();

代码示例来源:origin: com.xpn.xwiki.platform/xwiki-rest-server

  1. queryManager.getNamedQuery("getSpaces").setOffset(start).setLimit(number).execute();

代码示例来源:origin: org.xwiki.platform/xwiki-platform-messagestream-api

  1. @Override
  2. public List<Event> getRecentPersonalMessages(DocumentReference author, int limit, int offset)
  3. {
  4. List<Event> result = new ArrayList<Event>();
  5. try {
  6. Query q = this.qm.createQuery(
  7. "where event.application = 'MessageStream' and event.type = 'personalMessage'"
  8. + " and event.user = :user order by event.date desc",
  9. Query.XWQL);
  10. q.bindValue("user", this.serializer.serialize(author));
  11. q.setLimit(limit > 0 ? limit : 30).setOffset(offset >= 0 ? offset : 0);
  12. result = this.stream.searchEvents(q);
  13. } catch (QueryException ex) {
  14. LOG.warn("Failed to search personal messages: {}", ex.getMessage());
  15. }
  16. return result;
  17. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-query-manager

  1. @Override
  2. public Query bindValue(int index, Object val)
  3. {
  4. this.query.bindValue(index, val);
  5. return this;
  6. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-tag-api

  1. query.bindValues(parameters);
  2. query.addFilter(Utils.getComponent(QueryFilter.class, UniqueDocumentFilter.HINT));
  3. if (!includeHiddenDocuments) {
  4. query.addFilter(Utils.getComponent(QueryFilter.class, HiddenDocumentFilter.HINT));
  5. results = query.execute();
  6. } catch (QueryException e) {
  7. throw new XWikiException(XWikiException.MODULE_XWIKI_STORE, XWikiException.ERROR_XWIKI_UNKNOWN,

代码示例来源:origin: org.xwiki.platform/xwiki-platform-search-solr-api

  1. query = queryManager.createQuery(select + whereClause + orderBy, Query.HQL).setLimit(LIMIT);
  2. countQuery = queryManager.createQuery(whereClause, Query.HQL).addFilter(countFilter);
  3. query.bindValue("space", this.localEntityReferenceSerializer.serialize(spaceReference));
  4. if (documentReference != null) {
  5. query.bindValue("name", documentReference.getName());
  6. for (Map.Entry<String, Object> parameter : query.getNamedParameters().entrySet()) {
  7. countQuery.bindValue(parameter.getKey(), parameter.getValue());

代码示例来源:origin: org.xwiki.platform/xwiki-platform-tag-api

  1. /**
  2. * Get all tags within the wiki.
  3. *
  4. * @param context XWiki context.
  5. * @return list of tags (alphabetical order).
  6. * @throws com.xpn.xwiki.XWikiException if search query fails (possible failures: DB access problems, etc).
  7. */
  8. public static List<String> getAllTags(XWikiContext context) throws XWikiException
  9. {
  10. List<String> results;
  11. String hql = "select distinct elements(prop.list) from XWikiDocument as doc, BaseObject as obj, "
  12. + "DBStringListProperty as prop where obj.name=doc.fullName and obj.className='XWiki.TagClass' and "
  13. + "obj.id=prop.id.id and prop.id.name='tags'";
  14. try {
  15. Query query = context.getWiki().getStore().getQueryManager().createQuery(hql, Query.HQL);
  16. query.addFilter(Utils.<QueryFilter> getComponent(QueryFilter.class, HiddenDocumentFilter.HINT));
  17. results = query.execute();
  18. } catch (QueryException e) {
  19. throw new XWikiException(XWikiException.MODULE_XWIKI_STORE, XWikiException.ERROR_XWIKI_UNKNOWN,
  20. String.format("Failed to get all tags", hql), e);
  21. }
  22. Collections.sort(results, String.CASE_INSENSITIVE_ORDER);
  23. return results;
  24. }

代码示例来源:origin: org.xwiki.platform/xwiki-platform-crypto-store-wiki

  1. this.query.setWiki(wiki.getName());
  2. this.query.bindValue(STORE, serializer.serialize(store));

代码示例来源:origin: org.xwiki.platform/xwiki-platform-query-manager

  1. @Override
  2. public Query setWiki(String wiki)
  3. {
  4. this.query.setWiki(wiki);
  5. return this;
  6. }

相关文章