org.apache.jena.query.Query.getOrderBy()方法的使用及代码示例

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

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

Query.getOrderBy介绍

暂无

代码示例

代码示例来源:origin: apache/tinkerpop

  1. /**
  2. * Extracts any {@code SortCondition} instances from the SPARQL query and holds them in an index of their keys
  3. * where the value is that keys sorting direction.
  4. */
  5. private static Map<String, Order> createOrderIndexFromQuery(final Query query) {
  6. final Map<String, Order> orderingIndex = new HashMap<>();
  7. if (query.hasOrderBy()) {
  8. final List<SortCondition> sortingConditions = query.getOrderBy();
  9. for (SortCondition sortCondition : sortingConditions) {
  10. final Expr expr = sortCondition.getExpression();
  11. // by default, the sort will be ascending. getDirection() returns -2 if the DESC/ASC isn't
  12. // supplied - weird
  13. orderingIndex.put(expr.getVarName(), sortCondition.getDirection() == -1 ? Order.decr : Order.incr);
  14. }
  15. }
  16. return orderingIndex;
  17. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitOrderBy(Query query)
  3. {
  4. if ( query.getOrderBy() != null )
  5. x ^= query.getOrderBy().hashCode() ;
  6. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitOrderBy(Query query1)
  3. {
  4. check("ORDER BY", query1.getOrderBy(), query2.getOrderBy() ) ;
  5. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitOrderBy(Query query) {
  3. if (query.hasOrderBy()) {
  4. for (SortCondition sc : query.getOrderBy())
  5. newQuery.addOrderBy(sc);
  6. }
  7. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. @Override
  2. public void visitOrderBy(Query query) {
  3. if ( query.hasOrderBy() ) {
  4. for (SortCondition sc : query.getOrderBy())
  5. newQuery.addOrderBy(sc) ;
  6. }
  7. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. /**
  2. * <sparql xmlns="http://www.w3.org/2005/sparql-results#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3.org/2001/sw/DataAccess/rf1/result2.xsd">
  3. * <head>
  4. * <variable name="s"/>
  5. * <variable name="p"/>
  6. * <variable name="o"/>
  7. * </head>
  8. * <results distinct="false" ordered="true">
  9. * @see org.springframework.batch.item.file.FlatFileHeaderCallback#writeHeader(java.io.Writer)
  10. */
  11. @Override
  12. public void writeHeader(Writer writer) throws IOException {
  13. PrintWriter pw = new PrintWriter(writer);
  14. pw.println("<?xml version=\"1.0\"?>") ;
  15. pw.println("<sparql xmlns=\"http://www.w3.org/2005/sparql-results#\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.w3.org/2001/sw/DataAccess/rf1/result2.xsd\">");
  16. pw.println(" <head>") ;
  17. List<String> varNames = query.getResultVars();
  18. for(String varName : varNames) {
  19. pw.println(" <variable name=\"" + varName + "\" />") ;
  20. }
  21. pw.println(" </head>") ;
  22. pw.print(" <results distinct=\"" + query.isDistinct() + "\" " + "ordered=\"" + !CollectionUtils.isEmpty(query.getOrderBy()) + "\">");
  23. pw.flush();
  24. }
  25. });

代码示例来源:origin: apache/jena

  1. @Override
  2. public void setVars(Map<Var, Node> values) {
  3. if (values.isEmpty()) {
  4. return;
  5. }
  6. ExprRewriter exprRewriter = new ExprRewriter(values);
  7. ExprList having = exprRewriter.rewrite(new ExprList(query
  8. .getHavingExprs()));
  9. List<SortCondition> orderBy = exprRewriter
  10. .rewriteSortConditionList(query.getOrderBy());
  11. VarExprList groupBy = exprRewriter.rewrite(query.getGroupBy());
  12. query.getHavingExprs().clear();
  13. query.getHavingExprs().addAll(having.getList());
  14. if (orderBy != null) {
  15. if (query.getOrderBy() == null) {
  16. for (SortCondition sc : orderBy) {
  17. query.addOrderBy(sc);
  18. }
  19. } else {
  20. query.getOrderBy().clear();
  21. query.getOrderBy().addAll(orderBy);
  22. }
  23. }
  24. query.getGroupBy().clear();
  25. query.getGroupBy().addAll(groupBy);
  26. }

代码示例来源:origin: apache/jena

  1. /** Find the variables needed out of this query.
  2. * If we don't do sorting in-DB, then we need the ORDER BY variables as well.
  3. * @param query
  4. */
  5. public static List<Var> queryOutVars(Query query)
  6. {
  7. // If part query, need all variables.
  8. // Project variables
  9. List<Var> vars = toList(map(query.getResultVars().iterator(), Var::alloc)) ;
  10. // Add the ORDER BY variables
  11. List<SortCondition> orderConditions = query.getOrderBy() ;
  12. if ( orderConditions != null )
  13. {
  14. for ( SortCondition sc : orderConditions )
  15. {
  16. Set<Var> x = sc.getExpression().getVarsMentioned() ;
  17. for ( Var v : x )
  18. {
  19. if ( ! vars.contains(v) )
  20. vars.add(v) ;
  21. }
  22. }
  23. }
  24. return vars ;
  25. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. @Override
  2. public void setVars(Map<Var, Node> values) {
  3. if (values.isEmpty()) {
  4. return;
  5. }
  6. ExprRewriter exprRewriter = new ExprRewriter(values);
  7. ExprList having = exprRewriter.rewrite(new ExprList(query
  8. .getHavingExprs()));
  9. List<SortCondition> orderBy = exprRewriter
  10. .rewriteSortConditionList(query.getOrderBy());
  11. VarExprList groupBy = exprRewriter.rewrite(query.getGroupBy());
  12. query.getHavingExprs().clear();
  13. query.getHavingExprs().addAll(having.getList());
  14. if (orderBy != null) {
  15. if (query.getOrderBy() == null) {
  16. for (SortCondition sc : orderBy) {
  17. query.addOrderBy(sc);
  18. }
  19. } else {
  20. query.getOrderBy().clear();
  21. query.getOrderBy().addAll(orderBy);
  22. }
  23. }
  24. query.getGroupBy().clear();
  25. query.getGroupBy().addAll(groupBy);
  26. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitOrderBy(Query query)
  3. {
  4. if ( query.hasOrderBy() )
  5. {
  6. out.print("ORDER BY ") ;
  7. boolean first = true ;
  8. for (SortCondition sc : query.getOrderBy())
  9. {
  10. if ( ! first )
  11. out.print(" ") ;
  12. sc.format(fmtExpr, out) ;
  13. first = false ;
  14. }
  15. out.println() ;
  16. }
  17. }

代码示例来源:origin: apache/jena

  1. /**
  2. * Copy all the modifications from the Solution Modifier argument
  3. * @param solutionModifier The solution modifier to copy from.
  4. */
  5. public void addAll(SolutionModifierHandler solutionModifier) {
  6. List<SortCondition> lst = solutionModifier.query.getOrderBy();
  7. if (lst != null) {
  8. for (SortCondition sc : lst) {
  9. query.addOrderBy(sc);
  10. }
  11. }
  12. query.getGroupBy().addAll(solutionModifier.query.getGroupBy());
  13. query.getHavingExprs().addAll(solutionModifier.query.getHavingExprs());
  14. query.setLimit(solutionModifier.query.getLimit());
  15. query.setOffset(solutionModifier.query.getOffset());
  16. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. /**
  2. * Copy all the modifications from the Solution Modifier argument
  3. * @param solutionModifier The solution modifier to copy from.
  4. */
  5. public void addAll(SolutionModifierHandler solutionModifier) {
  6. List<SortCondition> lst = solutionModifier.query.getOrderBy();
  7. if (lst != null) {
  8. for (SortCondition sc : lst) {
  9. query.addOrderBy(sc);
  10. }
  11. }
  12. query.getGroupBy().addAll(solutionModifier.query.getGroupBy());
  13. query.getHavingExprs().addAll(solutionModifier.query.getHavingExprs());
  14. query.setLimit(solutionModifier.query.getLimit());
  15. query.setOffset(solutionModifier.query.getOffset());
  16. }

代码示例来源:origin: apache/jena

  1. /** Transform a query using {@link ElementTransform} and {@link ExprTransform}.
  2. * It is the responsibility of these transforms to transform to a legal SPARQL query.
  3. */
  4. public static Query transform(Query query, ElementTransform transform, ExprTransform exprTransform) {
  5. Query q2 = QueryTransformOps.shallowCopy(query);
  6. // "Shallow copy with transform."
  7. transformVarExprList(q2.getProject(), exprTransform);
  8. transformVarExprList(q2.getGroupBy(), exprTransform);
  9. transformExprList(q2.getHavingExprs(), exprTransform);
  10. if (q2.getOrderBy() != null) {
  11. transformSortConditions(q2.getOrderBy(), exprTransform);
  12. }
  13. // ?? DOES NOT WORK: transformExprListAgg(q2.getAggregators(), exprTransform) ; ??
  14. // if ( q2.hasHaving() ) {}
  15. // if ( q2.hasAggregators() ) {}
  16. Element el = q2.getQueryPattern();
  17. Element el2 = ElementTransformer.transform(el, transform, exprTransform);
  18. // Top level is always a group.
  19. if (!(el2 instanceof ElementGroup)) {
  20. ElementGroup eg = new ElementGroup();
  21. eg.addElement(el2);
  22. el2 = eg;
  23. }
  24. q2.setQueryPattern(el2);
  25. return q2;
  26. }

代码示例来源:origin: com.github.galigator.openllet/openllet-jena

  1. final List<SortCondition> sortConditions = _query.getOrderBy();
  2. if (sortConditions != null && !sortConditions.isEmpty())
  3. results = new SortedResultSet(results, sortConditions);

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. if(query.getOrderBy() == null) {
  2. query.addOrderBy(sc);
  3. } else {
  4. query.getOrderBy().add(0, sc);

代码示例来源:origin: Galigator/openllet

  1. final List<SortCondition> sortConditions = _query.getOrderBy();
  2. if (sortConditions != null && !sortConditions.isEmpty())
  3. results = new SortedResultSet(results, sortConditions);

代码示例来源:origin: Galigator/openllet

  1. final List<SortCondition> sortConditions = _query.getOrderBy();
  2. if (sortConditions != null && !sortConditions.isEmpty())
  3. results = new SortedResultSet(results, sortConditions);

代码示例来源:origin: apache/jena

  1. if ( query.getOrderBy() != null )
  2. for ( SortCondition sc : query.getOrderBy() )

相关文章