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

ahuber pushed a commit to branch dev/2.0.0/ISIS-1740-where-am-i
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 4f0a59b1b78f857056514b3f439e308ae8743441
Author: Andi Huber <ahu...@apache.org>
AuthorDate: Fri Oct 27 16:03:36 2017 +0200

    ISIS-1740 refactored method names, added javadoc
---
 .../model/models/whereami/WhereAmIModel.java       | 28 ++++++++++++++++++----
 .../models/whereami/WhereAmIModelDefault.java      | 24 +++++++++----------
 .../viewer/wicket/ui/pages/entity/EntityPage.java  |  4 ++--
 3 files changed, 38 insertions(+), 18 deletions(-)

diff --git 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModel.java
 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModel.java
index 7ecfba0..fdc11f2 100644
--- 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModel.java
+++ 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModel.java
@@ -23,16 +23,36 @@ import java.util.stream.Stream;
 
 import org.apache.isis.viewer.wicket.model.models.EntityModel;
 
+/**
+ * Represents a navigable chain of parent nodes starting at the current node. 
+ * 
+ * @author a.hu...@corax.at
+ * 
+ * @since 2.0.0
+ *
+ */
 public interface WhereAmIModel {
 
-       public static WhereAmIModel of(EntityModel endOfChain) {
-               return new WhereAmIModelDefault(endOfChain);
+       public static WhereAmIModel of(EntityModel startOfChain) {
+               return new WhereAmIModelDefault(startOfChain);
        }
 
+       /**
+        * The navigable parent chain requires a minimum length of 2 in order 
to be shown.
+        * @return whether the where-am-I hint should be shown or hidden
+        */
        public boolean isShowWhereAmI();
        
-       public Stream<EntityModel> streamParentChain();
+       /**
+        * Streams the linked nodes of this model's navigable parent chain in 
reverse order.
+        * @return reversed order stream of linked parent nodes, which does not 
include the start node
+        */
+       public Stream<EntityModel> streamParentChainReversed();
        
-       public EntityModel getEndOfChain();
+       /**
+        *  
+        * @return the immutable start node of the navigable parent chain
+        */
+       public EntityModel getStartOfChain();
        
 }
diff --git 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModelDefault.java
 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModelDefault.java
index b3f6679..955c2db 100644
--- 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModelDefault.java
+++ 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/whereami/WhereAmIModelDefault.java
@@ -28,32 +28,32 @@ import 
org.apache.isis.viewer.wicket.model.models.EntityModel;
 
 class WhereAmIModelDefault implements WhereAmIModel {
 
-       private final List<Object> chainOfParents = new ArrayList<>();
-       private final EntityModel endOfChain;
+       private final List<Object> reversedChainOfParents = new ArrayList<>();
+       private final EntityModel startOfChain;
        
-       public WhereAmIModelDefault(EntityModel endOfChain) {
-               this.endOfChain = endOfChain;
+       public WhereAmIModelDefault(EntityModel startOfChain) {
+               this.startOfChain = startOfChain;
                
-               final Object startPojo = endOfChain.getObject().getObject();
+               final Object startPojo = startOfChain.getObject().getObject();
 
                ParentChain.caching()
                .streamReversedParentChainOf(startPojo)
-               .forEach(chainOfParents::add);
+               .forEach(reversedChainOfParents::add);
        }
        
        @Override
-       public EntityModel getEndOfChain() {
-               return endOfChain;
+       public EntityModel getStartOfChain() {
+               return startOfChain;
        }
        
        @Override
        public boolean isShowWhereAmI() {
-               return !chainOfParents.isEmpty();
+               return !reversedChainOfParents.isEmpty();
        }
 
        @Override
-       public Stream<EntityModel> streamParentChain() {
-               return chainOfParents.stream()
+       public Stream<EntityModel> streamParentChainReversed() {
+               return reversedChainOfParents.stream()
                .map(this::toEntityModel);
        }
        
@@ -61,7 +61,7 @@ class WhereAmIModelDefault implements WhereAmIModel {
 
        private EntityModel toEntityModel(Object domainObject) {
                return new EntityModel(
-                               endOfChain.getPersistenceSession()
+                               startOfChain.getPersistenceSession()
                                .adapterFor(domainObject)       );
        }
        
diff --git 
a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
 
b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
index 2055c4a..271edb6 100644
--- 
a/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
+++ 
b/core/viewer-wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/pages/entity/EntityPage.java
@@ -225,11 +225,11 @@ public class EntityPage extends PageAbstract {
        
        final RepeatingView listItems = new RepeatingView("whereAmI-items");
        
-       whereAmIModel.streamParentChain().forEach(entityModel->
+       whereAmIModel.streamParentChainReversed().forEach(entityModel->
                listItems.add(new 
EntityIconAndTitlePanel(listItems.newChildId(), entityModel)) 
                );
        
-       listItems.add(new Label(listItems.newChildId(), 
whereAmIModel.getEndOfChain().getTitle()));
+       listItems.add(new Label(listItems.newChildId(), 
whereAmIModel.getStartOfChain().getTitle()));
        
        whereAmIContainer.addOrReplace(listItems);
        

-- 
To stop receiving notification emails like this one, please contact
"commits@isis.apache.org" <commits@isis.apache.org>.

Reply via email to