Package io.jmix.reports
Class ReportSecurityManager
java.lang.Object
io.jmix.reports.ReportSecurityManager
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected DataManagerprotected FetchPlansprotected Metadataprotected QueryTransformerFactoryprotected ResourceRoleRepositoryprotected RoleAssignmentRepository
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidapplyPoliciesByEntityParameters(LoadContext lc, MetaClass inputValueMetaClass) Apply constraints for query to select reports which have input parameter with class matching inputValueMetaClassvoidapplySecurityPolicies(LoadContext lc, String screen, org.springframework.security.core.userdetails.UserDetails userDetails) Apply security constraints for query to select reports available by roles and screen restrictionsgetAvailableReports(String screenId, org.springframework.security.core.userdetails.UserDetails user, MetaClass inputValueMetaClass) Returns a list of reports, available for certain screen, user and input parametergetAvailableReports(String screenId, org.springframework.security.core.userdetails.UserDetails user, MetaClass inputValueMetaClass, Sort sort) Returns a sorted list of reports, available for certain screen, user and input parameterprotected StringwrapCodeParameterForSearch(String value) 
- 
Field Details- 
queryTransformerFactory
- 
resourceRoleRepository
- 
roleAssignmentRepository
- 
fetchPlans
- 
metadata
- 
dataManager
 
- 
- 
Constructor Details- 
ReportSecurityManagerpublic ReportSecurityManager()
 
- 
- 
Method Details- 
applySecurityPoliciespublic void applySecurityPolicies(LoadContext lc, @Nullable String screen, @Nullable org.springframework.security.core.userdetails.UserDetails userDetails) Apply security constraints for query to select reports available by roles and screen restrictions- Parameters:
- lc- load context
- screen- screen id
- userDetails- user details
 
- 
applyPoliciesByEntityParameterspublic void applyPoliciesByEntityParameters(LoadContext lc, @Nullable MetaClass inputValueMetaClass) Apply constraints for query to select reports which have input parameter with class matching inputValueMetaClass- Parameters:
- lc- load context
- inputValueMetaClass- meta class of input parameter value
 
- 
getAvailableReportspublic List<Report> getAvailableReports(@Nullable String screenId, @Nullable org.springframework.security.core.userdetails.UserDetails user, @Nullable MetaClass inputValueMetaClass) Returns a list of reports, available for certain screen, user and input parameter- Parameters:
- screenId- - id of the screen
- user- - caller user
- inputValueMetaClass- - meta class of report input parameter
- Returns:
- list of available reports
 
- 
getAvailableReportspublic List<Report> getAvailableReports(@Nullable String screenId, @Nullable org.springframework.security.core.userdetails.UserDetails user, @Nullable MetaClass inputValueMetaClass, @Nullable Sort sort) Returns a sorted list of reports, available for certain screen, user and input parameter- Parameters:
- screenId- - id of the screen
- user- - caller user
- inputValueMetaClass- - meta class of report input parameter
- sort- - sorting type for the reports list
- Returns:
- list of available reports
 
- 
wrapCodeParameterForSearch
 
-