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;
}