© 2005 BEA Systems, Inc.

com.beasys.commerce.ebusiness.catalog.service.category
Interface CategoryManager

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

public interface CategoryManager
extends CatalogService

The CategoryManager is a catalog service provider that manages the creation, update and deletion of categories. In addition it also controls the mapping of product items into categories.

See Also:
CategoryManagerHome, CategoryManagerImpl

Method Summary
 void addItem(CatalogRequest request, CategoryKey categoryKey, ProductItemKey itemKey)
          Adds an item to the specified category.
 void createCategory(CatalogRequest request, CategoryKey parentKey, Category category)
          Creates a sub category within the supplied parent category.
 Category[] getAncestors(CatalogRequest request, CategoryKey categoryKey)
          Returns the ancestors of the specified category in ascending order.
 Category[] getCategories(CatalogRequest request, CategoryKey[] categoryKeys)
          Returns the categories with the given category keys.
 ViewIterator getCategories(CatalogRequest request, int viewSize)
          Returns a ViewIterator over all existing categories.
 Category getCategory(CatalogRequest request, CategoryKey categoryKey)
          Returns the category with the given category key.
 int getCategoryCount(CatalogRequest request)
          Returns the total number of categories in the product catalog.
 CategoryKey[] getCategoryKeys(CatalogRequest request, int beginIndex, int endIndex)
          Returns an array of all existing category keys within the specified ordered range.
 CategoryKey[] getItemCategories(CatalogRequest request, ProductItemKey productKey)
          Gets all the categories that an item is a part of.
 CategoryKey[][] getItemCategories(CatalogRequest request, ProductItemKey[] productKeys)
          Returns an array of arrays of all the categories that items are part of.
 int getItemCount(CatalogRequest request, CategoryKey categoryKey)
          Returns the number of product items associated with the specified category.
 ProductItemKey[] getItemKeys(CatalogRequest request, CategoryKey categoryKey, int beginIndex, int endIndex)
          Returns an array of all product item keys of the specified category within the specified ordered range.
 ViewIterator getItems(CatalogRequest request, CategoryKey categoryKey, int viewSize)
          Returns a ViewIterator over all product items of the specified category.
 int getOrphanedItemCount(CatalogRequest request)
          Returns the number of orphaned items in the catalog.
 ProductItemKey[] getOrphanedItemKeys(CatalogRequest request, int beginIndex, int endIndex)
          Returns an array of all existing orphaned item keys within the specified ordered range.
 ViewIterator getOrphanedItems(CatalogRequest request, int viewSize)
          Returns a ViewIterator over all existing orphaned categories.
 Category getParent(CatalogRequest request, CategoryKey categoryKey)
          Returns the parent of the specified category.
 Category getRootCategory(CatalogRequest request)
          Returns the root category.
 int getSiblingCount(CatalogRequest request, CategoryKey categoryKey)
          Returns the number of siblings associated with the specified category.
 CategoryKey[] getSiblingKeys(CatalogRequest request, CategoryKey categoryKey, int beginIndex, int endIndex)
          Returns an array of all exististing sibling keys of the specified category within the specified ordered range.
 ViewIterator getSiblings(CatalogRequest request, CategoryKey categoryKey, int viewSize)
          Returns a ViewIterator over all siblings of the specified category.
 ViewIterator getSubCategories(CatalogRequest request, CategoryKey categoryKey, int viewSize)
          Returns a ViewIterator over all sub categories of the specified category.
 int getSubCategoryCount(CatalogRequest request, CategoryKey categoryKey)
          Returns the number of sub categories associated with the specified category.
 CategoryKey[] getSubCategoryKeys(CatalogRequest request, CategoryKey categoryKey, int beginIndex, int endIndex)
          Returns an array of all sub category keys of the specified category within the specified ordered range.
 void moveCategory(CatalogRequest request, CategoryKey categoryKey, CategoryKey newParentKey)
          Moves the specifed category.
 void removeCategory(CatalogRequest request, CategoryKey categoryKey)
          Removes the specifed category.
 void removeItem(CatalogRequest request, CategoryKey categoryKey, ProductItemKey itemKey)
          Removes an item from the specified category.
 void updateCategory(CatalogRequest request, Category category)
          Updates the specifed category.
 
Methods inherited from interface com.beasys.commerce.ebusiness.catalog.service.CatalogService
getCatalogManager
 
Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove
 

Method Detail

addItem

public void addItem(CatalogRequest request,
                    CategoryKey categoryKey,
                    ProductItemKey itemKey)
             throws RemoteException,
                    CatalogFinderException,
                    CatalogException
Adds an item to the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of target category.
itemKey - The key of the target item.
Throws:
CatalogFinderException - if the target category or item could not be found.
CatalogException - on general error.
RemoteException

createCategory

public void createCategory(CatalogRequest request,
                           CategoryKey parentKey,
                           Category category)
                    throws RemoteException,
                           CatalogCreateException,
                           CatalogException
Creates a sub category within the supplied parent category.

Parameters:
request - The catalog request object.
parentKey - The key of the target parent category.
category - The category to persist.
Throws:
CatalogCreateException - on category creation error.
CatalogException - on general error.
RemoteException

getAncestors

public Category[] getAncestors(CatalogRequest request,
                               CategoryKey categoryKey)
                        throws RemoteException,
                               CatalogException
Returns the ancestors of the specified category in ascending order.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
An array of ancestor categories in ascending order.
Throws:
CatalogException - on general error.
RemoteException

getCategories

public Category[] getCategories(CatalogRequest request,
                                CategoryKey[] categoryKeys)
                         throws RemoteException,
                                CatalogFinderException,
                                CatalogException
Returns the categories with the given category keys.

Parameters:
request - The catalog request object.
Returns:
The categories with the given category keys.
Throws:
CatalogFinderException - if a category with a given key does not exist.
CatalogException - on general error.
RemoteException

getCategories

public ViewIterator getCategories(CatalogRequest request,
                                  int viewSize)
                           throws RemoteException,
                                  CatalogException
Returns a ViewIterator over all existing categories.

Parameters:
request - The catalog request object.
viewSize - The view size of the returned ViewIterator.
Returns:
A ViewIterator over the categories.
Throws:
CatalogException - on general error.
RemoteException

getCategory

public Category getCategory(CatalogRequest request,
                            CategoryKey categoryKey)
                     throws RemoteException,
                            CatalogFinderException,
                            CatalogException
Returns the category with the given category key.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
The category with the given category key.
Throws:
CatalogFinderException - if a category with the given key does not exist.
CatalogException - on general error.
RemoteException

getCategoryCount

public int getCategoryCount(CatalogRequest request)
                     throws RemoteException,
                            CatalogException
Returns the total number of categories in the product catalog.

Parameters:
request - The catalog request object.
Returns:
The total number of categories in the product catalog.
Throws:
CatalogException - on general error.
RemoteException

getCategoryKeys

public CategoryKey[] getCategoryKeys(CatalogRequest request,
                                     int beginIndex,
                                     int endIndex)
                              throws RemoteException,
                                     CatalogException
Returns an array of all existing category keys within the specified ordered range.

Parameters:
request - The catalog request object.
beginIndex - The lower bound index for returned category keys.
endIndex - The upper bound index for returned category keys.
Returns:
An array of the category keys.
Throws:
CatalogException - on general error.
RemoteException

getItemCategories

public CategoryKey[] getItemCategories(CatalogRequest request,
                                       ProductItemKey productKey)
                                throws RemoteException,
                                       CatalogFinderException,
                                       CatalogException
Gets all the categories that an item is a part of.

Parameters:
request - The catalog request object.
productKey - ProductItemKey of the product item concerned.
Returns:
An array of category keys.
Throws:
CatalogFinderException - if the product item could not be found.
CatalogException - on general error.
RemoteException

getItemCategories

public CategoryKey[][] getItemCategories(CatalogRequest request,
                                         ProductItemKey[] productKeys)
                                  throws RemoteException,
                                         CatalogException
Returns an array of arrays of all the categories that items are part of. The order of the arrays returned is the same as the product item keys in the input. In case a product item key does not exist an empty array is returned.

Parameters:
request - The catalog request object.
productKeys - Array of ProductItemKeys.
Returns:
An array of arrays of category keys.
Throws:
CatalogException - on general error.
RemoteException

getItemCount

public int getItemCount(CatalogRequest request,
                        CategoryKey categoryKey)
                 throws RemoteException,
                        CatalogFinderException,
                        CatalogException
Returns the number of product items associated with the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
The number of product items associated with the specified category.
Throws:
CatalogFinderException - if the specified category could not be found.
CatalogException - on general error.
RemoteException

getItemKeys

public ProductItemKey[] getItemKeys(CatalogRequest request,
                                    CategoryKey categoryKey,
                                    int beginIndex,
                                    int endIndex)
                             throws RemoteException,
                                    CatalogException
Returns an array of all product item keys of the specified category within the specified ordered range.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
beginIndex - The lower bound index for returned product item keys.
endIndex - The upper bound index for returned product item keys.
Returns:
An array of all the product item keys.
Throws:
CatalogException - on general error.
RemoteException

getItems

public ViewIterator getItems(CatalogRequest request,
                             CategoryKey categoryKey,
                             int viewSize)
                      throws RemoteException,
                             CatalogException
Returns a ViewIterator over all product items of the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
viewSize - The view size of the returned ViewIterator.
Returns:
A ViewIterator over all product items.
Throws:
CatalogException - on general error.
RemoteException

getOrphanedItemCount

public int getOrphanedItemCount(CatalogRequest request)
                         throws RemoteException,
                                CatalogException
Returns the number of orphaned items in the catalog.

Parameters:
request - The catalog request object.
Returns:
The number of orphaned items in the catalog.
Throws:
CatalogException - on general error.
RemoteException

getOrphanedItemKeys

public ProductItemKey[] getOrphanedItemKeys(CatalogRequest request,
                                            int beginIndex,
                                            int endIndex)
                                     throws RemoteException,
                                            CatalogException
Returns an array of all existing orphaned item keys within the specified ordered range.

Parameters:
request - The catalog request object.
beginIndex - The lower bound index for returned category keys.
endIndex - The upper bound index for returned category keys.
Returns:
An array of the orphaned category keys.
Throws:
CatalogException - on general error.
RemoteException

getOrphanedItems

public ViewIterator getOrphanedItems(CatalogRequest request,
                                     int viewSize)
                              throws RemoteException,
                                     CatalogException
Returns a ViewIterator over all existing orphaned categories.

Parameters:
request - The catalog request object.
viewSize - The view size of the returned ViewIterator.
Returns:
A ViewIterator over all existing orphaned categories.
Throws:
CatalogException - on general error.
RemoteException

getParent

public Category getParent(CatalogRequest request,
                          CategoryKey categoryKey)
                   throws RemoteException,
                          CatalogFinderException,
                          CatalogException
Returns the parent of the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
The parent of the specified category.
Throws:
CatalogFinderException - if the parent could not be found. This could happen if the specified category does not exist or is the root category.
CatalogException - on general error.
RemoteException

getRootCategory

public Category getRootCategory(CatalogRequest request)
                         throws RemoteException,
                                CatalogCreateException,
                                CatalogException
Returns the root category. If the root category does not exist, it will be created.

Parameters:
request - The catalog request object.
Returns:
The root category.
Throws:
CatalogCreateException - if the root category could not be created.
CatalogException - on general error.
RemoteException

getSiblingCount

public int getSiblingCount(CatalogRequest request,
                           CategoryKey categoryKey)
                    throws RemoteException,
                           CatalogFinderException,
                           CatalogException
Returns the number of siblings associated with the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
The number of siblings associated with the specified category.
Throws:
CatalogFinderException - if the specified category could not be found.
CatalogException - on general error.
RemoteException

getSiblingKeys

public CategoryKey[] getSiblingKeys(CatalogRequest request,
                                    CategoryKey categoryKey,
                                    int beginIndex,
                                    int endIndex)
                             throws RemoteException,
                                    CatalogException
Returns an array of all exististing sibling keys of the specified category within the specified ordered range.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
beginIndex - The lower bound index for returned sibling keys.
endIndex - The upper bound index for returned sibling keys.
Returns:
An array of the sibling keys.
Throws:
CatalogException - on general error.
RemoteException

getSiblings

public ViewIterator getSiblings(CatalogRequest request,
                                CategoryKey categoryKey,
                                int viewSize)
                         throws RemoteException,
                                CatalogException
Returns a ViewIterator over all siblings of the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
viewSize - The view size of the returned ViewIterator.
Returns:
A ViewIterator over all siblings.
Throws:
CatalogException - on general error.
RemoteException

getSubCategories

public ViewIterator getSubCategories(CatalogRequest request,
                                     CategoryKey categoryKey,
                                     int viewSize)
                              throws RemoteException,
                                     CatalogException
Returns a ViewIterator over all sub categories of the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
viewSize - The view size of the returned ViewIterator.
Returns:
A ViewIterator over all the sub categories.
Throws:
CatalogException - on general error.
RemoteException

getSubCategoryCount

public int getSubCategoryCount(CatalogRequest request,
                               CategoryKey categoryKey)
                        throws RemoteException,
                               CatalogFinderException,
                               CatalogException
Returns the number of sub categories associated with the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Returns:
The number of sub categories associated with the specified category.
Throws:
CatalogFinderException - if the specified category could not be found.
CatalogException - on general error.
RemoteException

getSubCategoryKeys

public CategoryKey[] getSubCategoryKeys(CatalogRequest request,
                                        CategoryKey categoryKey,
                                        int beginIndex,
                                        int endIndex)
                                 throws RemoteException,
                                        CatalogException
Returns an array of all sub category keys of the specified category within the specified ordered range.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
beginIndex - The lower bound index for returned sub category keys.
endIndex - The upper bound index for returned sub category keys.
Returns:
An array of all the sub category keys.
Throws:
CatalogException - on general error.
RemoteException

moveCategory

public void moveCategory(CatalogRequest request,
                         CategoryKey categoryKey,
                         CategoryKey newParentKey)
                  throws RemoteException,
                         CatalogFinderException,
                         CatalogException
Moves the specifed category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Throws:
CatalogFinderException - if the specified target or parent category could not be found.
CatalogException - on general error.
RemoteException

removeCategory

public void removeCategory(CatalogRequest request,
                           CategoryKey categoryKey)
                    throws RemoteException,
                           CatalogRemoveException,
                           CatalogFinderException,
                           CatalogException
Removes the specifed category.

Parameters:
request - The catalog request object.
categoryKey - The key of the target category.
Throws:
CatalogRemoveException - if the specified category could not be removed.
CatalogFinderException - if the specified category could not be found.
CatalogException - on general error.
RemoteException

removeItem

public void removeItem(CatalogRequest request,
                       CategoryKey categoryKey,
                       ProductItemKey itemKey)
                throws RemoteException,
                       CatalogFinderException,
                       CatalogException
Removes an item from the specified category.

Parameters:
request - The catalog request object.
categoryKey - The key of target category.
itemKey - The key of the target item.
Throws:
CatalogFinderException - if the target category could not be found.
CatalogException - on general error.
RemoteException

updateCategory

public void updateCategory(CatalogRequest request,
                           Category category)
                    throws RemoteException,
                           CatalogFinderException,
                           CatalogException
Updates the specifed category.

Parameters:
request - The catalog request object.
category - The category to update.
Throws:
CatalogFinderException - if the specified category could not be found.
CatalogException - on general error.
RemoteException

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved