Skip to main content

FILTER event hooks

Filters will help you build customized permission schemes. They are called for both LIST and ITEM commands.

@Override
protected boolean dataFilterActive() {
    return true;
}
@Override
protected void dataFilterHandler(StringBuilder sql) {
    sql.append(" AND something");
}

In some cases you only want the filter to trigger for either LIST or ITEM commands

itemFilterActive() {}
itemFilterHandler(StringBuilder sql) { return sql; }
listFilterActive() {}
listFilterHandler(StringBuilder sql) { return sql; }

Examples

The xxxFilterActive tells if the filter is active

boolean dataFilterActive() { return !s.isAdministor(); }

The xxxFilterHandler modifies the SQL used to fetch data

void dataFilterHandler(StringBuilder sql) { sql.append(" AND CATEGORY NOT IN (123,456,789)"); }