Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.beasys.commerce.ebusiness.catalog.service.query
Class QueryHelper

    java.lang.Object
      com.beasys.commerce.ebusiness.catalog.service.query.QueryHelper

public class QueryHelper
extends Object

Helper class for performing Product Catalog queries.

Field Summary
`static String` | `DEFAULT_ENTITY_ID_TABLE_NAME` The default entity identifier table
`static String` | `DEFAULT_PROPERTY_BOOLEAN_COLUMN_NAME` The default boolean property table
`static String` | `DEFAULT_PROPERTY_DATETIME_COLUMN_NAME` The default date/time property table
`static String` | `DEFAULT_PROPERTY_FLOAT_COLUMN_NAME` The default float property table
`static String` | `DEFAULT_PROPERTY_ID_TABLE_NAME` The default property identifier table
`static String` | `DEFAULT_PROPERTY_INTEGER_COLUMN_NAME` The default integer property table
`static String` | `DEFAULT_PROPERTY_TEXT_COLUMN_NAME` The default text property table
`static String` | `DEFAULT_PROPERTY_VALUE_TABLE` The default property table
`static String` | `DEFAULT_TABLE_PREFIX` The default table prefix

Constructor Summary
`QueryHelper(JdbcCatalogFactory jdbcCatFac, Boolean supportsLikeEscapeClause)`

Method Summary
`static List` | `fixKeywords(String[] keywords)` Fix up an array of keywords by removing nulls and duplicates.
`protected StringBuffer` | `getSearchSQL(boolean showAll, List params, boolean isCategory)` Get the SQL where clause for the showAll parameter.
`protected StringBuffer` | `getSearchSQL(Expression expr, String prefix, boolean supportsLikeEscapeClause, List params, boolean isCategory)` Get the SQL where clause for an expression.
`protected StringBuffer` | `getSearchSQL(List keywords, String logical, List params)` Get the SQL where clause for the keywords.
`protected void` | `getSearchSQL(StringBuffer buf, Criteria c, String prefix, boolean supportsLikeEscapeClause, List params, boolean isCategory)` Get the SQL where clause for a Criteria.
`protected void` | `getSearchSQL(StringBuffer buf, Expression expr, String prefix, boolean supportsLikeEscapeClause, List params, boolean isCategory)` Get the SQL where clause for an expression.
`protected void` | `getSearchSQL(StringBuffer buf, Logical l, String prefix, boolean supportsLikeEscapeClause, List params, boolean isCategory)` Get the SQL where clause for a Criteria.
`protected void` | `getSearchSQL(StringBuffer buf, String prefix, boolean supportsLikeEscapeClause, String column, String scope, String name, String op, Object val, List params, boolean isCategory)` Get the SQL for searching for an implicit property in a certain WLCS_PROP_* table.
`protected StringBuffer` | `getSearchSQL(String lang, List params, boolean isCategory)` Get the SQL where clause for the lang parameter.
`static String` | `getSQLOperator(String c)` Return the corresponding SQL operator for the given comparator.
`static boolean` | `isLegalSingleValueComparator(String c)` Determine if a comparator is legal, single-value attribute comparator.
`static void` | `main(String[] args)` Quick unit test of keyword search.
`List` | `search(Connection con, boolean showAll, String lang, Expression expr, String tablePrefix)` Perform an expression search.
`List` | `search(Connection con, boolean showAll, String lang, List keywords)` Perform an AND'ed keyword search.
`List` | `search(Connection con, boolean showAll, String lang, List keywords, String logical)` Perform a keyword search.
`List` | `search(Connection con, boolean showAll, String lang, List keywords, String logical, Expression expr, String tablePrefix, int maxSearchResults)` Perform a search
`List` | `search(Connection con, boolean showAll, String lang, String logical, Expression expr, String tablePrefix, int maxSearchResults)` Perform a search
`static Object` | `toSQLLike(Object obj, boolean supportsLikeEscapeClause)` Convert an object, which might be a string, to a SQL like string.
`static String` | `toSQLLike(String like, boolean supportsLikeEscapeClause)` Convert a query LIKE value to a SQL LIKE value.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### DEFAULT_ENTITY_ID_TABLE_NAME

    public static final String DEFAULT_ENTITY_ID_TABLE_NAME

  The default entity identifier table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_BOOLEAN_COLUMN_NAME

    public static final String DEFAULT_PROPERTY_BOOLEAN_COLUMN_NAME

  The default boolean property table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_DATETIME_COLUMN_NAME

    public static final String DEFAULT_PROPERTY_DATETIME_COLUMN_NAME

  The default date/time property table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_FLOAT_COLUMN_NAME

    public static final String DEFAULT_PROPERTY_FLOAT_COLUMN_NAME

  The default float property table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_ID_TABLE_NAME

    public static final String DEFAULT_PROPERTY_ID_TABLE_NAME

  The default property identifier table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_INTEGER_COLUMN_NAME

    public static final String DEFAULT_PROPERTY_INTEGER_COLUMN_NAME

  The default integer property table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_TEXT_COLUMN_NAME

    public static final String DEFAULT_PROPERTY_TEXT_COLUMN_NAME

  The default text property table

  See Also:
    Constant Field Values

### DEFAULT_PROPERTY_VALUE_TABLE

    public static final String DEFAULT_PROPERTY_VALUE_TABLE

  The default property table

  See Also:
    Constant Field Values

### DEFAULT_TABLE_PREFIX

    public static final String DEFAULT_TABLE_PREFIX

  The default table prefix

  See Also:
    Constant Field Values

Constructor Detail

### QueryHelper

    public QueryHelper(JdbcCatalogFactory jdbcCatFac,
                       Boolean supportsLikeEscapeClause)

Method Detail

### fixKeywords

    public static List fixKeywords(String[] keywords)

  Fix up an array of keywords by removing nulls and duplicates.

  Parameters:
    `keywords` - the array of keywords.
  Returns:
    the cleaned-up list of keywords.

### getSearchSQL

    protected StringBuffer getSearchSQL(boolean showAll,
                                        List params,
                                        boolean isCategory)

  Get the SQL where clause for the showAll parameter.

  Parameters:
    `showAll` - whether to show invisible items (true), or not (false).
    `params` - the list of prepared statement params to add to.
  Returns:
    the SQL where clause, or null if there shouldn't be one.

### getSearchSQL

    protected StringBuffer getSearchSQL(Expression expr,
                                        String prefix,
                                        boolean supportsLikeEscapeClause,
                                        List params,
                                        boolean isCategory)
                                 throws CatalogException

  Get the SQL where clause for an expression.

  Parameters:
    `expr` - the expression (already normalized, null for none).
    `prefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
    `supportsLikeEscapeClause` - tells if the SQL statement can use the LIKE ESCAPE clause.
    `params` - the list of prepared statement params to add to.
  Returns:
    the SQL where clause, or null if there shouldn't be one.
  Throws:
    `CatalogException`

### getSearchSQL

    protected StringBuffer getSearchSQL(List keywords,
                                        String logical,
                                        List params)

  Get the SQL where clause for the keywords.

  Parameters:
    `keywords` - the list of keywords (no nulls, no duplicates, null for none).
    `logical` - TypesHelper.AND or TypesHelper.OR (for keywords).
    `params` - the list of prepared statement params to add to.
  Returns:
    the SQL where clause, or null if there shouldn't be one.

### getSearchSQL

    protected void getSearchSQL(StringBuffer buf,
                                Criteria c,
                                String prefix,
                                boolean supportsLikeEscapeClause,
                                List params,
                                boolean isCategory)
                         throws CatalogException

  Get the SQL where clause for a Criteria.

  Parameters:
    `buf` - the buffer to write into.
    `c` - the Criteria.
    `prefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
    `supportsLikeEscapeClause` - tells if the SQL statement can use the LIKE ESCAPE clause.
    `params` - the list of prepared statement params to add to.
  Throws:
    `CatalogException`

### getSearchSQL

    protected void getSearchSQL(StringBuffer buf,
                                Expression expr,
                                String prefix,
                                boolean supportsLikeEscapeClause,
                                List params,
                                boolean isCategory)
                         throws CatalogException

  Get the SQL where clause for an expression.

  Parameters:
    `buf` - the buffer to write into.
    `expr` - the expression (already normalized, null for none).
    `prefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
    `supportsLikeEscapeClause` - tells if the SQL statement can use the LIKE ESCAPE clause.
    `params` - the list of prepared statement params to add to.
  Throws:
    `CatalogException`

### getSearchSQL

    protected void getSearchSQL(StringBuffer buf,
                                Logical l,
                                String prefix,
                                boolean supportsLikeEscapeClause,
                                List params,
                                boolean isCategory)
                         throws CatalogException

  Get the SQL where clause for a Criteria.

  Parameters:
    `buf` - the buffer to write into.
    `l` - the Logical.
    `prefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
    `supportsLikeEscapeClause` - tells if the SQL statement can use the LIKE ESCAPE clause.
    `params` - the list of prepared statement params to add to.
  Throws:
    `CatalogException`

### getSearchSQL

    protected void getSearchSQL(StringBuffer buf,
                                String prefix,
                                boolean supportsLikeEscapeClause,
                                String column,
                                String scope,
                                String name,
                                String op,
                                Object val,
                                List params,
                                boolean isCategory)

  Get the SQL for searching for an implicit property in a certain WLCS_PROP_* table.

  Parameters:
    `buf` - the buffer to write into.
    `prefix` - the table prefix.
    `supportsLikeEscapeClause` - tells if the SQL statement can use the LIKE ESCAPE clause.
    `scope` - the property scope name (null for any scope).
    `name` - the property name.
    `op` - the operator.
    `val` - the value to match
    `params` - the list of prepared statement params to add to.

### getSearchSQL

    protected StringBuffer getSearchSQL(String lang,
                                        List params,
                                        boolean isCategory)

  Get the SQL where clause for the lang parameter.

  Parameters:
    `params` - the list of prepared statement params to add to.
  Returns:
    the SQL where clause, or null if there shouldn't be one.

### getSQLOperator

    public static String getSQLOperator(String c)

  Return the corresponding SQL operator for the given comparator.

### isLegalSingleValueComparator

    public static boolean isLegalSingleValueComparator(String c)

  Determine if a comparator is legal, single-value attribute comparator.

### main

    public static void main(String[] args)
                     throws Exception

  Quick unit test of keyword search.

  Throws:
    `Exception`

### search

    public List search(Connection con,
                       boolean showAll,
                       String lang,
                       Expression expr,
                       String tablePrefix)
                throws CatalogException

  Perform an expression search.

  Parameters:
    `con` - the database connection to use.
    `showAll` - true to show invisible items, false to not.
    `lang` - the language to match on (null for any).
    `expr` - the normalized expression to use.
    `tablePrefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
  Returns:
    the list of ProductItemKeys of the items that match.
  Throws:
    `CatalogException`

### search

    public List search(Connection con,
                       boolean showAll,
                       String lang,
                       List keywords)
                throws CatalogException

  Perform an AND'ed keyword search.

  Parameters:
    `con` - the database connection to use.
    `showAll` - true to show invisible items, false to not.
    `lang` - the language to match on (null for any).
    `keywords` - the list of keywords (no nulls, no duplicates).
  Returns:
    the list of ProductItemKeys of the items that match.
  Throws:
    `CatalogException`

### search

    public List search(Connection con,
                       boolean showAll,
                       String lang,
                       List keywords,
                       String logical)
                throws CatalogException

  Perform a keyword search.

  Parameters:
    `con` - the database connection to use.
    `showAll` - true to show invisible items, false to not.
    `lang` - the language to match on (null for any).
    `keywords` - the list of keywords (no nulls, no duplicates).
    `logical` - TypesHelper.AND or TypesHelper.OR.
  Returns:
    the list of ProductItemKeys of the items that match.
  Throws:
    `CatalogException`

### search

    public List search(Connection con,
                       boolean showAll,
                       String lang,
                       List keywords,
                       String logical,
                       Expression expr,
                       String tablePrefix,
                       int maxSearchResults)
                throws CatalogException

  Perform a search

  Parameters:
    `con` - the database connection to use.
    `showAll` - true to show invisible items, false to not.
    `lang` - the language to match on (null for any).
    `keywords` - the list of keywords (no nulls, no duplicates, null for none).
    `logical` - TypesHelper.AND or TypesHelper.OR (for keywords).
    `expr` - the query expression to use (already normalized, null for none).
    `tablePrefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
  Returns:
    the list of ProductItemKeys of the items that match.
  Throws:
    `CatalogException`
  See Also:
    `TypesHelper`

### search

    public List search(Connection con,
                       boolean showAll,
                       String lang,
                       String logical,
                       Expression expr,
                       String tablePrefix,
                       int maxSearchResults)
                throws CatalogException

  Perform a search

  Parameters:
    `con` - the database connection to use.
    `showAll` - true to show invisible items, false to not.
    `lang` - the language to match on (null for any).
    `logical` - TypesHelper.AND or TypesHelper.OR (for keywords).
    `expr` - the query expression to use (already normalized, null for none).
    `tablePrefix` - the table prefix for the ConfigurableEntity tables for implicit properties.
  Returns:
    the list of ProductItemKeys of the items that match.
  Throws:
    `CatalogException`
  See Also:
    `TypesHelper`

### toSQLLike

    public static Object toSQLLike(Object obj,
                                   boolean supportsLikeEscapeClause)

  Convert an object, which might be a string, to a SQL like string.

### toSQLLike

    public static String toSQLLike(String like,
                                   boolean supportsLikeEscapeClause)

  Convert a query LIKE value to a SQL LIKE value.

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved