Interface SearchRestrictionService
-
- All Known Implementing Classes:
DefaultSearchRestrictionService
public interface SearchRestrictionService
Provides methods for managing persisted search restrictions based on
SearchRestrictionModel
as well on dynamic search restrictions which are stored directly in the session.Please notice that any search restrictions are ignored if current logged user is admin or any other user with admin rights.
- Spring Bean ID:
- searchRestrictionService
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addSessionSearchRestrictions(SessionSearchRestriction... restrictions)
Adds session search restrictions to current session context.void
addSessionSearchRestrictions(java.util.Collection<SessionSearchRestriction> restrictions)
Adds session search restrictions to current session context.void
clearSessionSearchRestrictions()
Clear session search restrictions in current session context.void
disableSearchRestrictions()
Disable search restrictions in current session context.void
enableSearchRestrictions()
Enable search restrictions in current session context.java.util.Collection<SearchRestrictionModel>
getActiveSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets only active search restrictions for givenComposedTypeModel
.java.util.Collection<SearchRestrictionModel>
getInactiveSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets only inactive search restrictions for givenComposedTypeModel
.java.util.Collection<SearchRestrictionModel>
getSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets all (active and inactive) search restrictions for givenComposedTypeModel
.java.util.Collection<SearchRestrictionModel>
getSearchRestrictionsForType(ComposedTypeModel type)
Gets all search restrictions for type.java.util.Collection<SessionSearchRestriction>
getSessionSearchRestrictions()
Gets the session search restrictions from current session context.java.util.Collection<SessionSearchRestriction>
getSessionSearchRestrictions(ComposedTypeModel type)
Gets the session search restrictions from current session context for particularComposedTypeModel
object.boolean
hasRestrictions(PrincipalModel principal, boolean includePrincipalGroups, ComposedTypeModel type)
Checks whether type has search restrictions (session and persisted).boolean
isSearchRestrictionsEnabled()
Checks if search restrictions feature in current session context is enabled.void
removalAllSessionSearchRestrictions()
Removes all session-scoped search restrictions from the current session.void
removeSessionSearchRestrictions(java.util.Collection<SessionSearchRestriction> restrictions)
Remove session search restrictions from current session context.
-
-
-
Method Detail
-
addSessionSearchRestrictions
void addSessionSearchRestrictions(java.util.Collection<SessionSearchRestriction> restrictions)
Adds session search restrictions to current session context. If currently there are some session search restrictions, passed as parameter collection of restrictions will be added to current one.
Example usage:
final ComposedTypeModel restrictedType = typeService.getComposedTypeForClass(LanguageModel.class); final SessionSearchRestriction restriction = new SessionSearchRestriction("someUniqueCode", "{active} IS TRUE", restrictedType); final Collection<SessionSearchRestriction> restrictions = new ArrayList<SessionSearchRestriction>(); restrictions.add(restriction); searchRestrictionService.addSessionSearchRestrictions(restrictions);
- Parameters:
restrictions
- the restrictions collection to add to session.
-
addSessionSearchRestrictions
void addSessionSearchRestrictions(SessionSearchRestriction... restrictions)
Adds session search restrictions to current session context. If currently there are some session search restrictions, passed as parameter restriction(s) will be added to current one.
Example usage:
final ComposedTypeModel restrictedType = typeService.getComposedTypeForClass(LanguageModel.class); final SessionSearchRestriction restriction1 = new SessionSearchRestriction("someUniqueCode1", "{active} IS TRUE", restrictedType); final SessionSearchRestriction restriction2 = new SessionSearchRestriction("someUniqueCode2", "{foo}={bar}", restrictedType); searchRestrictionService.addSessionSearchRestrictions(restriction1, restriction2);
- Parameters:
restrictions
- the restrictions to add
-
clearSessionSearchRestrictions
void clearSessionSearchRestrictions()
Clear session search restrictions in current session context.
-
disableSearchRestrictions
void disableSearchRestrictions()
Disable search restrictions in current session context.
-
enableSearchRestrictions
void enableSearchRestrictions()
Enable search restrictions in current session context.
-
getActiveSearchRestrictions
java.util.Collection<SearchRestrictionModel> getActiveSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets only active search restrictions for givenComposedTypeModel
.- Parameters:
principal
- the principal for which restrictions will be searchedincludePrincipalGroups
- determines whether include principal groups in searchtypes
- Collection ofComposedTypeModel
objects for which restriction will be obtained.- Returns:
- the active search restrictions collection.
-
getInactiveSearchRestrictions
java.util.Collection<SearchRestrictionModel> getInactiveSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets only inactive search restrictions for givenComposedTypeModel
.- Parameters:
principal
- the principal for which restrictions will be searchedincludePrincipalGroups
- determines whether include principal groups in searchtypes
- Collection ofComposedTypeModel
objects for which restriction will be obtained.- Returns:
- the active search restrictions collection.
-
getSearchRestrictions
java.util.Collection<SearchRestrictionModel> getSearchRestrictions(PrincipalModel principal, boolean includePrincipalGroups, java.util.Collection<ComposedTypeModel> types)
Gets all (active and inactive) search restrictions for givenComposedTypeModel
.- Parameters:
principal
- the principal for which restrictions will be searchedincludePrincipalGroups
- determines whether include principal groups in searchtypes
- Collection ofComposedTypeModel
objects for which restriction will be obtained.- Returns:
- the all search restrictions.
-
getSearchRestrictionsForType
java.util.Collection<SearchRestrictionModel> getSearchRestrictionsForType(ComposedTypeModel type)
Gets all search restrictions for type.- Parameters:
type
- the type- Returns:
- the search restrictions for type
-
getSessionSearchRestrictions
java.util.Collection<SessionSearchRestriction> getSessionSearchRestrictions()
Gets the session search restrictions from current session context.- Returns:
- the session search restrictions collection.
-
getSessionSearchRestrictions
java.util.Collection<SessionSearchRestriction> getSessionSearchRestrictions(ComposedTypeModel type)
Gets the session search restrictions from current session context for particularComposedTypeModel
object.- Parameters:
type
- the type for which which restriction will be obtained.- Returns:
- the session search restrictions collection.
-
hasRestrictions
boolean hasRestrictions(PrincipalModel principal, boolean includePrincipalGroups, ComposedTypeModel type)
Checks whether type has search restrictions (session and persisted).- Parameters:
principal
- the principal for which restrictions will be searchedincludePrincipalGroups
- determines whether include principal groups in searchtype
- the type for which check will be triggered.- Returns:
- true if has restrictions, false otherwise.
-
isSearchRestrictionsEnabled
boolean isSearchRestrictionsEnabled()
Checks if search restrictions feature in current session context is enabled.- Returns:
- true is search restrictions are enabled
-
removeSessionSearchRestrictions
void removeSessionSearchRestrictions(java.util.Collection<SessionSearchRestriction> restrictions)
Remove session search restrictions from current session context.- Parameters:
restrictions
- the restrictions collection to remove from session.
-
removalAllSessionSearchRestrictions
void removalAllSessionSearchRestrictions()
Removes all session-scoped search restrictions from the current session.
-
-