[Erp5-report] r27296 - in /erp5/trunk/products/ZSQLCatalog: ./ Interface/ Operator/ Query/ ...

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jun 1 13:33:40 CEST 2009


Author: kazuhiko
Date: Mon Jun  1 13:33:39 2009
New Revision: 27296

URL: http://svn.erp5.org?rev=27296&view=rev
Log:
interfaces directory now follows zope naming convention.

Added:
    erp5/trunk/products/ZSQLCatalog/interfaces/
      - copied from r27278, erp5/trunk/products/ZSQLCatalog/Interface/
    erp5/trunk/products/ZSQLCatalog/interfaces/abstract_syntax_node.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IAbstractSyntaxNode.py
    erp5/trunk/products/ZSQLCatalog/interfaces/column_map.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IColumnMap.py
    erp5/trunk/products/ZSQLCatalog/interfaces/entire_query.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IEntireQuery.py
    erp5/trunk/products/ZSQLCatalog/interfaces/operator.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IOperator.py
    erp5/trunk/products/ZSQLCatalog/interfaces/query.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IQuery.py
    erp5/trunk/products/ZSQLCatalog/interfaces/query_catalog.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/IQueryCatalog.py
    erp5/trunk/products/ZSQLCatalog/interfaces/search_key.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/ISearchKey.py
    erp5/trunk/products/ZSQLCatalog/interfaces/sql_expression.py
      - copied unchanged from r27278, erp5/trunk/products/ZSQLCatalog/Interface/ISQLExpression.py
Removed:
    erp5/trunk/products/ZSQLCatalog/Interface/
    erp5/trunk/products/ZSQLCatalog/interfaces/IAbstractSyntaxNode.py
    erp5/trunk/products/ZSQLCatalog/interfaces/IColumnMap.py
    erp5/trunk/products/ZSQLCatalog/interfaces/IEntireQuery.py
    erp5/trunk/products/ZSQLCatalog/interfaces/IOperator.py
    erp5/trunk/products/ZSQLCatalog/interfaces/IQuery.py
    erp5/trunk/products/ZSQLCatalog/interfaces/IQueryCatalog.py
    erp5/trunk/products/ZSQLCatalog/interfaces/ISQLExpression.py
    erp5/trunk/products/ZSQLCatalog/interfaces/ISearchKey.py
    erp5/trunk/products/ZSQLCatalog/interfaces/Verify.py
Modified:
    erp5/trunk/products/ZSQLCatalog/ColumnMap.py
    erp5/trunk/products/ZSQLCatalog/Operator/ComparisonOperator.py
    erp5/trunk/products/ZSQLCatalog/Operator/OperatorBase.py
    erp5/trunk/products/ZSQLCatalog/Query/AutoQuery.py
    erp5/trunk/products/ZSQLCatalog/Query/ComplexQuery.py
    erp5/trunk/products/ZSQLCatalog/Query/EntireQuery.py
    erp5/trunk/products/ZSQLCatalog/Query/Query.py
    erp5/trunk/products/ZSQLCatalog/Query/RelatedQuery.py
    erp5/trunk/products/ZSQLCatalog/Query/SQLQuery.py
    erp5/trunk/products/ZSQLCatalog/Query/SimpleQuery.py
    erp5/trunk/products/ZSQLCatalog/SQLCatalog.py
    erp5/trunk/products/ZSQLCatalog/SQLExpression.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/DateTimeKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/FullTextKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/KeywordKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/RawKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/RelatedKey.py
    erp5/trunk/products/ZSQLCatalog/SearchKey/SearchKey.py
    erp5/trunk/products/ZSQLCatalog/SearchText/AdvancedSearchTextParser.py
    erp5/trunk/products/ZSQLCatalog/interfaces/__init__.py

Modified: erp5/trunk/products/ZSQLCatalog/ColumnMap.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/ColumnMap.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/ColumnMap.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/ColumnMap.py [utf8] Mon Jun  1 13:33:39 2009
@@ -28,7 +28,7 @@
 ##############################################################################
 
 from zLOG import LOG, WARNING, INFO
-from Interface.IColumnMap import IColumnMap
+from interfaces.column_map import IColumnMap
 from Interface.Verify import verifyClass
 from SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Operator/ComparisonOperator.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Operator/ComparisonOperator.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Operator/ComparisonOperator.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Operator/ComparisonOperator.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from OperatorBase import OperatorBase
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
-from Products.ZSQLCatalog.Interface.IOperator import IOperator
+from Products.ZSQLCatalog.interfaces.operator import IOperator
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Operator/OperatorBase.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Operator/OperatorBase.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Operator/OperatorBase.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Operator/OperatorBase.py [utf8] Mon Jun  1 13:33:39 2009
@@ -29,7 +29,7 @@
 ##############################################################################
 
 from zLOG import LOG
-from Products.ZSQLCatalog.Interface.IOperator import IOperator
+from Products.ZSQLCatalog.interfaces.operator import IOperator
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Query/AutoQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/AutoQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/AutoQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/AutoQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from Query import Query
 from zLOG import LOG
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Query/ComplexQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/ComplexQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/ComplexQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/ComplexQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -31,7 +31,7 @@
 from Query import Query
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
 from SQLQuery import SQLQuery
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Query/EntireQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/EntireQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/EntireQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/EntireQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -31,7 +31,7 @@
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
 from Products.ZSQLCatalog.ColumnMap import ColumnMap
 from zLOG import LOG
-from Products.ZSQLCatalog.Interface.IEntireQuery import IEntireQuery
+from Products.ZSQLCatalog.interfaces.entire_query import IEntireQuery
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Query/Query.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/Query.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/Query.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/Query.py [utf8] Mon Jun  1 13:33:39 2009
@@ -28,7 +28,7 @@
 #
 ##############################################################################
 
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 
 class Query(object):

Modified: erp5/trunk/products/ZSQLCatalog/Query/RelatedQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/RelatedQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/RelatedQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/RelatedQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from Query import Query
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/Query/SQLQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/SQLQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/SQLQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/SQLQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from Query import Query
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 
 class SQLQuery(Query):

Modified: erp5/trunk/products/ZSQLCatalog/Query/SimpleQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Query/SimpleQuery.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/Query/SimpleQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/Query/SimpleQuery.py [utf8] Mon Jun  1 13:33:39 2009
@@ -29,7 +29,7 @@
 ##############################################################################
 
 from Query import Query
-from Products.ZSQLCatalog.Interface.IQuery import IQuery
+from Products.ZSQLCatalog.interfaces.query import IQuery
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 from zLOG import LOG, WARNING

Modified: erp5/trunk/products/ZSQLCatalog/SQLCatalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SQLCatalog.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SQLCatalog.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SQLCatalog.py [utf8] Mon Jun  1 13:33:39 2009
@@ -42,7 +42,7 @@
 import os
 import md5
 
-from Interface.IQueryCatalog import ISearchKeyCatalog
+from interfaces.query_catalog import ISearchKeyCatalog
 from Interface.Verify import verifyClass
 
 from SearchText import isAdvancedSearchText
@@ -1965,7 +1965,7 @@
       key
         Default column (used when there is no explicit column in an AST leaf).
 
-      Expected node API is described in Interface/IAbstractSyntaxNode.py .
+      Expected node API is described in interfaces/abstract_syntax_node.py .
     """
     search_key, related_key_definition = self.getColumnSearchKey(key)
     if search_key is None:

Modified: erp5/trunk/products/ZSQLCatalog/SQLExpression.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SQLExpression.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SQLExpression.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SQLExpression.py [utf8] Mon Jun  1 13:33:39 2009
@@ -28,7 +28,7 @@
 ##############################################################################
 
 from zLOG import LOG
-from Interface.ISQLExpression import ISQLExpression
+from interfaces.sql_expression import ISQLExpression
 from Interface.Verify import verifyClass
 from types import NoneType
 from SQLCatalog import profiler_decorator

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/DateTimeKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/DateTimeKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/DateTimeKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/DateTimeKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -34,7 +34,7 @@
 from Products.ZSQLCatalog.Query.ComplexQuery import ComplexQuery
 from zLOG import LOG
 from DateTime.DateTime import DateTime, DateTimeError, _cache
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 from Products.ZSQLCatalog.SearchText import parse

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from SearchKey import SearchKey
 from Products.ZSQLCatalog.SearchText import parse
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 
 class DefaultKey(SearchKey):

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/FullTextKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/FullTextKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/FullTextKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/FullTextKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -31,7 +31,7 @@
 from SearchKey import SearchKey
 from Products.ZSQLCatalog.Query.SimpleQuery import SimpleQuery
 from Products.ZSQLCatalog.SearchText import parse
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/KeywordKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/KeywordKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/KeywordKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/KeywordKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -30,7 +30,7 @@
 
 from SearchKey import SearchKey
 from Products.ZSQLCatalog.SearchText import parse
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.Query.SimpleQuery import SimpleQuery
 

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/RawKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/RawKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/RawKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/RawKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -29,7 +29,7 @@
 ##############################################################################
 
 from SearchKey import SearchKey
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 
 class RawKey(SearchKey):

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/RelatedKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/RelatedKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/RelatedKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/RelatedKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -33,7 +33,7 @@
 from Products.ZSQLCatalog.Query.RelatedQuery import RelatedQuery
 from Products.ZSQLCatalog.Query.SQLQuery import SQLQuery
 from Products.ZSQLCatalog.SQLExpression import SQLExpression
-from Products.ZSQLCatalog.Interface.ISearchKey import IRelatedKey
+from Products.ZSQLCatalog.interfaces.search_key import IRelatedKey
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/SearchKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/SearchKey.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/SearchKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/SearchKey.py [utf8] Mon Jun  1 13:33:39 2009
@@ -31,7 +31,7 @@
 from zLOG import LOG
 from Products.ZSQLCatalog.Query.SimpleQuery import SimpleQuery
 from Products.ZSQLCatalog.Query.ComplexQuery import ComplexQuery
-from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
+from Products.ZSQLCatalog.interfaces.search_key import ISearchKey
 from Interface.Verify import verifyClass
 from Products.ZSQLCatalog.SQLCatalog import profiler_decorator
 

Modified: erp5/trunk/products/ZSQLCatalog/SearchText/AdvancedSearchTextParser.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchText/AdvancedSearchTextParser.py?rev=27296&r1=27295&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchText/AdvancedSearchTextParser.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchText/AdvancedSearchTextParser.py [utf8] Mon Jun  1 13:33:39 2009
@@ -28,7 +28,7 @@
 
 from lexer import lexer, update_docstrings
 try:
-  from Products.ZSQLCatalog.Interface.IAbstractSyntaxNode import INode, IValueNode, ILogicalNode, IColumnNode
+  from Products.ZSQLCatalog.interfaces.abstract_syntax_node import INode, IValueNode, ILogicalNode, IColumnNode
   from Interface.Verify import verifyClass
 except ImportError:
   INode = None

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IAbstractSyntaxNode.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IAbstractSyntaxNode.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IAbstractSyntaxNode.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IAbstractSyntaxNode.py (removed)
@@ -1,99 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class INode(Interface):
-  """
-    Any kind of node in an Abstract Syntax Tree.
-  """
-
-  def isLeaf():
-    """
-      Returns True if current node is a leaf in node tree.
-      Returns False otherwise.
-    """
-
-  def isColumn():
-    """
-      Returns True if current node is a column in node tree.
-      Returns False otherwise.
-    """
-
-class IValueNode(INode):
-  """
-    Value- and comparison-operator-containig node.
-    They are leaf nodes in the syntax tree.
-  """
-
-  def getValue():
-    """
-      Returns node's value.
-    """
-
-  def getComparisonOperator():
-    """
-      Returns node's comparison operator.
-    """
-
-class ILogicalNode(INode):
-  """
-    Logical-operator-containing node.
-    They are internal tree nodes.
-  """
-
-  def getLogicalOperator():
-    """
-      Returns node's logical operator.
-    """
-
-  def getNodeList():
-    """
-      Returns the list of subnodes.
-    """
-
-class IColumnNode(INode):
-  """
-    Column-name-containing node.
-    They are internal tree nodes.
-    Their value applies to any contained ValueNode, except if there is another
-    ColumnNode between current one and a ValueNode, for which the other
-    ColumnNode will take precedence.
-  """
-
-  def getColumnName():
-    """
-      Returns node's column name.
-    """
-
-  def getSubNode():
-    """
-      Returns node's (only) subnode.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IColumnMap.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IColumnMap.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IColumnMap.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IColumnMap.py (removed)
@@ -1,301 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class IColumnMap(Interface):
-  """
-    The role of the column mapper is to make possible to have a "flat"
-    overview of all columns used in a query, to choose how they will be
-    mapped to catalog tables, and how those tables will be aliased in the SQL
-    rendering of that query.
-
-    Typical usage:
-    - Instanciate (with or without a catalog table)
-    - Register all columns the query will use
-    - Build the column map
-    - Fetch SQL representation of each registered column.
-    - Fetch table alias mapping
-    - Fetch the list of table aliases which require a join with catalog
-    - Fetch the list of queries implied by columns. This happens when there
-      are virtual columns registered which were not expanded in the query
-      already. In that case, column map generate queries required to reach
-      the real column behind the virtual one.
-
-    Note that, although it's not enforced, it is meaningless to:
-    - call build more than once
-    - register columns after build happened
-    - fetch SQL representation before build happened (this will most probably
-      lead to KeyErrors anyway)
-
-    Groups.
-      All references to a given table withing a given group will cause all
-      columns referencing that table to be resolved to the same table alias
-      in resulting query.
-      Ex:
-        Note: instead of resolving columns by hand, it is also possible to
-        call "build", but this way it makes .
-        Registration:
-          registerColumn('bar')
-          registerColumn('baz')
-          resolveColumn('bar', 'foo')
-          resolveColumn('baz', 'foo')
-        Result:
-          asSQLColumn('bar') -> 'foo_alias.bar'
-          asSQLColumn('baz') -> 'foo_alias.baz'
-      Complementary, any reference to a given table from one group to
-      another will cause columns to be resolved to distinct table aliases
-      in resulting query.
-      Ex:
-        Registration:
-          registerColumn('bar')
-          registerColumn('baz', group='hoge')
-          resolveColumn('bar', 'foo')
-          resolveColumn('baz', 'foo', group='hoge')
-        Result:
-          asSQLColumn('bar')               -> 'foo_alias.bar'
-          asSQLColumn('baz', group='hoge') -> 'other_foo_alias.baz'
-  """
-
-  def __init__(catalog_table_name=None):
-    """
-      Create a column map.
-
-      Initialises internal data structures and set the table name to use as
-      catalog table.
-    """
-
-  def registerColumn(column, group=None, simple_query=None):
-    """
-      Register a column in given group on this column map.
-
-      column (string)
-        Contains the name of the column to register.
-
-        This name might contain a dot, in which case a table name is extracted
-        from it and that column is resolved to that table within its group.
-        Note that this practice is discouraged, but not deprecated.
-      group (string)
-        Group id of given column.
-      simple_query (SimpleQuery)
-        The SimpleQuery doing a comparison on given column. This can be
-        accessed from vote script at ColumnMap build time.
-    """
-
-  def ignoreColumn(column):
-    """
-      Act as if given column was valid and its mapping succeeded.
-      ie: supresses all warnings relative to that column, and all mapping
-      attemps.
-      It is supposed to be used when given value is an SQL alias for a
-      separately registered column.
-
-      column (string)
-        The value to ignore.
-    """
-
-  def registerRelatedKey(related_column, column):
-    """
-      Register a "virtual column".
-      This method is to be called when registering any virtual column.
-      A virtual column makes use internaly of multiple catalog columns.
-      A related key is an example of a virtual column.
-
-      This method internaly generates a new group id that caller must pass to
-      registerRelatedKeyColumn when registering those internal (and real)
-      columns. This is because the same virtual column can be used more than
-      once in a query without interferences from other uses, and hence must be
-      put in separate groups, without having to know that there are other uses
-      for the same virtual column.
-
-      virtual_column
-        Name of the virtual column to register.
-      column
-        Name of the "last" real column behind the virtual column. Comparisons
-        done on the virtual column will happen on that real column instead.
-        For example, it's "title" for "source_title" related key.
-    """
-
-  def registerCatalog():
-    """
-      Register catalog table as being used in default group.
-
-      This is for backward compatibility with text-only related keys, since
-      they often hardcode catalog table name.
-    """
-
-  def registerRelatedKeyColumn(related_column, position, group):
-    """
-      Register given column as part of already registered virtual column.
-
-      related_column (string)
-        Name of the virtual column registered column is a part of.
-      position (int)
-        Unique id of this column in the list of all columns used by the
-        virtual column it is a part of (it might use the same column name
-        while expecting uses to be mapped to different aliases or evne
-        different tables).
-        Typically, this is table position in the parameter list the related
-        key expects.
-      group (string)
-        Group id as returned by registerRelatedKey of given virtual column.
-    """
-
-  def getRelatedKeyGroup(position, group):
-    """
-      For given virtual key position and group, return a group.
-
-      This is here so that all group generation code is inside ColumnMap
-      class.
-    """
-
-  def registerTable(table_name, alias=None, group=None):
-    """
-      Register given table name as being used in given group.
-
-      This method should not be called outside of this class except for
-      backward compatibility purposes.
-
-      It is implicitely done most of the time, and should only be used only
-      when there is no control over chosen table alias or when table
-      registration cannot be done by a Query.
-      There are 2 cases where it cas required:
-      - pre-mapped columns which won't be actually used, but which force table
-        alias choice (see EntireQuery).
-      - related keys, where the Related Query cannot register columns it uses
-        by itself (since its content is not based on Queries but on raw SQL
-        text).
-    """
-
-  def build(sql_catalog):
-    """
-      Resolve all unresolved registered columns (ie, not mapped to tables).
-      Resolve all used tables to unique aliases.
-
-      Chosen table aliases are based on table name and virtual column name the
-      column comes from, if applicable. This is done to make final SQL more
-      reader-friendly.
-    """
-
-  def asSQLColumn(column, group=None):
-    """
-      Return an SQL rendering of given column, with the table alias it has
-      been mapped to.
-
-      column (string)
-        Column name. Can be the name of a virtual column.
-
-        This name might contain a dot, in which case a table name is extracted
-        from it and that column is resolved to that table within its group.
-        Note that this practice is discouraged, but not deprecated.
-        Note also that it does not apply to virtual columns (they cannot
-        contain a dot).
-      group (string)
-        Group id of given column.
-    """
-
-  def getCatalogTableAlias(group=None):
-    """
-      Return the alias of catalog table name given at instantiation.
-    """
-
-  def getTableAliasDict():
-    """
-      Return a copy of table mapping.
-
-      returned value (dict)
-        key (string)
-          Table alias.
-        value (string)
-          Table name.
-    """
-
-  def resolveColumn(column, table_name, group=None):
-    """
-      Map given column to given table within given group.
-
-      column (string)
-        Name of the column to map to a table. This cannot be a virtual column.
-      table_name (string)
-        Name of the table column must be mapped to. This is not an alias.
-        It must be already known to be used within given group.
-      group (string)
-        Name of the group column and table are in.
-    """
-
-  def resolveTable(table_name, alias, group=None):
-    """
-      Resolve given table of given group as given alias.
-
-      table_name (string)
-        Table to alias.
-      alias (string)
-        Table alias. It must be unique at query scope to work as intended.
-      gorup (string)
-        Group the table belongs to.
-    """
-
-  def getTableAlias(table_name, group=None):
-    """
-      Get table alias in given group.
-
-      table_name (string)
-        Table name.
-      group (string)
-        Group id of given table.
-    """
-
-  def iterJoinQueryList():
-    """
-      Get an iterator over queries internally generated when resolving column
-      map. Those queries are generated when a virtual column was registered as
-      a real one. Queries required to map virtual columns to real ones are
-      put in that list by build.
-    """
-
-  def getJoinTableAliasList():
-    """
-      Return a copy of the table alias list for tables requiring a join with
-      catalog table.
-    """
-
-  def getStraightJoinTableList():
-    """
-      Returns the list of tables used this search and which
-      need to be joined with the main table using explicit
-      indices.
-    """
-
-  def getLeftJoinTableList():
-    """
-      Returns the list of tables used this search and which
-      need to be LEFT joined with the main table using explicit
-      indices.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IEntireQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IEntireQuery.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IEntireQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IEntireQuery.py (removed)
@@ -1,101 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class IEntireQuery(Interface):
-  """
-    A EntireQuery represents an entire SQL expression, where a Query
-    represents only the "WHERE" part of that expression.
-    A EntireQuery contains:
-     - a Query instance
-     - a limit expression
-     - a group-by expression
-     - an order-by expression
-     - a select expression
-    It internaly uses a ColumnMap instance to resolve tables to use to
-    generate a "from" expression.
-  """
-
-  def __init__(query, order_by_list=None, group_by_list=None,
-    select_dict=None, limit=None, catalog_table_name=None,
-    extra_column_list=None, from_expression=None,
-    order_by_override_list=None):
-    """
-      query (Query instance)
-        The root of the Query tree this query will contain.
-      order_by_list (list of 1-tuple, 2-tuple or 3-tuple)
-        The list of columns which will be sorted by SQL.
-        Tuple values are:
-        - mandatory: column name
-        - optionnal: sort order (can be "ASC" or "DESC", "ASC" by default)
-        - optionnal: type cast (no cast by default, see "CAST" SQL method)
-      group_by_list (list of string)
-        The list of columns which will be groupped by value by SQL.
-      select_dict (dict, key: string, value: string, None)
-        Given values describe columns to make available in SQL result.
-        If column is aliased in result set, key is the alias and value is the
-        column.
-        Otherwise, key is the column, and value must be None.
-      limit
-        See SQLExpression.
-      catalog_table_name (string)
-        Name of the table to use as a catalog.
-
-      Deprecated parameters.
-      extra_column_list (list of string)
-        The list of columns to register to column map. They will not be used
-        in final rendering, but are hint on which table are supposed to be
-        used when mapping columns.
-      from_expression
-        See SQLExpression.
-      order_by_override_list (list of string)
-        If a column is in order_by_list, cannot be mapped to a table column
-        but is present in this list, it will be passed through to
-        SQLExpression.
-    """
-
-  def asSQLExpression(sql_catalog, only_group_columns):
-    """
-      Instantiate a column map, process parameters given at instantiation and
-      register them to column map.
-      Register query to column map.
-      Build column map.
-      Generate extra SQLExpressions from column map.
-      Generate SQLExpression instance and return it.
-    """
-
-  def asSearchTextExpression(sql_catalog):
-    """
-      This is just a passthrough to embeded Query's asSearchTextExpression
-      method.
-      This means that only the where expression can be represented as a
-      SearchText, but not sort, limits, ...
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IOperator.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IOperator.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IOperator.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IOperator.py (removed)
@@ -1,76 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class IOperator(Interface):
-  """
-    An operator is responsible for rendering a value and a column name as SQL
-    or Search Text.
-
-    This class is designed to be used as a singleton-per-operator.
-  """
-
-  def __init__(operator):
-    """
-      operator (string)
-        Operator's text representation. It is used both for SQL and SearchText
-        rendering.
-    """
-
-  def asSearchText(value):
-    """
-      Render given value as Search Text
-
-      value (see _renderValue)
-        Value to render as a string for use in a Search Text expression.
-    """
-
-  def asSQLExpression(column, value_list, only_group_columns):
-    """
-      Construct a SQLExpression instance from given column and value, with
-      contained glue text.
-      value_list can be a non-list instance, which must be handled that same
-      way as a list of one item.
-      only_group_columns (bool)
-        If false, the operator can add group columns in the "select_dict" of
-        returned SLQExpression.
-        Otherwise, it must not (SQL would be invalid).
-    """
-
-  def getOperator():
-    """
-      Accessor for operator's SQL representation.
-    """
-
-  def getOperatorSearchText():
-    """
-      Accessor for operator's SearchText representation.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IQuery.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IQuery.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IQuery.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IQuery.py (removed)
@@ -1,69 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class IQuery(Interface):
-  """
-    A Query contains:
-    - a value
-    - an operator
-    - a column
-
-    It is the python representation of a predicate, independently of its
-    rendering (SQL or SearchText).
-    For SQL rendering to be possible, it is necesary for some data to be
-    centralized in a data structure known at EntireQuery level (to be able to
-    generate unique table aliases, for exemple). This is the role of
-    ColumnMap, and registerColumnMap method on this interface.
-
-    This interface also offers various rendering methods, one per rendering
-    format.
-  """
-
-  def asSearchTextExpression(sql_catalog, column=None):
-    """
-      Render a query in a user-oriented SearchText.
-      Returns None if there is this query has no SearchText representation,
-      but is SearchText-aware.
-      If column is provided, it must be used instead of local knowledge of
-      column name. It is used to make queries inside a related key render
-      correctly.
-    """
-
-  def asSQLExpression(sql_catalog, column_map, only_group_columns):
-    """
-      Render a query as an SQLExpression instance.
-    """
-
-  def registerColumnMap(sql_catalog, column_map):
-    """
-      Register a query to given column_map.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/IQueryCatalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/IQueryCatalog.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/IQueryCatalog.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/IQueryCatalog.py (removed)
@@ -1,235 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class ISearchKeyCatalog(Interface):
-
-  def buildQuery(kw, ignore_empty_string=True, operator='and'):
-    """
-      Build a ComplexQuery from kw values.
-
-      kw (dict: string keys, any value)
-        A query will be emited based on its value. Depending on the type of
-        the value it is handled differently. Query values will be passed
-        through to result (key is ignored). For all other types, their key
-        must be either a known column of a sql_search_tables table, or a
-        related key name.
-        - String values will be parsed according to the default SearchKey of
-          their real column (even for related keys). If parsing was
-          successful, Queries will be generated from its output.
-          Otherwise, that value will be taken as such.
-        - Dictionary values can be composed of the following keys:
-          'query': Their payload value, considered as empty if not given.
-          'key': The SearchKey to use for this value, overriding default
-                 column configuration.
-          (for other possible keys, see SearchKeys)
-          They will be taken as such.
-        - All other types will be taken as such, and no "empty" check will be
-          performed on them.
-      ignore_empty_string (boolean)
-        If True, values from kw which are empty will be skipped.
-      operator (string)
-        Used to explicit the logical relation between kw entries.
-        It must be a valid ComplexQuery logical operator ('and', 'or').
-    """
-
-  def buildSQLQuery(query_table='catalog', REQUEST=None,
-                    ignore_empty_string=1, only_group_columns=False,
-                    limit=None, extra_column_list=None,
-                    **kw):
-    """
-      Construct and return an instance of EntireQuery class from given
-      parameters by calling buildQuery.
-
-      ignore_empty_string (boolean)
-        See buildQuery.
-      limit (1-tuple, 2-tuple)
-        If given, will emit SQL to limit the number of result lines.
-      group_by_list (list of strings)
-        If given, will emit SQL to group found lines on given parameter names
-        (their column if they are column names, corresponding virtual columns
-        otherwise - as for related keys).
-      select_dict (dict, key: string, value: string, None)
-        Given values describe columns to make available in SQL result.
-        If column is aliased in result set, key is the alias and value is the
-        column.
-        Otherwise, key is the column, and value can be None or the same as
-        key.
-      select_list (list of strings)
-        Same as providing select_dict with select_list items as keys, and None
-        values.
-      order_by_list (list of 1-, 2-, or 3-tuples of strings)
-        If given, will emit SQL to sort result lines.
-        Sort will happen with decreasing precedence in list order.
-        Given n-tuples can contain those values, always in this order:
-         - parameter name
-         - sort order (see SQL documentation of 'ORDER BY')
-         - type cast (see SQL documentation of 'CAST')
-        Sort will happen on given parameter name (its column if it's a column
-        name, corresponding virtual column otherwise - as for related keys).
-      Extra parameters are passed through to buildQuery.
-
-      Backward compatibility parameters:
-      Those parameters are deprecated and should not be used. They are present
-      to provide backward compatibility with former ZSQLCatalog version.
-      REQUEST
-        Ignored.
-      extra_column_list (list)
-      query_table (string, None)
-        The table to use as catalog table.
-        If given and None, not catalog table will be used. Use this when you
-        are using SQLCatalog to generate manualy a part of another query.
-        That table has a special position in returned query:
-         - all other tables are joined on this one (when it is required to use
-           other tables)
-         - it is expected to have some columns (uid, path)
-        It is strongly discouraged to use this parameter for any value other
-        than None.
-      group_by
-        Use group_by_list instead.
-      group_by_expression
-        Use group_by_list instead.
-      select_expression
-        Use select_list or select_dict instead.
-      sort_on
-        Use order_by_list instead.
-      sort_order
-        Use order_by_list instead.
-      from_expression
-        This value will be emited in SQL directly in addition to computed
-        value.
-        There is no replacement.
-      where_expression
-        This value will be emited in SQL directly in addition to computed
-        value.
-        Use Query instances instead.
-      select_expression_key
-        This prevents given column from being ignored even if they could not
-        be mapped.
-        There is no replacement.
-      only_group_columns
-        Replaces former stat__ parameter.
-        Used to globally disalow use of non-group columns in SQL.
-    """
-
-  def getSearchKey(column, search_key=None):
-    """
-      Returns the default SearchKey instance for the
-      requested column. There is one instance per
-      search_key (incl. virtual keys surch as
-      source_title) and we try to compute it once
-      only and cache it.
-      If search_key is provided, it is used as the
-      name of the search key class to return.
-    """
-
-  def getComparisonOperator(operator):
-    """
-      Return a comparison operator matching given string.
-      String must be a valid SQL comparison operator (=, LIKE, IN, ...).
-      String case does not matter.
-      There is one comparison operator instance per possible string value.
-    """
-
-  # TODO: add support for other operators (logical, ensemblist (?))
-
-  def searchResults(REQUEST=None, **kw):
-    """
-      Invokes queryResults with the appropriate
-      ZSQL Method to return a list of results
-    """
-
-  def countResults(REQUEST=None, **kw):
-    """
-      Invokes queryResults with the appropriate
-      ZSQL Method to return a statistics for
-      a list of results
-    """
-
-  def queryResults(sql_method, REQUEST=None, src__=0, build_sql_query_method=None, **kw):
-    """
-      Return the result of the given 'sql_method' ZSQL Method after
-      processing all parameters to build a Query object passed to
-      that method.
-
-      The implementation should do the following.
-
-      1- Use **kw parameters to build a Query object
-         by invoking buildQuery
-
-      2- Build a ColumnMap instance by invoking
-         the buildColumnMap on the Query. Some
-         optmisation may happen here to try
-         to build the best possible ColumnMap and
-         use the best possible indices for joining.
-         During the ColumnMap build process, the
-         Search Key associated to each Query node
-         in the Query tree registers the columns
-         which are used (ex. to search) or provided
-         (ex. MATCH value for full text search, 
-         interleave expression or parameter in a
-         UNION Query)
-
-      3- Render the query object as an SQLExpression
-         instance. This instance contains all necessary
-         parts to generate:
-           - where_expression
-           - sort_expression
-           - group_by_expression
-           - select_expression
-
-      4- Invoke sql_method
-    """
-
-  def isAdvancedSearchText(search_text):
-    """
-      Returns True if given value follows Search Text "advanced" syntax,
-      False otherwise.
-    """
-
-  def parseSearchText(search_text, column=None, search_key=None, is_valid=None):
-    """
-      Parses given SearchText expression using given column's parser
-      (determined by the SearchKey it is configured to use by default), or
-      given SearchKey name.
-
-      search_text (string)
-        SearchText to parse.
-      column (string)
-        Column to use to determine which SearchKey to use for parsing.
-        Either this parameter or search_key must be provided.
-      search_key (string)
-        Name of the SearchKey to use for parsing.
-        Either this parameter or column must be provided.
-      if_valid (callback)
-        Callback method to use to decide wether an encountered column-ish
-        identifier in SearchText is a valid column.
-        If not provided, catalog schema will be used.
-    """

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/ISQLExpression.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/ISQLExpression.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/ISQLExpression.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/ISQLExpression.py (removed)
@@ -1,119 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class ISQLExpression(Interface):
-  """
-    This is a container for chunks of SQL generated by a Query.
-    Each Query instance generates its own SQLExpression instance.
-    SQLExpressions can be nested (an SQLExpression can contain 0, 1 or more
-    SQLExpressions).
-
-    Chunks are:
-    - table_alias_dict
-    - order_by_list
-    - group_by_list
-    - select_dict
-    - limit
-    Mutualy exclusive chunks are:
-    - where expression
-    - sql_expression_list
-    Deprecated chunks are:
-    - from_expression
-
-    Providing sql_expression_list with more than one entry makes
-    where_expression_operator mandatory.
-  """
-
-  def __init__(query,
-               table_alias_dict=None,
-               order_by_list=None,
-               order_by_dict=None,
-               group_by_list=None,
-               where_expression=None,
-               where_expression_operator=None,
-               sql_expression_list=None,
-               select_dict=None,
-               limit=None,
-               from_expression=None):
-    """
-      Instantiate an SQLExpression object.
-
-      This method does consistency checks on received parameters, so that
-      failures are detected as early as possible.
-
-      Also, it casts most optional parameters into empty lists and empty dicts
-      to make code using those values simpler.
-
-      query (Query)
-        The Query instance which called this constructor.
-      table_alias_dict (dict, key: string, value: string)
-        Table alias dict as returned by ColumnMap.getTableAliasDict() .
-      order_by_list (list of strings)
-        List of result ordering, pre-rendered.
-      order_by_dict (dict, key: string, value: string)
-        Column rendering replacement specific to order_by.
-      group_by_list (list of strings)
-        List of column names on which result line list will be grouped.
-      where_expression (string)
-        Text representing a "where" expression of an SQL query.
-      where_expression_operator ("and", "or", "not", None)
-        Operator to apply on immediately contained SQLExpressions.
-        It must be "and" or "or" when there are multiple contained
-        SQLExpressions, it can be "not" if there is exactly one contained
-        SQLExpression, and must not be provided if there is no contained
-        SQLExpression.
-      sql_expression_list (list of SQLExpression)
-        List of immediately contained SQLExpressions.
-      select_dict (dict, key:string, value:string or Null)
-        Lists all columns to be part of select expression.
-        Key is column alias.
-        Value is column name, or Null. If it is Null, the alias will also be
-        used as column name.
-      limit (1-tuple, 2-tuple, other)
-        First item is the number of lines expected, second one if given is the
-        offset of limited result list within the unlimited result list.
-        If it is not a tuple it is treated as the value of a 1-tuple
-        parameter.
-      from_expression (string)
-        This parameter is deprecated.
-    """
-
-  def asSQLExpressionDict():
-    """
-      Returns a dictionnary usable as a **kw for a catalog sql method.
-
-      It renders aliases (see getTableAliasDict) as a list of strings and
-      "from" expression (see getFromExpression) as a list of strings.
-
-      See getWhereExpression, getOrderByExpression, getLimitExpression,
-      getSelectExpression, getGroupByExpression.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/ISearchKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/ISearchKey.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/ISearchKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/ISearchKey.py (removed)
@@ -1,186 +1,0 @@
-##############################################################################
-#
-# Copyright (c) 2002-2009 Nexedi SA and Contributors. All Rights Reserved.
-#                    Jean-Paul Smets-Solanes <jp at nexedi.com>
-#                    Vincent Pelletier <vincent at nexedi.com>
-#
-# WARNING: This program as such is intended to be used by professional
-# programmers who take the whole responsability of assessing all potential
-# consequences resulting from its eventual inadequacies and bugs
-# End users who are looking for a ready-to-use solution with commercial
-# garantees and support are strongly adviced to contract a Free Software
-# Service Company
-#
-# This program is Free Software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
-#
-##############################################################################
-
-from Interface import Interface
-
-class ISearchKey(Interface):
-  """
-    A SearchKey generates Query instances.
-    It is responsible for parsing (or not) input value and generating the
-    appropriate Query structure to match the intended search.
-
-    This class is designed as a "singleton per column".
-  """
-
-  def __init__(column):
-    """
-      column (string)
-        The column this SearchKey is instanciated for.
-    """
-
-  def getColumn():
-    """
-      Returns: string
-        The column this SearchKey is instanciated for.
-    """
-
-  def buildSQLExpression(operator, value, column_map, only_group_columns, group):
-    """
-      This method passes on SQLExpression creation to operator, giving it the
-      resolved column of this RelatedKey.
-
-      operator (Operator)
-        A comparison operator. It is used to render value, column and itself
-        as valid SQL.
-      value (anything)
-      column_map (ColumnMap)
-        The (built) column map to render our column.
-      group (string)
-        The group our column was part of.
-
-      Returns: SQLExpression
-        SQLExpression build by operator for current Query.
-    """
-
-  def buildSearchTextExpression(operator, value, column=None):
-    """
-      Render comparison using operator between value and our column as
-      SearchText.
-
-      operator (Operator)
-        A comparison operator. It is used to render value as value SearchText.
-      value (anything)
-      column (string)
-        If given, it overrides our column in SearchText rendering. This is
-        useful when SearchText rendering is done for a virtual column,
-        because the name of the virtual column must appear when rendered as
-        SearchText.
-    """
-
-  def registerColumnMap(column_map, group, simple_query):
-    """
-      Register the column of this SearchKey to given column map.
-
-      column_map (ColumnMap)
-        The ColumnMap instance to register to.
-      group (string)
-        The group registration will be part of.
-      simple_query (SimpleQuery)
-        The SimpleQuery being registered.
-
-      Returns: string
-        The group assigned to caller. See ColumnMap for methods redefining
-        caller's group.
-    """
-
-  def buildQuery(search_value, group=None, logical_operator=None, comparison_operator=None):
-    """
-      Generate queries from given search_value.
-      logical_operator ('and', 'or', 'not', None)
-        If no logical operator can be found in search_value, it will use given
-        default operator.
-      comparison_operator (string, None)
-        If given, expresses the comparison between column and value.
-    """
-
-  def parseSearchText(value, is_column):
-    """
-      Parse given value to generate an Abstract Syntax Tree representing its
-      logical structure, or None if there is no obvious structure in given
-      value.
-      See SearchText for parsing code.
-
-      value (string)
-        The string to parse.
-      is_column (function taking one parameter)
-        This function will be called with a single parameter, being a column
-        name candidate.
-        It must return a boolean:
-        True: value is a valid column name
-        False: value is not a valid column name
-
-      Returns: (None, AbstratSyntaxNode)
-        AbstratSyntaxNode complies with the IAbstractSyntaxNode interface.
-    """
-
-class IRelatedKey(ISearchKey):
-  """
-    A RelatedKey is a special variation of a SearchKey.
-    Only a small set of methods differ. They are defined in this class.
-  """
-
-  def registerColumnMap(column_map, table_alias_list=None):
-    """
-      This is slightly different for regular registerColumnMap in that it must
-      register multiple tables (and not columns, since RelatedKeys do not
-      provide this information).
-      Also, it must register namely "catalog" table and resolve its alias,
-      angain since it's hardcoded in RelatedKey ZSQLMethods and not provided
-      by their definitions.
-
-      column_map (ColumnMap)
-
-      Deprecated:
-        table_alias_list (None, list of 2-tuples of strings)
-          This list must have the exact same length as the list of tables 
-    """
-
-  def buildSQLExpression(sql_catalog, column_map, only_group_columns, group):
-    """
-      operator and value parameters are useless, since this type of SearhKey
-      does not compare a value to any column, but uses a ZSQLMethod.
-      To reach that ZSQLMethod, it also required a new sql_catalog parameter.
-
-      sql_catalog (SQLCatalog)
-        Used to retrieve related key's ZSQLMethod.
-    """
-
-  def buildQuery(sql_catalog, related_key_definition, search_value=None):
-    """
-      group is useless here, since group is determined by ColumnMap at
-      registration time. search_value becomes optional.
-
-      sql_catalog (SQLCatalog)
-        Used to retrieve real column's SearchKey. For example, a RelatedKey
-        used to compare with a "title" column will retrieve title's default
-        SearchKey (which should be a KeywordKey).
-      related_key_definition (string)
-        Describes parameters of a RelatedKey. It is composed of 3 mains parts,
-        separated by '/':
-        - a list of table names
-          Table names are separated by ','
-        - a column name
-        - the name of the related key ZSQLMethod
-      search_value (None or Query)
-        If given, a condition on real column will be generated.
-        Otherwise, only the SQL required to reach that column will be
-        generated. This is useful when sorting on a virtual column, for
-        example.
-    """
-

Removed: erp5/trunk/products/ZSQLCatalog/interfaces/Verify.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/Interface/Verify.py?rev=27278&view=auto
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/Verify.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/Verify.py (removed)
@@ -1,3 +1,0 @@
-# This imports from Zope's products, which would otherwise be unreachable from parent folder.
-from Interface.Verify import verifyClass
-

Modified: erp5/trunk/products/ZSQLCatalog/interfaces/__init__.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/interfaces/__init__.py?rev=27296&r1=27278&r2=27296&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/interfaces/__init__.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/interfaces/__init__.py [utf8] Mon Jun  1 13:33:39 2009
@@ -1,1 +1,0 @@
-




More information about the Erp5-report mailing list