2.17.2: 2011-06-17

net.sf.basedb.core
Class QueryRuntimeFilterFactory.OwnableFilter

java.lang.Object
  extended by net.sf.basedb.core.QueryRuntimeFilterFactory.OwnableFilter
All Implemented Interfaces:
QueryRuntimeFilter
Enclosing class:
QueryRuntimeFilterFactory

private static class QueryRuntimeFilterFactory.OwnableFilter
extends Object
implements QueryRuntimeFilter

An optional default filter for Ownable items that are not Shareable. The filter checks the query for the Include.MINE and Include.OTHERS options and enabled one of the ownedBy, notOwnedBy and denyAll filters if neccessary. If the logged in user doesn't have generic permission EntityQuery.getItemPermission() for a specific item type, items owned by other users will not be returned.


Constructor Summary
private QueryRuntimeFilterFactory.OwnableFilter()
           
 
Method Summary
 void enableFilters(QueryRuntimeFilterManager manager, EntityQuery query, DbControl dc)
          Enable the filters based on the options specified by the query and the logged in users permissions.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QueryRuntimeFilterFactory.OwnableFilter

private QueryRuntimeFilterFactory.OwnableFilter()
Method Detail

enableFilters

public void enableFilters(QueryRuntimeFilterManager manager,
                          EntityQuery query,
                          DbControl dc)
Description copied from interface: QueryRuntimeFilter
Enable the filters based on the options specified by the query and the logged in users permissions. Implementors should use the manager to enable the filters, not the HibernateUtil.enableFilter() method. The manager keeps track of already enabled filters and also takes care of disabling all filters after the query has been executed.

Specified by:
enableFilters in interface QueryRuntimeFilter
Parameters:
manager - A manager that is used to actually enabled the filter
query - The query that is going to be executed, it is not possible to modify the query, the actual HQL may already have been generated
dc - The DbControl used for database access and permission checking

2.17.2: 2011-06-17