You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2010/02/27 00:08:38 UTC

svn commit: r916851 - /tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java

Author: hlship
Date: Fri Feb 26 23:08:37 2010
New Revision: 916851

URL: http://svn.apache.org/viewvc?rev=916851&view=rev
Log:
Make it easier to subclass PageCallback and still implement a toString()

Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java?rev=916851&r1=916850&r2=916851&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/PageCallback.java Fri Feb 26 23:08:37 2010
@@ -64,11 +64,27 @@
     @Override
     public String toString()
     {
-        StringBuilder builder = new StringBuilder("PageCallback[");
+        if (hasActivationContext())
+            return String.format("PageCallback[%s %s]", pageName, activationContextDescription());
 
-        builder.append(pageName);
+        return String.format("PageCallback[%s]");
+    }
 
-        String sep = " ";
+    /** Does the activation context have any values? Used, typically, inside an override of {@link #toString()}. */
+    protected final boolean hasActivationContext()
+    {
+        return activationContext.length > 0;
+    }
+
+    /**
+     * Returns the activation context as a string of value separated by slashes. Typically used inside
+     * an override of {@link #toString()}.
+     */
+    protected final String activationContextDescription()
+    {
+        StringBuilder builder = new StringBuilder();
+
+        String sep = "";
 
         for (String c : activationContext)
         {
@@ -78,8 +94,6 @@
             sep = "/";
         }
 
-        builder.append("]");
-
         return builder.toString();
     }