You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2011/04/22 03:36:57 UTC

svn commit: r1095853 - in /tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5: internal/plastic/PlasticClassImpl.java plastic/PlasticClass.java plastic/PlasticUtils.java

Author: hlship
Date: Fri Apr 22 01:36:56 2011
New Revision: 1095853

URL: http://svn.apache.org/viewvc?rev=1095853&view=rev
Log:
TAP5-853: Add isMethodImplemented() to PlasticClass

Modified:
    tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
    tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticClass.java
    tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticUtils.java

Modified: tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java?rev=1095853&r1=1095852&r2=1095853&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java Fri Apr 22 01:36:56 2011
@@ -101,8 +101,6 @@ public class PlasticClassImpl extends Lo
 
     private static final Method COMPUTED_VALUE_GET_METHOD = toMethod(ComputedValue.class, "get", InstanceContext.class);
 
-    private static final MethodDescription TO_STRING_METHOD_DESCRIPTION = new MethodDescription(PlasticUtils.TO_STRING);
-
     private static String toDesc(String internalName)
     {
         return "L" + internalName + ";";
@@ -2243,9 +2241,9 @@ public class PlasticClassImpl extends Lo
     {
         check();
 
-        if (!isMethodImplemented(TO_STRING_METHOD_DESCRIPTION))
+        if (!isMethodImplemented(PlasticUtils.TO_STRING_DESCRIPTION))
         {
-            introduceMethod(TO_STRING_METHOD_DESCRIPTION, new InstructionBuilderCallback()
+            introduceMethod(PlasticUtils.TO_STRING_DESCRIPTION, new InstructionBuilderCallback()
             {
                 public void doBuild(InstructionBuilder builder)
                 {
@@ -2257,11 +2255,8 @@ public class PlasticClassImpl extends Lo
         return this;
     }
 
-    /**
-     * Returns true if this class has an implementation of the indicated method, or a super-class provides
-     * a non-abstract implementation.
-     */
-    private boolean isMethodImplemented(MethodDescription description)
+  
+    public boolean isMethodImplemented(MethodDescription description)
     {
         return methodBundle.isImplemented(description.methodName, nameCache.toDesc(description));
     }

Modified: tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticClass.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticClass.java?rev=1095853&r1=1095852&r2=1095853&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticClass.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticClass.java Fri Apr 22 01:36:56 2011
@@ -185,4 +185,10 @@ public interface PlasticClass extends An
      * @return this plastic class, for further configuration
      */
     PlasticClass addToString(String toStringValue);
+
+    /**
+     * Returns true if this class has an implementation of the indicated method, or a super-class provides
+     * a non-abstract implementation.
+     */
+    boolean isMethodImplemented(MethodDescription description);
 }

Modified: tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticUtils.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticUtils.java?rev=1095853&r1=1095852&r2=1095853&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticUtils.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/PlasticUtils.java Fri Apr 22 01:36:56 2011
@@ -29,6 +29,11 @@ public class PlasticUtils
      */
     public static final Method TO_STRING = getMethod(Object.class, "toString");
 
+    /**
+     * The MethodDescription version of {@code toString()}.
+     */
+    public static final MethodDescription TO_STRING_DESCRIPTION = new MethodDescription(TO_STRING);
+
     private static final AtomicLong UID_GENERATOR = new AtomicLong(System.nanoTime());
 
     /**