Revision d00d2a84
Added by Katja Luther almost 13 years ago
cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ServiceBase.java | ||
---|---|---|
22 | 22 |
import org.hibernate.Session; |
23 | 23 |
import org.springframework.context.ApplicationContext; |
24 | 24 |
import org.springframework.context.ApplicationContextAware; |
25 |
import org.springframework.security.core.Authentication; |
|
25 | 26 |
import org.springframework.transaction.annotation.Transactional; |
26 | 27 |
|
27 | 28 |
import eu.etaxonomy.cdm.api.service.pager.Pager; |
28 | 29 |
import eu.etaxonomy.cdm.api.service.pager.impl.DefaultPagerImpl; |
29 | 30 |
import eu.etaxonomy.cdm.model.common.CdmBase; |
31 |
import eu.etaxonomy.cdm.permission.CdmPermission; |
|
32 |
import eu.etaxonomy.cdm.permission.CdmPermissionEvaluator; |
|
30 | 33 |
import eu.etaxonomy.cdm.persistence.dao.common.ICdmEntityDao; |
31 | 34 |
import eu.etaxonomy.cdm.persistence.query.Grouping; |
32 | 35 |
import eu.etaxonomy.cdm.persistence.query.OrderHint; |
... | ... | |
178 | 181 |
public List<T> list(T example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) { |
179 | 182 |
return dao.list(example, includeProperties, limit, start, orderHints, propertyPaths); |
180 | 183 |
} |
184 |
|
|
185 |
@Transactional(readOnly = true) |
|
186 |
public boolean hasPermission(Authentication authentication, T target, CdmPermission permission) { |
|
187 |
CdmPermissionEvaluator permissionEvaluator = new CdmPermissionEvaluator(); |
|
188 |
return permissionEvaluator.hasPermission(authentication, target, permission); |
|
189 |
|
|
190 |
} |
|
181 | 191 |
} |
Also available in: Unified diff
bugfix in getAuthorities()
new Service for evaluate a permission
add permission evaluation for changing password