Package net.sf.basedb.core.query
Class PermissionRestriction
- java.lang.Object
-
- net.sf.basedb.core.query.PermissionRestriction
-
- All Implemented Interfaces:
QueryElement
,Restriction
public class PermissionRestriction extends Object implements Restriction
Restriction that inserts an "impossible" filter requirement (1=0) if the logged in user is lacking a given permission. Note that if the given permission is DENIED then 1=0 is returned if the user has that permission, otherwise if the user is lacking the permission.- Since:
- 3.6.2
- Author:
- nicklas
-
-
Field Summary
Fields Modifier and Type Field Description private Item
itemType
private Permission
permission
-
Constructor Summary
Constructors Constructor Description PermissionRestriction(Permission permission, Item itemType)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Collection<? extends QueryElement>
getChildren()
Get the children of this query element or null if it has no children.String
toQl(Query query, DbControl dc)
Create a query language string of the query element.
-
-
-
Field Detail
-
permission
private final Permission permission
-
itemType
private final Item itemType
-
-
Constructor Detail
-
PermissionRestriction
public PermissionRestriction(Permission permission, Item itemType)
-
-
Method Detail
-
toQl
public String toQl(Query query, DbControl dc) throws BaseException
Description copied from interface:QueryElement
Create a query language string of the query element. Use theQuery.getQueryType()
method to find out which query language is wanted in case the element requires different syntax for different languages.- Specified by:
toQl
in interfaceQueryElement
- Parameters:
query
- The query that is about to be executeddc
- TheDbControl
object used to execute the query- Throws:
BaseException
- If there is any other error
-
getChildren
public Collection<? extends QueryElement> getChildren()
Description copied from interface:QueryElement
Get the children of this query element or null if it has no children. For example theAddExpression
has two children, the expression beeing added.- Specified by:
getChildren
in interfaceQueryElement
- Returns:
- A collection or null
-
-