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.commons;
20
21 import java.util.ArrayList;
22 import java.util.List;
23 import org.apache.syncope.client.console.policies.PropagationPolicyDirectoryPanel;
24 import org.apache.syncope.client.console.policies.PullPolicyDirectoryPanel;
25 import org.apache.syncope.client.console.policies.PushPolicyDirectoryPanel;
26 import org.apache.syncope.client.console.rest.PolicyRestClient;
27 import org.apache.wicket.PageReference;
28 import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
29 import org.apache.wicket.extensions.markup.html.tabs.ITab;
30 import org.apache.wicket.markup.html.panel.Panel;
31 import org.apache.wicket.model.ResourceModel;
32
33 public class IdMPolicyTabProvider implements PolicyTabProvider {
34
35 private static final long serialVersionUID = 2822554006571803418L;
36
37 protected final PolicyRestClient policyRestClient;
38
39 public IdMPolicyTabProvider(final PolicyRestClient policyRestClient) {
40 this.policyRestClient = policyRestClient;
41 }
42
43 @Override
44 public List<ITab> buildTabList(final PageReference pageRef) {
45 List<ITab> tabs = new ArrayList<>();
46
47 tabs.add(new AbstractTab(new ResourceModel("policy.propagation")) {
48
49 private static final long serialVersionUID = -6815067322125799251L;
50
51 @Override
52 public Panel getPanel(final String panelId) {
53 return new PropagationPolicyDirectoryPanel(panelId, policyRestClient, pageRef);
54 }
55 });
56
57 tabs.add(new AbstractTab(new ResourceModel("policy.pull")) {
58
59 private static final long serialVersionUID = -6815067322125799251L;
60
61 @Override
62 public Panel getPanel(final String panelId) {
63 return new PullPolicyDirectoryPanel(panelId, policyRestClient, pageRef);
64 }
65 });
66
67 tabs.add(new AbstractTab(new ResourceModel("policy.push")) {
68
69 private static final long serialVersionUID = -6815067322125799251L;
70
71 @Override
72 public Panel getPanel(final String panelId) {
73 return new PushPolicyDirectoryPanel(panelId, policyRestClient, pageRef);
74 }
75 });
76
77 return tabs;
78 }
79 }