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/causeway-app-referenceapp.git


The following commit(s) were added to refs/heads/master by this push:
     new cda5efb  framework changes: tree adapter injection support
cda5efb is described below

commit cda5efbaea350e1fb3bdc6076cf2d0fd26289c8e
Author: andi-huber <[email protected]>
AuthorDate: Sun Mar 31 07:53:10 2024 +0200

    framework changes: tree adapter injection support
---
 .../properties/PropertyLayout/navigable/FileTreeNodeService.java  | 8 +++++---
 .../demoapp/dom/types/causeway/treenode/FileTreeNodeService.java  | 8 +++++---
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git 
a/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
 
b/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
index 0ee5e7b..417cf65 100644
--- 
a/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
+++ 
b/domain/src/main/java/demoapp/dom/domain/properties/PropertyLayout/navigable/FileTreeNodeService.java
@@ -29,6 +29,7 @@ import org.springframework.stereotype.Service;
 
 import org.apache.causeway.applib.graph.tree.TreeNode;
 import org.apache.causeway.applib.graph.tree.TreePath;
+import org.apache.causeway.applib.services.factory.FactoryService;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
@@ -41,13 +42,14 @@ import lombok.val;
 public class FileTreeNodeService {
 
     final Provider<HttpSession> httpSessionProvider;
+    final FactoryService factoryService;
 
     public TreeNode<FileNodeVm> sessionTree() {
         val session = httpSessionProvider.get();
         val cacheKey = TreeNode.class.getName();
         var tree = (TreeNode<FileNodeVm>) session.getAttribute(cacheKey);
         if(tree == null) {
-            tree = newTree();
+            tree = newTree(factoryService);
             session.setAttribute(cacheKey, tree);
         }
         return tree;
@@ -56,11 +58,11 @@ public class FileTreeNodeService {
 //end::sessionTree[]
 
 //tag::newTree[]
-    private static TreeNode<FileNodeVm> newTree() {
+    private static TreeNode<FileNodeVm> newTree(FactoryService factoryService) 
{
         TreeNode<FileNodeVm> tree;
         val rootFile = 
FileSystems.getDefault().getRootDirectories().iterator().next().toFile();
         val rootNode = new FileNodeVm(rootFile);
-        tree = TreeNode.root(rootNode, FileSystemTreeAdapter.class);
+        tree = TreeNode.root(rootNode, FileSystemTreeAdapter.class, 
factoryService);
         tree.expand(TreePath.of(0)); // expand the root node
         return tree;
     }
diff --git 
a/domain/src/main/java/demoapp/dom/types/causeway/treenode/FileTreeNodeService.java
 
b/domain/src/main/java/demoapp/dom/types/causeway/treenode/FileTreeNodeService.java
index 8f8670b..94a5023 100644
--- 
a/domain/src/main/java/demoapp/dom/types/causeway/treenode/FileTreeNodeService.java
+++ 
b/domain/src/main/java/demoapp/dom/types/causeway/treenode/FileTreeNodeService.java
@@ -29,6 +29,7 @@ import org.springframework.stereotype.Service;
 
 import org.apache.causeway.applib.graph.tree.TreeNode;
 import org.apache.causeway.applib.graph.tree.TreePath;
+import org.apache.causeway.applib.services.factory.FactoryService;
 
 import lombok.RequiredArgsConstructor;
 import lombok.val;
@@ -41,13 +42,14 @@ import lombok.val;
 public class FileTreeNodeService {
 
     final Provider<HttpSession> httpSessionProvider;
+    final FactoryService factoryService;
 
     public TreeNode<FileNodeVm> sessionTree() {
         val session = httpSessionProvider.get();
         val cacheKey = TreeNode.class.getName();
         var tree = (TreeNode<FileNodeVm>) session.getAttribute(cacheKey);
         if(tree == null) {
-            tree = newTree();
+            tree = newTree(factoryService);
             session.setAttribute(cacheKey, tree);
         }
         return tree;
@@ -56,11 +58,11 @@ public class FileTreeNodeService {
 //end::sessionTree[]
 
 //tag::newTree[]
-    private static TreeNode<FileNodeVm> newTree() {
+    private static TreeNode<FileNodeVm> newTree(FactoryService factoryService) 
{
         TreeNode<FileNodeVm> tree;
         val rootFile = 
FileSystems.getDefault().getRootDirectories().iterator().next().toFile();
         val rootNode = new FileNodeVm(rootFile);
-        tree = TreeNode.root(rootNode, FileSystemTreeAdapter.class);
+        tree = TreeNode.root(rootNode, FileSystemTreeAdapter.class, 
factoryService);
         tree.expand(TreePath.of(0)); // expand the root node
         return tree;
     }

Reply via email to