1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.client.console.wizards.any;
20
21 import org.apache.syncope.client.console.SyncopeWebApplication;
22 import org.apache.syncope.client.ui.commons.wizards.any.AbstractResources;
23 import org.apache.syncope.client.ui.commons.wizards.any.AnyWrapper;
24 import org.apache.syncope.common.lib.to.AnyTO;
25 import org.apache.syncope.common.lib.types.IdMEntitlement;
26 import org.apache.wicket.authroles.authorization.strategies.role.metadata.ActionPermissions;
27 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
28
29 public class Resources extends AbstractResources {
30
31 private static final long serialVersionUID = 702900610508752856L;
32
33 public <T extends AnyTO> Resources(final AnyWrapper<T> modelObject) {
34 super(modelObject);
35
36
37
38
39 final ActionPermissions permissions = new ActionPermissions();
40 setMetaData(MetaDataRoleAuthorizationStrategy.ACTION_PERMISSIONS, permissions);
41 permissions.authorize(RENDER,
42 new org.apache.wicket.authroles.authorization.strategies.role.Roles(IdMEntitlement.RESOURCE_LIST));
43
44 }
45
46 @Override
47 public boolean evaluate() {
48 if (SyncopeWebApplication.get().getSecuritySettings().
49 getAuthorizationStrategy().isActionAuthorized(this, RENDER)) {
50 available.setObject(SyncopeWebApplication.get().getResourceProvider().get());
51 return !available.getObject().isEmpty();
52 } else {
53 return false;
54 }
55 }
56 }