You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/09/14 10:53:29 UTC

[2/2] isis git commit: ISIS-1717: adds new /logout page (for monitoring apps).

ISIS-1717: adds new /logout page (for monitoring apps).


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/234798ed
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/234798ed
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/234798ed

Branch: refs/heads/master
Commit: 234798ed6269a361d90dc7c27966081f8f5ba23e
Parents: fbbc83d
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu Sep 14 11:43:52 2017 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Sep 14 11:43:52 2017 +0100

----------------------------------------------------------------------
 .../wicket/viewer/IsisWicketApplication.java    |  3 ++
 .../wicket/ui/pages/login/WicketLogoutPage.java | 48 ++++++++++++++++++++
 2 files changed, 51 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/234798ed/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
index 3b95303..6719fcd 100644
--- a/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
+++ b/core/viewer-wicket-impl/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketApplication.java
@@ -109,6 +109,7 @@ import org.apache.isis.viewer.wicket.ui.components.widgets.select2.Select2JsRefe
 import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistry;
 import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistryAccessor;
 import org.apache.isis.viewer.wicket.ui.pages.accmngt.AccountConfirmationMap;
+import org.apache.isis.viewer.wicket.ui.pages.login.WicketLogoutPage;
 import org.apache.isis.viewer.wicket.ui.panels.PanelUtil;
 import org.apache.isis.viewer.wicket.viewer.integration.isis.DeploymentTypeWicketAbstract;
 import org.apache.isis.viewer.wicket.viewer.integration.isis.WicketServer;
@@ -784,6 +785,8 @@ public class IsisWicketApplication
         // nb: action mount cannot contain {actionArgs}, because the default
         // parameters encoder doesn't seem to be able to handle multiple args
         mountPage("/action/${objectOid}/${actionOwningSpec}/${actionId}/${actionType}", PageType.ACTION_PROMPT);
+
+        mountPage("/logout", WicketLogoutPage.class);
     }
 
     protected void mountPage(final String mountPath, final PageType pageType) {

http://git-wip-us.apache.org/repos/asf/isis/blob/234798ed/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketLogoutPage.java
----------------------------------------------------------------------
diff --git a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketLogoutPage.java b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketLogoutPage.java
new file mode 100644
index 0000000..93657e5
--- /dev/null
+++ b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/login/WicketLogoutPage.java
@@ -0,0 +1,48 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.viewer.wicket.ui.pages.login;
+
+import org.apache.wicket.Page;
+import org.apache.wicket.markup.html.WebPage;
+
+import org.apache.isis.viewer.wicket.model.models.PageType;
+import org.apache.isis.viewer.wicket.ui.pages.PageClassRegistry;
+
+public class WicketLogoutPage extends WebPage {
+
+    private static final long serialVersionUID = 1L;
+
+    public WicketLogoutPage() {
+        getSession().invalidate();
+        setResponsePage(getSignInPage());
+    }
+
+
+    private Class<? extends Page> getSignInPage() {
+        return pageClassRegistry.getPageClass(PageType.SIGN_IN);
+    }
+
+    /**
+     * {@link com.google.inject.Inject}ed when {@link #init() initialized}.
+     */
+    @com.google.inject.Inject
+    PageClassRegistry pageClassRegistry;
+
+}