You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/01/08 14:37:02 UTC

[isis] branch master updated: ISIS-2158: ignore theme from cookie if not applicable

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 611409e  ISIS-2158: ignore theme from cookie if not applicable
611409e is described below

commit 611409ee1341ce9f84183642ab6d047b9fe32d72
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Jan 8 15:36:51 2020 +0100

    ISIS-2158: ignore theme from cookie if not applicable
    
    lesser warnings logged
---
 .../wicket/ui/components/widgets/themepicker/ThemeChooser.java   | 9 ++++++++-
 .../components/widgets/themepicker/ThemeProviderComposite.java   | 7 ++++++-
 examples/demo/src/main/java/demoapp/webapp/DemoApp.java          | 7 +------
 3 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeChooser.java b/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeChooser.java
index 1c5c458..e54dba3 100644
--- a/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeChooser.java
+++ b/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeChooser.java
@@ -35,6 +35,7 @@ import org.apache.isis.config.IsisConfiguration;
 import org.apache.isis.runtime.session.IsisSessionFactory;
 
 import lombok.Getter;
+import lombok.val;
 
 import de.agilecoders.wicket.core.Bootstrap;
 import de.agilecoders.wicket.core.settings.ActiveThemeProvider;
@@ -111,7 +112,13 @@ public class ThemeChooser extends Panel {
         CookieUtils cookieUtils = new CookieUtils();
         String activeTheme = cookieUtils.load(ISIS_THEME_COOKIE_NAME);
         if (!Strings.isEmpty(activeTheme)) {
-            setActiveTheme(activeTheme);
+            
+            val isAvailable = getThemeSupport().getThemeProvider().available().stream()
+                    .anyMatch(theme->activeTheme.equals(theme.name()));
+            
+            if(isAvailable) {
+                setActiveTheme(activeTheme);
+            }
         }
     }
 
diff --git a/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeProviderComposite.java b/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeProviderComposite.java
index 1410851..c764503 100644
--- a/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeProviderComposite.java
+++ b/core/viewers/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/widgets/themepicker/ThemeProviderComposite.java
@@ -28,6 +28,7 @@ import org.apache.wicket.util.string.Strings;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Maps;
+import org.apache.isis.commons.internal.exceptions._Exceptions;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
@@ -60,10 +61,14 @@ public class ThemeProviderComposite implements ThemeProvider {
                 return theme;
             }
         }
+        
+        _Exceptions.dumpStackTrace();
+        
+        
         log.warn("'{}' theme not found amoung providers {} provinding {}, "
                 + "using default '{}' instead", 
                 name, 
-                themeProviders, 
+                themeProviders.toList(), 
                 available().stream().map(ITheme::name).collect(Collectors.joining(", ")),
                 defaultTheme().name());
         
diff --git a/examples/demo/src/main/java/demoapp/webapp/DemoApp.java b/examples/demo/src/main/java/demoapp/webapp/DemoApp.java
index fb0a95a..3174851 100644
--- a/examples/demo/src/main/java/demoapp/webapp/DemoApp.java
+++ b/examples/demo/src/main/java/demoapp/webapp/DemoApp.java
@@ -69,11 +69,6 @@ public class DemoApp extends SpringBootServletInitializer {
      */
     public static void main(String[] args) {
         //IsisPresets.prototyping();
-        //IsisPresets.logging(IsisBeanScanInterceptorForSpring.class, "DEBUG");
-        //IsisPresets.logging(IsisBeanTypeRegistry.class, "DEBUG");
-        //IsisPresets.logging(org.apache.shiro.realm.AuthorizingRealm.class, "TRACE");
-        //IsisPresets.logging(org.apache.isis.metamodel.authorization.standard.AuthorizationFacetAbstract.class, "DEBUG");
-        //IsisPresets.logging(org.apache.isis.webapp.modules.templresources.TemplateResourceServlet.class, "DEBUG");
         SpringApplication.run(new Class[] { DemoApp.class }, args);
     }
 
@@ -107,7 +102,7 @@ public class DemoApp extends SpringBootServletInitializer {
 
         IsisModuleExtFixtures.class,
 
-        IsisModuleIncModelMetaModel.class, // @Supporting support (incubator)
+        IsisModuleIncModelMetaModel.class, // @Model support (incubator)
         
         LibraryPreloadingService.class // just a performance enhancement