You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2016/05/06 16:33:26 UTC
syncope git commit: [SYNCOPE-745] Export internal storage
configuration as XML
Repository: syncope
Updated Branches:
refs/heads/master 7dc7ddae7 -> 2144363e6
[SYNCOPE-745] Export internal storage configuration as XML
Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/2144363e
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/2144363e
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/2144363e
Branch: refs/heads/master
Commit: 2144363e60f5bbbc29b6dce4bf1190c2d9868232
Parents: 7dc7dda
Author: Francesco Chicchiricc� <il...@apache.org>
Authored: Fri May 6 18:33:17 2016 +0200
Committer: Francesco Chicchiricc� <il...@apache.org>
Committed: Fri May 6 18:33:17 2016 +0200
----------------------------------------------------------------------
.../syncope/client/console/pages/BasePage.java | 40 +++++++++++
.../client/console/widgets/LoadWidget.java | 5 --
.../syncope/client/console/pages/BasePage.html | 71 ++++++++++++++++++++
.../client/console/pages/BasePage.properties | 5 ++
.../client/console/pages/BasePage_it.properties | 5 ++
.../console/pages/BasePage_pt_BR.properties | 5 ++
.../client/console/pages/BasePage_ru.properties | 11 ++-
.../console/panels/DashboardOverviewPanel.html | 10 +--
.../client/console/widgets/LoadWidget.html | 10 ---
.../cxf/service/ConfigurationServiceImpl.java | 7 +-
10 files changed, 144 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java b/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
index c5797db..b9cbe61 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/pages/BasePage.java
@@ -25,16 +25,21 @@ import org.apache.syncope.client.console.BookmarkablePageLinkBuilder;
import org.apache.syncope.client.console.SyncopeConsoleApplication;
import org.apache.syncope.client.console.SyncopeConsoleSession;
import org.apache.syncope.client.console.annotations.ExtPage;
+import org.apache.syncope.client.console.commons.Constants;
+import org.apache.syncope.client.console.commons.HttpResourceStream;
import org.apache.syncope.client.console.init.ClassPathScanImplementationLookup;
import org.apache.syncope.client.console.init.ConsoleInitializer;
import org.apache.syncope.client.console.panels.NotificationPanel;
+import org.apache.syncope.client.console.rest.ConfigurationRestClient;
import org.apache.syncope.client.console.topology.Topology;
import org.apache.syncope.client.console.wicket.markup.head.MetaHeaderItem;
import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal;
import org.apache.syncope.client.console.widgets.ApprovalsWidget;
import org.apache.syncope.client.console.widgets.JobWidget;
import org.apache.syncope.client.console.widgets.ReconciliationWidget;
+import org.apache.syncope.common.lib.info.SystemInfo;
import org.apache.syncope.common.lib.types.StandardEntitlement;
+import org.apache.syncope.common.rest.api.service.SyncopeService;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.Component;
import org.apache.wicket.Page;
@@ -53,11 +58,14 @@ import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
+import org.apache.wicket.markup.html.link.Link;
import org.apache.wicket.markup.html.list.ListItem;
import org.apache.wicket.markup.html.list.ListView;
import org.apache.wicket.protocol.ws.api.WebSocketBehavior;
import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
+import org.apache.wicket.request.handler.resource.ResourceStreamRequestHandler;
import org.apache.wicket.request.mapper.parameter.PageParameters;
+import org.apache.wicket.request.resource.ContentDisposition;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -125,6 +133,38 @@ public class BasePage extends WebPage implements IAjaxIndicatorAware {
body.add(new ApprovalsWidget("approvalsWidget", getPageReference()).setRenderBodyOnly(true));
+ // right sidebar
+ SystemInfo systemInfo = SyncopeConsoleSession.get().getService(SyncopeService.class).system();
+ body.add(new Label("hostname", systemInfo.getHostname()));
+ body.add(new Label("processors", systemInfo.getAvailableProcessors()));
+ body.add(new Label("os", systemInfo.getOs()));
+ body.add(new Label("jvm", systemInfo.getJvm()));
+
+ Link<Void> dbExportLink = new Link<Void>("dbExportLink") {
+
+ private static final long serialVersionUID = -4331619903296515985L;
+
+ @Override
+ public void onClick() {
+ try {
+ HttpResourceStream stream = new HttpResourceStream(new ConfigurationRestClient().dbExport());
+
+ ResourceStreamRequestHandler rsrh = new ResourceStreamRequestHandler(stream);
+ rsrh.setFileName(stream.getFilename() == null
+ ? SyncopeConsoleSession.get().getDomain() + "Content.xml"
+ : stream.getFilename());
+ rsrh.setContentDisposition(ContentDisposition.ATTACHMENT);
+
+ getRequestCycle().scheduleRequestHandlerAfterCurrent(rsrh);
+ } catch (Exception e) {
+ error(getString(Constants.ERROR) + ": " + e.getMessage());
+ }
+ }
+ };
+ MetaDataRoleAuthorizationStrategy.authorize(
+ dbExportLink, WebPage.ENABLE, StandardEntitlement.CONFIGURATION_EXPORT);
+ body.add(dbExportLink);
+
// menu
WebMarkupContainer liContainer = new WebMarkupContainer(getLIContainerId("dashboard"));
body.add(liContainer);
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/java/org/apache/syncope/client/console/widgets/LoadWidget.java
----------------------------------------------------------------------
diff --git a/client/console/src/main/java/org/apache/syncope/client/console/widgets/LoadWidget.java b/client/console/src/main/java/org/apache/syncope/client/console/widgets/LoadWidget.java
index c9f95e1..835fd58 100644
--- a/client/console/src/main/java/org/apache/syncope/client/console/widgets/LoadWidget.java
+++ b/client/console/src/main/java/org/apache/syncope/client/console/widgets/LoadWidget.java
@@ -25,7 +25,6 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.syncope.common.lib.info.SystemInfo;
-import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.Model;
public class LoadWidget extends BaseWidget {
@@ -38,10 +37,6 @@ public class LoadWidget extends BaseWidget {
super(id);
setOutputMarkupId(true);
- add(new Label("hostname", systeminfo.getHostname()));
- add(new Label("os", systeminfo.getOs()));
- add(new Label("jvm", systeminfo.getJvm()));
-
chart = new LineChartPanel("chart", Model.of(build(systeminfo)));
add(chart);
}
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
index d2eb696..d4d0343 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.html
@@ -85,6 +85,10 @@ under the License.
</li>
</ul>
</li>
+
+ <li>
+ <a data-toggle="control-sidebar" href="#"><i class="fa fa-gears"></i></a>
+ </li>
</ul>
</div>
</nav>
@@ -140,6 +144,73 @@ under the License.
All rights reserved.
</footer>
+ <aside class="control-sidebar control-sidebar-dark">
+ <div class="tab-content tab-pane">
+ <h3 class="control-sidebar-heading"><wicket:message key="systemInfo"/></h3>
+ <ul class="control-sidebar-menu">
+ <li>
+ <a href="#">
+ <i class="menu-icon fa fa-desktop bg-aqua"></i>
+
+ <div class="menu-info">
+ <h4 class="control-sidebar-subheading"><wicket:message key="hostname"/></h4>
+
+ <p><span wicket:id="hostname"/></p>
+ </div>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <i class="menu-icon fa fa-calculator bg-green"></i>
+
+ <div class="menu-info">
+ <h4 class="control-sidebar-subheading"><wicket:message key="processors"/></h4>
+
+ <p><span wicket:id="processors"/></p>
+ </div>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <i class="menu-icon fa fa-car bg-yellow"></i>
+
+ <div class="menu-info">
+ <h4 class="control-sidebar-subheading"><wicket:message key="os"/></h4>
+
+ <p><span wicket:id="os"/></p>
+ </div>
+ </a>
+ </li>
+ <li>
+ <a href="#">
+ <i class="menu-icon fa fa-bar-chart bg-light-blue"></i>
+
+ <div class="menu-info">
+ <h4 class="control-sidebar-subheading"><wicket:message key="jvm"/></h4>
+
+ <p><span wicket:id="jvm"/></p>
+ </div>
+ </a>
+ </li>
+ </ul>
+ <!-- /.control-sidebar-menu -->
+
+ <h3 class="control-sidebar-heading">Export Configuration</h3>
+ <ul class="control-sidebar-menu">
+ <li>
+ <a wicket:id="dbExportLink">
+ <i class="menu-icon fa fa-download bg-red"></i>
+
+ <div class="menu-info">
+ <h4 class="control-sidebar-subheading">Download</h4>
+ </div>
+ </a>
+ </li>
+ </ul>
+ <!-- /.control-sidebar-menu -->
+ </div>
+ </aside>
+ <div class="control-sidebar-bg" style="position: fixed; height: auto;"></div>
</div>
<div id="veil">
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.properties
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.properties b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.properties
index 9a12bae..98cee66 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.properties
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage.properties
@@ -18,3 +18,8 @@ home=Home
version=VERSION
domain=Domain
+systemInfo=System Information
+hostname=Host Name
+processors=Available Processors
+os=Operating System
+jvm=JVM
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_it.properties
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_it.properties b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_it.properties
index 04f4225..41b982a 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_it.properties
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_it.properties
@@ -18,3 +18,8 @@ home=Home
version=VERSIONE
domain=Dom\u00ednio
+systemInfo=Informazioni di Sistema
+hostname=Nome Host
+processors=Processori Disponibili
+os=Sistema Operativo
+jvm=JVM
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_pt_BR.properties
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_pt_BR.properties b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_pt_BR.properties
index b5bdaf3..2a84a71 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_pt_BR.properties
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_pt_BR.properties
@@ -18,3 +18,8 @@ home=In\u00edcio
version=VERS\u00c3O
domain=Domain
+systemInfo=System Information
+hostname=Host Name
+processors=Available Processors
+os=Operating System
+jvm=JVM
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_ru.properties
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_ru.properties b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_ru.properties
index 42384fc..cf5ee30 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_ru.properties
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/pages/BasePage_ru.properties
@@ -15,9 +15,14 @@
# specific language governing permissions and limitations
# under the License.
#
-# home=\u0413\u043b\u0430\u0432\u043d\u0430\u044f
+# home=\u00d0\u0093\u00d0\u00bb\u00d0\u00b0\u00d0\u00b2\u00d0\u00bd\u00d0\u00b0\u00d1\u008f
home=\u0413\u043b\u0430\u0432\u043d\u0430\u044f
-# version=\u0412\u0415\u0420\u0421\u0418\u042f
+# version=\u00d0\u0092\u00d0\u0095\u00d0\u00a0\u00d0\u00a1\u00d0\u0098\u00d0\u00af
version=\u0412\u0415\u0420\u0421\u0418\u042f
-# domain=\u0414\u043e\u043c\u0435\u043d
+# domain=\u00d0\u0094\u00d0\u00be\u00d0\u00bc\u00d0\u00b5\u00d0\u00bd
domain=\u0414\u043e\u043c\u0435\u043d
+systemInfo=System Information
+hostname=Host Name
+processors=Available Processors
+os=Operating System
+jvm=JVM
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/panels/DashboardOverviewPanel.html
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/panels/DashboardOverviewPanel.html b/client/console/src/main/resources/org/apache/syncope/client/console/panels/DashboardOverviewPanel.html
index 7d652b3..3c7f82e 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/panels/DashboardOverviewPanel.html
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/panels/DashboardOverviewPanel.html
@@ -27,19 +27,19 @@ under the License.
</div>
<div class="row">
- <div class="col-md-4">
- <span wicket:id="usersByStatus"/>
- </div>
- <div class="col-md-4">
+ <div class="col-md-6">
<span wicket:id="completeness"/>
</div>
- <div class="col-md-4">
+ <div class="col-md-6">
<span wicket:id="load"/>
</div>
</div>
<div class="row">
<div class="col-md-6">
+ <span wicket:id="usersByStatus"/>
+ </div>
+ <div class="col-md-6">
<span wicket:id="anyByRealm"/>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/client/console/src/main/resources/org/apache/syncope/client/console/widgets/LoadWidget.html
----------------------------------------------------------------------
diff --git a/client/console/src/main/resources/org/apache/syncope/client/console/widgets/LoadWidget.html b/client/console/src/main/resources/org/apache/syncope/client/console/widgets/LoadWidget.html
index 8ce2e9f..1d47995 100644
--- a/client/console/src/main/resources/org/apache/syncope/client/console/widgets/LoadWidget.html
+++ b/client/console/src/main/resources/org/apache/syncope/client/console/widgets/LoadWidget.html
@@ -22,16 +22,6 @@ under the License.
<div class="box-header with-border">
<h3 class="box-title"><wicket:message key="systemLoad"/></h3>
<div class="box-tools pull-right">
- <div class="btn-group">
- <button class="btn btn-box-tool dropdown-toggle" data-toggle="dropdown">
- <i class="fa fa-info"></i>
- </button>
- <ul class="dropdown-menu" role="menu">
- <li><a href="#"><span wicket:id="hostname"/></a></li>
- <li><a href="#"><span wicket:id="os"/></a></li>
- <li><a href="#"><span wicket:id="jvm"/></a></li>
- </ul>
- </div>
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/syncope/blob/2144363e/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConfigurationServiceImpl.java
----------------------------------------------------------------------
diff --git a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConfigurationServiceImpl.java b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConfigurationServiceImpl.java
index 1a6dac7..8c8473d 100644
--- a/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConfigurationServiceImpl.java
+++ b/core/rest-cxf/src/main/java/org/apache/syncope/core/rest/cxf/service/ConfigurationServiceImpl.java
@@ -28,13 +28,14 @@ import javax.ws.rs.core.StreamingOutput;
import org.apache.syncope.common.lib.to.AttrTO;
import org.apache.syncope.common.rest.api.service.ConfigurationService;
import org.apache.syncope.core.logic.ConfigurationLogic;
+import org.apache.syncope.core.spring.security.AuthContextUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class ConfigurationServiceImpl extends AbstractServiceImpl implements ConfigurationService {
- private static final String CONTENT_XML = "content.xml";
+ private static final String CONTENT_XML = "Content.xml";
@Autowired
private ConfigurationLogic logic;
@@ -50,7 +51,9 @@ public class ConfigurationServiceImpl extends AbstractServiceImpl implements Con
};
return Response.ok(sout).
type(MediaType.TEXT_XML).
- header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=" + CONTENT_XML).
+ header(
+ HttpHeaders.CONTENT_DISPOSITION,
+ "attachment; filename=" + AuthContextUtils.getDomain() + CONTENT_XML).
build();
}