org.castor.cpa.persistence.sql.query.visitor
Class SapDbQueryVisitor

java.lang.Object
  extended by org.castor.cpa.persistence.sql.query.visitor.DefaultQueryVisitor
      extended by org.castor.cpa.persistence.sql.query.visitor.SapDbQueryVisitor
All Implemented Interfaces:
Visitor

public final class SapDbQueryVisitor
extends DefaultQueryVisitor

Visitor defining special behavior of query building for SapDb database.

Version:
$Revision: 9051 $ $Date: 2011-08-23 23:25:04 +0200 (Di, 23 Aug 2011) $
Author:
Dennis Butterstein, Ralf Joachim

Field Summary
 
Fields inherited from class org.castor.cpa.persistence.sql.query.visitor.DefaultQueryVisitor
_queryString, LOG
 
Constructor Summary
SapDbQueryVisitor()
           
 
Method Summary
protected  void handleJoinConstruction(Qualifier qualifier)
          Method handling construction of joins.
protected  void handleLock(Select select)
          Method appending lock clauses as "FOR UPDATE" when needed.
protected  String quoteName(String name)
          Method returning prepared string to match requirements of specific databases if needed.
 void visit(Join join)
          Visit method to handle Join elements.
 void visit(Select select)
          Visit method to handle select elements.
 
Methods inherited from class org.castor.cpa.persistence.sql.query.visitor.DefaultQueryVisitor
addTableNames, getSequenceNextValString, toString, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SapDbQueryVisitor

public SapDbQueryVisitor()
Method Detail

visit

public void visit(Join join)
Visit method to handle Join elements.

Specified by:
visit in interface Visitor
Overrides:
visit in class DefaultQueryVisitor
Parameters:
join - Join object to be handled

visit

public void visit(Select select)
Visit method to handle select elements.

Specified by:
visit in interface Visitor
Overrides:
visit in class DefaultQueryVisitor
Parameters:
select - Select object to be handled.

handleJoinConstruction

protected void handleJoinConstruction(Qualifier qualifier)
Method handling construction of joins. If Processing of joins is delegated to visit(Table) and visit(TableAlias) method we get the problem that they are processed by every class holding qualifier as well (e. g. compare). This behavior can result in an infinite loop.

Overrides:
handleJoinConstruction in class DefaultQueryVisitor
Parameters:
qualifier - Qualifier to process joins from.

quoteName

protected String quoteName(String name)
Method returning prepared string to match requirements of specific databases if needed.

Overrides:
quoteName in class DefaultQueryVisitor
Parameters:
name - String to be prepared.
Returns:
Prepared string.

handleLock

protected void handleLock(Select select)
Method appending lock clauses as "FOR UPDATE" when needed.

Overrides:
handleLock in class DefaultQueryVisitor
Parameters:
select - Select to check if locking-clauses have to be appended or not.


Copyright © 2012. All Rights Reserved.