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

public class JdbcCatalogQueryManagerImpl
extends `JdbcCatalogServiceImpl`

The implementation class for the `JdbcCatalogQueryManager``` Session EJB.
This service implementation uses the `QueryHelper``` class to generate SQL at runtime to perform ProductCatalog searches. This utility class searches against both explict and implicit (i.e. properties set through the `ConfigurableEntity` interface) properties of the Catalog items. The table prefix used for searching implicit property tables is specifed by the following EJB environment property:

- `PropertyTableSetPrefix` - specifies the table prefix for performing searches over implicit properties.
- `supportsLikeEscapeClause` - specified whether the LIKE ESCAPE clause is supported in the underlying database connection (if not specified, it will be determined via the JdbcHelper).

Related Topics

``JdbcCatalogQueryManager``
``JdbcCatalogQueryManagerHome``
``JdbcHelper``

Hierarchy
  `Object`
  `SessionImpl`
  `CatalogServiceImpl`
  `JdbcCatalogServiceImpl`
  `JdbcCatalogQueryManagerImpl`

All Implemented Interfaces
  `EnterpriseBean`, `Serializable`, `SessionBean`

## Field Summary

`protected `Boolean`` | `supportsLikeEscapeClause` Whether the underlying database connection supports the LIKE ESCAPE clause.
`protected `String`` | `tablePrefix` The table name prefix for the ConfigurableEntity/EntityPropertyManager tables for custom data searching through expressions.

Fields from com.beasys.commerce.ebusiness.catalog.service`.`JdbcCatalogServiceImpl``
``DATA_SOURCE_NAME`, `SCHEMA_FILE_NAME`, `SQL_MANAGER_CLASS``

Fields from com.beasys.commerce.ebusiness.catalog.service`.`CatalogServiceImpl``
``CATALOG_MANAGER_HOME``

Fields from com.beasys.commerce.foundation`.`SessionImpl``
``_ctx`, `_environmentNamingContext`, `_environmentPropertyCache`, `_isDirty``

## Constructor Summary

JdbcCatalogQueryManagerImpl()

## Method Summary

`public void` | `ejbActivate`() ejbActivate method.
`public void` | `ejbCreate`() ejbCreate method.
`public void` | `ejbPassivate`() ejbPassivate method.
`public void` | `ejbPostCreate`() ejbPostCreate method.
`public void` | `ejbRemove`() ejbRemove method.
`public `ProductItemKey`[]` | `search`(`CatalogRequest` request, `CatalogQuery` query) Returns the results of the search peformed using the supplied catalog query object.
`public `ViewIterator`` | `search`(`CatalogRequest` request, `CatalogQuery` query, int viewSize) Returns a ViewIterator over the results of the search peformed using the supplied catalog query object.
`public `CategoryKey`[]` | `searchCategories`(`CatalogRequest` request, `CatalogQuery` query) Returns the results of the search peformed using the supplied catalog query object for categories.
`public void` | `setSessionContext`(`SessionContext` ctx) setSessionContext method.

Methods from `com.beasys.commerce.ebusiness.catalog.service.`JdbcCatalogServiceImpl``
``getCatalogSchemaName`, `getCatalogSqlManager`, `getCatalogSqlManager`, `getCatalogSqlManagerName`, `getDatabaseConnection`, `getJdbcCatalogFactory`,`

Methods from `com.beasys.commerce.ebusiness.catalog.service.`CatalogServiceImpl``
``ejbActivate`, `ejbCreate`, `ejbPassivate`, `ejbPostCreate`, `ejbRemove`, `getCatalogManager`, `getCatalogManagerJndiName`, `setSessionContext`, `validateAuthorization``

Methods from `com.beasys.commerce.foundation.`SessionImpl``
``clearRelationalBinding`, `clearRelationalBinding`, `clearRelationalBinding`, `clearRelationalBinding`, `doRelationalBinding`, `doRelationalBinding`, `doRelationalBindingOnElement`, `doRelationalBindingOnElement`, `doRelationalBindingOnElement`, `doRelationalBindingOnSingleton`, `doRelationalBindingOnSingleton`, `doRelationalBindingOnSingleton`, `doRelationalBindingWithMapKey`, `doRelationalBindingWithMapKey`, `doRelationalBindingWithMapKey`, `ejbActivate`, `ejbCreate`, `ejbPassivate`, `ejbPostCreate`, `ejbRemove`, `enumerateRelationalBinding`, `enumerateRelationalBinding`, `getEnvironmentNamingContext`, `getEnvironmentProperty`, `getEnvironmentProperty`, `getEnvironmentPropertyCache`, `getPersistenceHelperPlugin`, `getSessionContext`, `setSessionContext``

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

Methods from interface `javax.ejb.`SessionBean``
`ejbActivate, ejbPassivate, ejbRemove, setSessionContext`

## Field Detail

### supportsLikeEscapeClause

    protected Boolean supportsLikeEscapeClause

  Whether the underlying database connection supports the LIKE ESCAPE clause.

  This will be initialized form the `supportsLikeEscapeClause` environment property. It will be null to use `JdbcHelper.supportsLikeEscapeClause(Connection)``` method.

### tablePrefix

    protected String tablePrefix

  The table name prefix for the ConfigurableEntity/EntityPropertyManager tables for custom data searching through expressions.

  This will be initialized from the `PropertyTableSetPrefix` environment property.

## Constructor Detail

### JdbcCatalogQueryManagerImpl

    public JdbcCatalogQueryManagerImpl()

## Method Detail

### ejbActivate() Method

    public void ejbActivate()
         throws EJBException

Description copied from `SessionImpl.ejbActivate()`
ejbActivate method.

Overrides
  `JdbcCatalogServiceImpl.ejbActivate()`

#### Exceptions

``EJBException``

### ejbCreate() Method

    public void ejbCreate()
         throws CreateException

Description copied from `SessionImpl.ejbCreate()`
ejbCreate method.

Overrides
  `JdbcCatalogServiceImpl.ejbCreate()`

#### Exceptions

``CreateException``

### ejbPassivate() Method

    public void ejbPassivate()
         throws EJBException

Description copied from `SessionImpl.ejbPassivate()`
ejbPassivate method.

Overrides
  `JdbcCatalogServiceImpl.ejbPassivate()`

#### Exceptions

``EJBException``

### ejbPostCreate() Method

    public void ejbPostCreate()
         throws CreateException

Description copied from `SessionImpl.ejbPostCreate()`
ejbPostCreate method.

Overrides
  `JdbcCatalogServiceImpl.ejbPostCreate()`

#### Exceptions

``CreateException``

### ejbRemove() Method

    public void ejbRemove()
         throws EJBException

Description copied from `SessionImpl.ejbRemove()`
ejbRemove method.

Overrides
  `JdbcCatalogServiceImpl.ejbRemove()`

#### Exceptions

``EJBException``

### search(CatalogRequest, CatalogQuery) Method

    public ProductItemKey[] search(CatalogRequest request,
                                 CatalogQuery query)
         throws CatalogException

Returns the results of the search peformed using the supplied catalog query object.

#### Parameters

request
  The catalog request object.

query
  The catalog query object.

#### Returns

An array of product item keys.

#### Exceptions

``CatalogException``
  on general error.

### search(CatalogRequest, CatalogQuery, int) Method

    public ViewIterator search(CatalogRequest request,
                               CatalogQuery query,
                               int viewSize)
         throws CatalogException, RemoteException

Returns a ViewIterator over the results of the search peformed using the supplied catalog query object.

#### Parameters

request
  The catalog request object.

query
  The catalog query object.

viewSize
  The view size of the returned ViewIterator.

#### Returns

A ViewIterator over the product items returned by the search.

#### Exceptions

``CatalogException``
  on general error.
``RemoteException``

### searchCategories(CatalogRequest, CatalogQuery) Method

    public CategoryKey[] searchCategories(CatalogRequest request,
                                        CatalogQuery query)
         throws RemoteException, CatalogException

Returns the results of the search peformed using the supplied catalog query object for categories.

#### Parameters

request
  The catalog request object.

query
  The catalog query object.

#### Returns

An array of category keys.

#### Exceptions

``RemoteException``
``CatalogException``
  on general error.

### setSessionContext(SessionContext) Method

    public void setSessionContext(SessionContext ctx)
         throws EJBException

Description copied from `SessionImpl.setSessionContext(SessionContext)`
setSessionContext method.

Overrides
  `JdbcCatalogServiceImpl.setSessionContext(SessionContext)`

#### Exceptions

``EJBException``