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