Holger's Java API

## com.antelmann.db
Interface CategoryManager

All Superinterfaces:
  TransactionRequired

All Known Implementing Classes:
  CategoryStore

    public interface CategoryManager

extends TransactionRequired

specifies the functionality commonly used to deal with categories and implemented by a `DBClassStore`.

Since:
  01.08.2011, 05:24:02
Author:
  Holger Antelmann
See Also:
  `Database.queryStoreForInterface(Class, Class)`, `CategoryStore`

Method Summary
`Iterable<Object>` `getAllSubCategoryIDs(DBReference categoryRef)`

`

`<S extends DBEntry> Filter<S>`

`

`getCategoryUsageFilterFor(Class<S> type, Object categoryId)`

`Collection<DBClassStore<?>>` `getCategoryUserStores()`
`List<? extends Category<?>>` `getSubCategories(DBReference categoryRef)`
`List<? extends Category<?>>` `getTopCategories()`
`boolean` `isLeaf(DBReference categoryRef)`
`boolean` `isUsed(DBReference categoryRef)`

`

`<S extends DBEntry> PatternExtractor<Object,Filter<S>>`

`

`registerCategoryUse(DBClassStore<S> store, PatternExtractor<Object,Filter<S>> filterCreator)`

Method Detail

### getTopCategories

    List<? extends Category<?>> getTopCategories()
                                                 throws DatabaseException

  Throws:
    `DatabaseException`

### getSubCategories

    List<? extends Category<?>> getSubCategories(DBReference categoryRef)
                                                 throws DatabaseException,
                                                        IllegalArgumentException

  Throws:
    `DatabaseException`
    `IllegalArgumentException`

### getAllSubCategoryIDs

    Iterable<Object> getAllSubCategoryIDs(DBReference categoryRef)
                                          throws DatabaseException,
                                                 IllegalArgumentException

  Throws:
    `DatabaseException`
    `IllegalArgumentException`

### isLeaf

    boolean isLeaf(DBReference categoryRef)
                   throws DatabaseException,
                          IllegalArgumentException

  Throws:
    `DatabaseException`
    `IllegalArgumentException`

### isUsed

    boolean isUsed(DBReference categoryRef)
                   throws DatabaseException,
                          IllegalArgumentException

  Throws:
    `DatabaseException`
    `IllegalArgumentException`

### registerCategoryUse

    <S extends DBEntry> PatternExtractor<Object,Filter<S>> registerCategoryUse(DBClassStore<S> store,
                                                                               PatternExtractor<Object,Filter<S>> filterCreator)

  Parameters:
    `filterCreator` - creates a filter based on an object id
  See Also:
    `CategoryStore.registerCategoryUser(DBClassStore, String, Class)`

### getCategoryUserStores

    Collection<DBClassStore<?>> getCategoryUserStores()

### getCategoryUsageFilterFor

    <S extends DBEntry> Filter<S> getCategoryUsageFilterFor(Class<S> type,
                                                            Object categoryId)

(c) Holger Antelmann since 2001- all rights reserved (contact: info@antelmann.com)
see www.antelmann.com/developer for further details and available downloads