# com.beasys.commerce.ebusiness.catalog
CatalogManager Interface

public interface CatalogManager
extends `CatalogService`

The `CatalogManager` is the main entry point to the Product Catalog. It controls access to a number of discrete service interfaces: category manager, product item manager, query manager and the custom data manager.
In order to use the various Product Catalog services, one must first create a `CatalogManager` and then obtain discrete service interfaces using the various service accessors. Each service interface is responsible for delegating to an implementation service, as specified in each service interface deployment environment. In this way, different service implementations may be transparently substituted.

Related Topics

``CatalogManagerHome``
``CatalogManagerImpl``
``CategoryManager``
``ProductItemManager``
``CatalogQueryManager``
``CustomDataManager``

All Superinterfaces
  `BusinessSmartComponent`, `CatalogService`, `EJBObject`, `Remote`, `Serializable`, `Session`

## Method Summary

`public `CatalogRequest`` | `createAdminCatalogRequest`() Creates a CatalogRequest with administrative user access permissions.
`public `CatalogRequest`` | `createCatalogRequest`() Creates a CatalogRequest with default user access permissions.
`public `CatalogQueryManager`` | `getCatalogQueryManager`(`CatalogRequest` request) Returns the CatalogQueryManager catalog service.
`public `CategoryManager`` | `getCategoryManager`(`CatalogRequest` request) Returns the CategoryManager catalog service.
`public `CustomDataManager`` | `getCustomDataManager`(`CatalogRequest` request) Returns the CustomDataManager catalog service.
`public `ProductItemManager`` | `getProductItemManager`(`CatalogRequest` request) Returns the ProductItemManager catalog service.
`public void` | `onRemoveItem`(`CatalogRequest` request, `CatalogItemKey` item) Callback method.

Methods from interface `com.beasys.commerce.ebusiness.catalog.service.`CatalogService``
``getCatalogManager``

Methods from interface `javax.ejb.`EJBObject``
`getEJBHome, getHandle, getPrimaryKey, isIdentical, remove`

## Method Detail

### createAdminCatalogRequest() Method

    public CatalogRequest createAdminCatalogRequest()
         throws RemoteException

Creates a CatalogRequest with administrative user access permissions. The CatalogRequest object is the first parameter to most catalog methods and encapsulates information about the current user and the data they are requesting.

#### Exceptions

``RemoteException``

Related Topics

``CatalogManager.createCatalogRequest()``

### createCatalogRequest() Method

    public CatalogRequest createCatalogRequest()
         throws RemoteException

Creates a CatalogRequest with default user access permissions. The CatalogRequest object is the first parameter to most catalog methods and encapsulates information about the current user and the data they are requesting.

#### Exceptions

``RemoteException``

Related Topics

``CatalogManager.createAdminCatalogRequest()``

### getCatalogQueryManager(CatalogRequest) Method

    public CatalogQueryManager getCatalogQueryManager(CatalogRequest request)
         throws RemoteException

Returns the CatalogQueryManager catalog service.

#### Parameters

request
  the user's current CatalogRequest

#### Returns

the CatalogQueryManager service

#### Exceptions

``RemoteException``

Related Topics

``CatalogQueryManager``
``CatalogManager.createCatalogRequest()``
``CatalogManager.createAdminCatalogRequest()``

### getCategoryManager(CatalogRequest) Method

    public CategoryManager getCategoryManager(CatalogRequest request)
         throws RemoteException

Returns the CategoryManager catalog service.

#### Parameters

request
  the user's current CatalogRequest

#### Returns

the CategoryManager service

#### Exceptions

``RemoteException``

Related Topics

``CategoryManager``
``CatalogManager.createCatalogRequest()``
``CatalogManager.createAdminCatalogRequest()``

### getCustomDataManager(CatalogRequest) Method

    public CustomDataManager getCustomDataManager(CatalogRequest request)
         throws RemoteException

Returns the CustomDataManager catalog service.

#### Parameters

request
  the user's current CatalogRequest

#### Returns

the CustomDataManager service

#### Exceptions

``RemoteException``

Related Topics

``CustomDataManager``
``CatalogManager.createCatalogRequest()``
``CatalogManager.createAdminCatalogRequest()``

### getProductItemManager(CatalogRequest) Method

    public ProductItemManager getProductItemManager(CatalogRequest request)
         throws RemoteException

Returns the ProductItemManager catalog service.

#### Parameters

request
  the user's current CatalogRequest

#### Returns

the ProductItemManager service

#### Exceptions

``RemoteException``

Related Topics

``ProductItemManager``
``CatalogManager.createCatalogRequest()``
``CatalogManager.createAdminCatalogRequest()``

### onRemoveItem(CatalogRequest, CatalogItemKey) Method

    public void onRemoveItem(CatalogRequest request,
                             CatalogItemKey item)
         throws RemoteException

Callback method. Services that remove items: `CategoryManager.removeCategory` and `ProductItemMananger.removeItem` should notify the `CatalogManager` that the items have been removed.

#### Parameters

request
  the current CatalogRequest for the user

item
  the key for the item being removed

#### Exceptions

``RemoteException``