Changeset 7159 for FCSSimpleEndpoint


Ignore:
Timestamp:
01/17/18 10:25:44 (6 years ago)
Author:
Oliver Schonefeld
Message:
  • fix Visitor to correctly traverse query parse tree
Location:
FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/ExpressionAnd.java

    r6935 r7159  
    3939        if (!children.isEmpty()) {
    4040            for (QueryNode child : children) {
    41                 visitAnyNode(visitor, child);
     41                child.accept(visitor);
    4242            }
    4343        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/ExpressionGroup.java

    r6935 r7159  
    4949        if (!children.isEmpty()) {
    5050            for (QueryNode child : children) {
    51                 visitAnyNode(visitor, child);
     51                child.accept(visitor);
    5252            }
    5353        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/ExpressionNot.java

    r6935 r7159  
    4747    @Override
    4848    public void accept(QueryVisitor visitor) {
    49         visitAnyNode(visitor, children.get(0));
     49        children.get(0).accept(visitor);
    5050        visitor.visit(this);
    5151    }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/ExpressionOr.java

    r6935 r7159  
    4949        if (!children.isEmpty()) {
    5050            for (QueryNode child : children) {
    51                 visitAnyNode(visitor, child);
     51                child.accept(visitor);
    5252            }
    5353        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryDisjunction.java

    r6935 r7159  
    3939        if (!children.isEmpty()) {
    4040            for (QueryNode child : children) {
    41                 visitAnyNode(visitor, child);
     41                child.accept(visitor);
    4242            }
    4343        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryGroup.java

    r6935 r7159  
    110110        if (!children.isEmpty()) {
    111111            for (QueryNode child : children) {
    112                 visitAnyNode(visitor, child);
     112                child.accept(visitor);
    113113            }
    114114        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryNode.java

    r6937 r7159  
    229229    }
    230230
    231 
    232     protected final void visitAnyNode(QueryVisitor vistor, QueryNode node) {
    233         if (node instanceof QueryDisjunction) {
    234             vistor.visit((QueryDisjunction) node);
    235         } else if (node instanceof QueryGroup) {
    236             vistor.visit((QueryGroup) node);
    237         } else if (node instanceof QuerySegment) {
    238             vistor.visit((QuerySegment) node);
    239         } else if (node instanceof QuerySequence) {
    240             vistor.visit((QuerySequence) node);
    241         } else if (node instanceof ExpressionAnd) {
    242             vistor.visit((ExpressionAnd) node);
    243         } else if (node instanceof Expression) {
    244             vistor.visit((Expression) node);
    245         } else if (node instanceof ExpressionGroup) {
    246             vistor.visit((ExpressionGroup) node);
    247         } else if (node instanceof ExpressionNot) {
    248             vistor.visit((ExpressionNot) node);
    249         } else if (node instanceof ExpressionOr) {
    250             vistor.visit((ExpressionOr) node);
    251         } else if (node instanceof ExpressionWildcard) {
    252             vistor.visit((ExpressionWildcard) node);
    253         } else if (node instanceof SimpleWithin) {
    254             vistor.visit((SimpleWithin) node);
    255         } else {
    256             throw new RuntimeException("unexpected node type: "  +
    257                     node.getNodeType());
    258         }
    259     }
    260 
    261231} // abstract class QueryNode
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QuerySegment.java

    r6935 r7159  
    108108    @Override
    109109    public void accept(QueryVisitor visitor) {
     110        children.get(0).accept(visitor);
    110111        visitor.visit(this);
    111112    }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QuerySequence.java

    r6935 r7159  
    4040        if (!children.isEmpty()) {
    4141            for (QueryNode child : children) {
    42                 visitAnyNode(visitor, child);
     42                child.accept(visitor);
    4343            }
    4444        }
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryVisitor.java

    r6935 r7159  
    2525     * Visit a <em>segment</em> query node.
    2626     *
    27      * @param querySegment
     27     * @param node
    2828     *            the node to visit
    2929     */
    30     public void visit(QuerySegment querySegment);
     30    public void visit(QuerySegment node);
    3131
    3232
     
    3434     * Visit a <em>group</em> query node.
    3535     *
    36      * @param queryGroup
     36     * @param node
    3737     *            the node to visit
    3838     */
    39     public void visit(QueryGroup queryGroup);
     39    public void visit(QueryGroup node);
    4040
    4141
     
    4343     * Visit a <em>sequence</em> query node.
    4444     *
    45      * @param querySequence
     45     * @param node
    4646     *            the node to visit
    4747     */
    48     public void visit(QuerySequence querySequence);
     48    public void visit(QuerySequence node);
    4949
    5050
     
    5252     * Visit a <em>or</em> query node.
    5353     *
    54      * @param queryDisjunction
     54     * @param node
    5555     *            the node to visit
    5656     */
    57     public void visit(QueryDisjunction queryDisjunction);
     57    public void visit(QueryDisjunction node);
    5858
    5959
     
    6161     * Visit a <em>query</em> with within node.
    6262     *
    63      * @param queryWithWithin
     63     * @param node
    6464     *            the node to visit
    6565     */
    66     public void visit(QueryWithWithin queryWithWithin);
     66    public void visit(QueryWithWithin node);
    6767
    6868
     
    7070     * Visit a <em>simple</em> expression node.
    7171     *
    72      * @param expression
     72     * @param node
    7373     *            the node to visit
    7474     */
    75     public void visit(Expression expression);
     75    public void visit(Expression node);
    7676
    7777
     
    7979     * Visit a <em>wildcard</em> expression node.
    8080     *
    81      * @param expressionWildcard
     81     * @param node
    8282     *            the node to visit
    8383     */
    84     public void visit(ExpressionWildcard expressionWildcard);
     84    public void visit(ExpressionWildcard node);
    8585
    8686
     
    8888     * Visit a <em>group</em> expression node.
    8989     *
    90      * @param expressionGroup
     90     * @param node
    9191     *            the node to visit
    9292     */
    93     public void visit(ExpressionGroup expressionGroup);
     93    public void visit(ExpressionGroup node);
    9494
    9595
     
    9797     * Visit a <em>or</em> expression node.
    9898     *
    99      * @param expressionOr
     99     * @param node
    100100     *            the node to visit
    101101     */
    102     public void visit(ExpressionOr expressionOr);
     102    public void visit(ExpressionOr node);
    103103
    104104
     
    106106     * Visit a <em>and</em> expression node.
    107107     *
    108      * @param expressionAnd
     108     * @param node
    109109     *            the node to visit
    110110     */
    111     public void visit(ExpressionAnd expressionAnd);
     111    public void visit(ExpressionAnd node);
    112112
    113113
     
    115115     * Visit a <em>not</em> expression node.
    116116     *
    117      * @param expressionNot
     117     * @param node
    118118     *            the node to visit
    119119     */
    120     public void visit(ExpressionNot expressionNot);
     120    public void visit(ExpressionNot node);
    121121
    122122
     
    124124     * Visit a <em>simple within</em> node.
    125125     *
    126      * @param simpleWithin
     126     * @param node
    127127     *            the node to visit
    128128     */
    129     public void visit(SimpleWithin simpleWithin);
     129    public void visit(SimpleWithin node);
    130130
    131131} // interface QueryVisitor
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryVistorAdapter.java

    r6935 r7159  
    2525
    2626    @Override
    27     public void visit(QuerySegment querySegment) {
     27    public void visit(QuerySegment node) {
    2828    }
    2929
    3030
    3131    @Override
    32     public void visit(QueryGroup queryGroup) {
     32    public void visit(QueryGroup node) {
    3333    }
    3434
    3535
    3636    @Override
    37     public void visit(QuerySequence querySequence) {
     37    public void visit(QuerySequence node) {
    3838    }
    3939
    4040
    4141    @Override
    42     public void visit(QueryDisjunction queryDisjunction) {
     42    public void visit(QueryDisjunction node) {
    4343    }
    4444
    4545
    4646    @Override
    47     public void visit(QueryWithWithin queryWithWithin) {
     47    public void visit(QueryWithWithin node) {
    4848    }
    4949
    5050
    5151    @Override
    52     public void visit(Expression expressionBasic) {
     52    public void visit(Expression node) {
    5353    }
    5454
    5555
    5656    @Override
    57     public void visit(ExpressionWildcard expressionWildcard) {
     57    public void visit(ExpressionWildcard node) {
    5858    }
    5959
    6060
    6161    @Override
    62     public void visit(ExpressionGroup expressionGroup) {
     62    public void visit(ExpressionGroup node) {
    6363    }
    6464
    6565
    6666    @Override
    67     public void visit(ExpressionOr expressionOr) {
     67    public void visit(ExpressionOr node) {
    6868    }
    6969
    7070
    7171    @Override
    72     public void visit(ExpressionAnd expressionAnd) {
     72    public void visit(ExpressionAnd node) {
    7373    }
    7474
    7575
    7676    @Override
    77     public void visit(ExpressionNot expressionNot) {
     77    public void visit(ExpressionNot node) {
    7878    }
    7979
    8080
    8181    @Override
    82     public void visit(SimpleWithin simpleWithin) {
     82    public void visit(SimpleWithin node) {
    8383    }
    8484
  • FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/parser/QueryWithWithin.java

    r6935 r7159  
    6060    @Override
    6161    public void accept(QueryVisitor visitor) {
    62         visitAnyNode(visitor, children.get(0));
     62        children.get(0).accept(visitor);
     63//        visitAnyNode(visitor, children.get(0));
    6364        if (children.size() > 1) {
    64             visitAnyNode(visitor, children.get(1));
     65//            visitAnyNode(visitor, children.get(1));
     66            children.get(1).accept(visitor);
    6567        }
    6668        visitor.visit(this);
Note: See TracChangeset for help on using the changeset viewer.