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.clientapps;
20
21 import java.util.List;
22 import org.apache.commons.lang3.StringUtils;
23 import org.apache.syncope.client.console.rest.ClientAppRestClient;
24 import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.BooleanConditionColumn;
25 import org.apache.syncope.common.lib.to.OIDCRPClientAppTO;
26 import org.apache.syncope.common.lib.types.AMEntitlement;
27 import org.apache.syncope.common.lib.types.ClientAppType;
28 import org.apache.wicket.PageReference;
29 import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy;
30 import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
31 import org.apache.wicket.extensions.markup.html.repeater.data.table.PropertyColumn;
32 import org.apache.wicket.model.IModel;
33 import org.apache.wicket.model.StringResourceModel;
34
35 public class OIDCRPDirectoryPanel extends ClientAppDirectoryPanel<OIDCRPClientAppTO> {
36
37 private static final long serialVersionUID = -9182884609300468766L;
38
39 public OIDCRPDirectoryPanel(final String id, final ClientAppRestClient restClient, final PageReference pageRef) {
40 super(id, restClient, ClientAppType.OIDCRP, pageRef);
41
42 OIDCRPClientAppTO defaultItem = new OIDCRPClientAppTO();
43
44 addNewItemPanelBuilder(new ClientAppModalPanelBuilder<>(
45 ClientAppType.OIDCRP,
46 defaultItem,
47 modal,
48 policyRestClient,
49 clientAppRestClient,
50 realmRestClient,
51 pageRef),
52 true);
53 MetaDataRoleAuthorizationStrategy.authorize(addAjaxLink, RENDER, AMEntitlement.CLIENTAPP_CREATE);
54
55 initResultTable();
56 }
57
58 @Override
59 protected void addCustomColumnFields(final List<IColumn<OIDCRPClientAppTO, String>> columns) {
60 columns.add(new PropertyColumn<>(new StringResourceModel("clientId", this), "clientId", "clientId"));
61 columns.add(new PropertyColumn<>(
62 new StringResourceModel("redirectUris", this), "redirectUris", "redirectUris"));
63 columns.add(new BooleanConditionColumn<>(new StringResourceModel("logout")) {
64
65 private static final long serialVersionUID = -8236820422411536323L;
66
67 @Override
68 protected boolean isCondition(final IModel<OIDCRPClientAppTO> rowModel) {
69 return StringUtils.isNotBlank(rowModel.getObject().getLogoutUri());
70 }
71 });
72 }
73 }