Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule Class Reference

Inheritance diagram for org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 AbstractRewritingRule (String queryPattern, String rewrite, boolean caseSensitive, boolean stopOnMatch)
boolean hasMatched ()
abstract String rewrite (String sqlQuery)
boolean isCaseSensitive ()
String getQueryPattern ()
String getRewrite ()
boolean isStopOnMatch ()
String getXml ()

Protected Attributes

String queryPattern
String rewrite
boolean isCaseSensitive
boolean stopOnMatch
boolean hasMatched

Detailed Description

This class defines a AbstractRewritingRule to rewrite SQL requests for a specific backend.

Author:
Emmanuel Cecchet
Version:
1.0

Definition at line 36 of file AbstractRewritingRule.java.


Constructor & Destructor Documentation

org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.AbstractRewritingRule String  queryPattern,
String  rewrite,
boolean  caseSensitive,
boolean  stopOnMatch
 

Creates a new AbstractRewritingRule object

Parameters:
queryPattern SQL pattern to match
rewrite rewritten SQL query
caseSensitive true if matching is case sensitive
stopOnMatch true if rewriting must stop after this rule if it matches.

Definition at line 53 of file AbstractRewritingRule.java.

00055   {
00056     this.queryPattern = queryPattern;
00057     this.rewrite = rewrite;
00058     this.isCaseSensitive = caseSensitive;
00059     this.stopOnMatch = stopOnMatch;
00060     this.hasMatched = false;
00061   }


Member Function Documentation

String org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.getQueryPattern  ) 
 

Returns the queryPattern value.

Returns:
Returns the queryPattern.

Definition at line 103 of file AbstractRewritingRule.java.

Referenced by org.objectweb.cjdbc.controller.backend.DatabaseBackend.addRewritingRule().

00104   {
00105     return queryPattern;
00106   }

String org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.getRewrite  ) 
 

Returns the rewrite value.

Returns:
Returns the rewrite.

Definition at line 113 of file AbstractRewritingRule.java.

Referenced by org.objectweb.cjdbc.controller.backend.DatabaseBackend.addRewritingRule().

00114   {
00115     return rewrite;
00116   }

String org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.getXml  ) 
 

Get xml information about this AbstractRewritingRule.

Returns:
xml formatted information on this AbstractRewritingRule.

Definition at line 133 of file AbstractRewritingRule.java.

00134   {
00135     return "<" + DatabasesXmlTags.ELT_RewritingRule + " "
00136         + DatabasesXmlTags.ATT_queryPattern + "=\"" + queryPattern + "\" "
00137         + DatabasesXmlTags.ATT_rewrite + "=\"" + rewrite + "\" "
00138         + DatabasesXmlTags.ATT_caseSensitive + "=\"" + isCaseSensitive + "\" "
00139         + DatabasesXmlTags.ATT_stopOnMatch + "=\"" + stopOnMatch + "\"/>";
00140   }

boolean org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.hasMatched  ) 
 

Returns true if the query given in the last call to rewrite has matched this rule.

1. call rewrite(query)

2. call hasMatched() to know if query matched this rule.

Returns:
true if the query matched this rule.
See also:
rewrite(String)

Definition at line 72 of file AbstractRewritingRule.java.

00073   {
00074     return hasMatched;
00075   }

boolean org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.isCaseSensitive  ) 
 

Returns the isCaseSensitive value.

Returns:
Returns the isCaseSensitive.

Definition at line 93 of file AbstractRewritingRule.java.

00094   {
00095     return isCaseSensitive;
00096   }

boolean org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.isStopOnMatch  ) 
 

Returns the stopOnMatch value.

Returns:
Returns the stopOnMatch.

Definition at line 123 of file AbstractRewritingRule.java.

Referenced by org.objectweb.cjdbc.controller.backend.DatabaseBackend.rewriteQuery().

00124   {
00125     return stopOnMatch;
00126   }

abstract String org.objectweb.cjdbc.controller.backend.rewriting.AbstractRewritingRule.rewrite String  sqlQuery  )  [pure virtual]
 

Rewrite the given query according to the rule. Note that this method does not check if the given query matches the rule or not. You must call matches(String) before calling this method.

Parameters:
sqlQuery request to rewrite
Returns:
the rewritten SQL query according to the rule.
See also:
AbstractRewritingRule.hasMatched

Implemented in org.objectweb.cjdbc.controller.backend.rewriting.PatternRewritingRule, org.objectweb.cjdbc.controller.backend.rewriting.ReplaceAllRewritingRule, and org.objectweb.cjdbc.controller.backend.rewriting.SimpleRewritingRule.


The documentation for this class was generated from the following file:
Generated on Mon Apr 11 22:03:26 2005 for C-JDBC by  doxygen 1.3.9.1