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 2021/09/04 13:50:55 UTC

[isis] branch master updated: ISIS-2864: fixes build (type inference issue)

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 ef8bb19  ISIS-2864: fixes build (type inference issue)
ef8bb19 is described below

commit ef8bb197336cbe000f438d57a7eee5e528040420
Author: andi-huber <ah...@apache.org>
AuthorDate: Sat Sep 4 15:50:44 2021 +0200

    ISIS-2864: fixes build (type inference issue)
---
 .../PropertyLayout/navigable/FileTreeNodeService.java | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
index f600eaf..4bb7074 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
+++ b/examples/demo/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
@@ -19,7 +19,6 @@
 package demoapp.dom.domain.properties.PropertyLayout.navigable;
 
 import java.nio.file.FileSystems;
-import java.util.Optional;
 
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -34,6 +33,7 @@ import org.apache.isis.applib.graph.tree.TreePath;
 import lombok.RequiredArgsConstructor;
 import lombok.val;
 
+@SuppressWarnings("unchecked")
 //tag::sessionTree[]
 @Service
 @Named("demo.FileTreeNodeService")
@@ -44,17 +44,14 @@ public class FileTreeNodeService {
 
     public TreeNode<FileNodeVm> sessionTree() {
         val session = httpSessionProvider.get();
-        val key = TreeNode.class.getName();
+        val cacheKey = TreeNode.class.getName();
+        var tree = (TreeNode<FileNodeVm>) session.getAttribute(cacheKey);
+        if(tree == null) {
+            tree = newTree();
+            session.setAttribute(cacheKey, tree);
+        }
+        return tree;
 
-        return Optional
-            .ofNullable(session.getAttribute(key))
-            .map(TreeNode.class::isInstance)
-            .<TreeNode<FileNodeVm>>map(TreeNode.class::cast)
-            .orElseGet(()->{
-                val tree = newTree();
-                session.setAttribute(key, tree);
-                return tree;
-            });
     }
 //end::sessionTree[]