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.pages;
20
21 import org.apache.syncope.client.console.BookmarkablePageLinkBuilder;
22 import org.apache.syncope.client.console.panels.MultilevelPanel;
23 import org.apache.syncope.client.console.reports.ReportDirectoryPanel;
24 import org.apache.syncope.client.console.reports.ReportExecutionDetails;
25 import org.apache.syncope.client.console.rest.ReportRestClient;
26 import org.apache.syncope.common.lib.to.ReportTO;
27 import org.apache.wicket.ajax.AjaxRequestTarget;
28 import org.apache.wicket.markup.html.WebMarkupContainer;
29 import org.apache.wicket.model.Model;
30 import org.apache.wicket.model.StringResourceModel;
31 import org.apache.wicket.request.mapper.parameter.PageParameters;
32 import org.apache.wicket.spring.injection.annot.SpringBean;
33
34 public class Reports extends BasePage {
35
36 private static final long serialVersionUID = -1100228004207271271L;
37
38 @SpringBean
39 protected ReportRestClient reportRestClient;
40
41 public Reports(final PageParameters parameters) {
42 super(parameters);
43
44 body.add(BookmarkablePageLinkBuilder.build("dashboard", "dashboardBr", Dashboard.class));
45
46 WebMarkupContainer content = new WebMarkupContainer("content");
47 content.setOutputMarkupId(true);
48 content.setMarkupId("reports");
49 body.add(content);
50
51 MultilevelPanel reportsPanel = new MultilevelPanel("reportsPanel");
52 reportsPanel.setFirstLevel(new ReportDirectoryPanel(reportRestClient, getPageReference()) {
53
54 private static final long serialVersionUID = -2195387360323687302L;
55
56 @Override
57 protected void viewReportExecs(final ReportTO reportTO, final AjaxRequestTarget target) {
58 reportsPanel.next(
59 new StringResourceModel("report.view", this, new Model<>(reportTO)).getObject(),
60 new ReportExecutionDetails(reportTO, getPageReference()),
61 target);
62 }
63 });
64 content.add(reportsPanel);
65 }
66 }