You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2012/11/21 20:18:35 UTC
svn commit: r1412233 - in
/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo:
NavigationState.java NavigationTree.java
Author: lofwyr
Date: Wed Nov 21 19:18:34 2012
New Revision: 1412233
URL: http://svn.apache.org/viewvc?rev=1412233&view=rev
Log:
demo: JSP version + robustness
Modified:
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java?rev=1412233&r1=1412232&r2=1412233&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationState.java Wed Nov 21 19:18:34 2012
@@ -68,22 +68,30 @@ public class NavigationState implements
}
public String gotoPrevious() {
- final NavigationNode previousNode = currentNode.getPreviousNode();
- if (previousNode != null) {
- return gotoNode(previousNode);
+ if (currentNode == null) {
+ return gotoFirst();
} else {
- LOG.warn("Strange navigation behavior");
- return null;
+ final NavigationNode previousNode = currentNode.getPreviousNode();
+ if (previousNode != null) {
+ return gotoNode(previousNode);
+ } else {
+ LOG.warn("Strange navigation behavior");
+ return null;
+ }
}
}
public String gotoNext() {
- final NavigationNode nextNode = currentNode.getNextNode();
- if (nextNode != null) {
- return gotoNode(nextNode);
+ if (currentNode == null) {
+ return gotoFirst();
} else {
- LOG.warn("Strange navigation behavior");
- return null;
+ final NavigationNode nextNode = currentNode.getNextNode();
+ if (nextNode != null) {
+ return gotoNode(nextNode);
+ } else {
+ LOG.warn("Strange navigation behavior");
+ return null;
+ }
}
}
@@ -92,18 +100,28 @@ public class NavigationState implements
}
public String gotoNode(NavigationNode node) {
- currentNode = node;
- initState();
- LOG.info("Navigate to '" + currentNode.getOutcome() + "'");
- return currentNode.getOutcome();
+ if (node == null) {
+ return gotoFirst();
+ } else {
+ currentNode = node;
+ initState();
+ LOG.info("Navigate to '" + currentNode.getOutcome() + "'");
+ return currentNode.getOutcome();
+ }
}
public boolean isFirst() {
+ if (currentNode == null) {
+ return false;
+ }
final NavigationNode previousNode = currentNode.getPreviousNode();
return previousNode == null || previousNode.isRoot();
}
public boolean isLast() {
+ if (currentNode == null) {
+ return false;
+ }
final NavigationNode nextNode = currentNode.getNextNode();
return nextNode == null;
}
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java?rev=1412233&r1=1412232&r2=1412233&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/NavigationTree.java Wed Nov 21 19:18:34 2012
@@ -130,6 +130,9 @@ public class NavigationTree implements S
}
public NavigationNode findByViewId(String viewId) {
+ if (viewId.endsWith(".jspx")) {
+ viewId = viewId.substring(0, viewId.lastIndexOf(".jspx")) + ".xhtml";
+ }
Enumeration enumeration = tree.depthFirstEnumeration();
while (enumeration.hasMoreElements()) {
NavigationNode node = ((NavigationNode) enumeration.nextElement());