Author: hlship
Date: Wed Apr 13 22:23:25 2011
New Revision: 1091948

URL: http://svn.apache.org/viewvc?rev=1091948&view=rev
Log:
TAP5-853: Rename InstructionBuilder.conditional() to when()

Added:
    
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/WhenCallback.java
      - copied, changed from r1091947, 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/ConditionCallback.java
Removed:
    
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/ConditionCallback.java
Modified:
    
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/InstructionBuilderImpl.java
    
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/Condition.java
    
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/InstructionBuilder.java
    
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
    
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyShadowBuilderImpl.java

Modified: 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/InstructionBuilderImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/InstructionBuilderImpl.java?rev=1091948&r1=1091947&r2=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/InstructionBuilderImpl.java
 (original)
+++ 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/InstructionBuilderImpl.java
 Wed Apr 13 22:23:25 2011
@@ -23,7 +23,7 @@ import org.apache.tapestry5.internal.pla
 import org.apache.tapestry5.internal.plastic.asm.Opcodes;
 import org.apache.tapestry5.internal.plastic.asm.Type;
 import org.apache.tapestry5.plastic.Condition;
-import org.apache.tapestry5.plastic.ConditionCallback;
+import org.apache.tapestry5.plastic.WhenCallback;
 import org.apache.tapestry5.plastic.InstructionBuilder;
 import org.apache.tapestry5.plastic.InstructionBuilderCallback;
 import org.apache.tapestry5.plastic.MethodDescription;
@@ -579,47 +579,16 @@ public class InstructionBuilderImpl exte
         return this;
     }
 
-    public InstructionBuilder ifZero(InstructionBuilderCallback ifTrue, 
InstructionBuilderCallback ifFalse)
-    {
-        doConditional(IFEQ, ifTrue, ifFalse);
-
-        return this;
-    }
-
-    public InstructionBuilder ifNull(InstructionBuilderCallback ifTrue, 
InstructionBuilderCallback ifFalse)
-    {
-        doConditional(IFNULL, ifTrue, ifFalse);
-
-        return this;
-    }
-
-    private void doConditional(int opcode, InstructionBuilderCallback 
ifTrueCallback,
-            InstructionBuilderCallback ifFalseCallback)
+    public InstructionBuilder when(Condition condition, final 
InstructionBuilderCallback ifTrue)
     {
         check();
 
-        Label ifTrueLabel = new Label();
-        Label endIfLabel = new Label();
-
-        // Kind of clumsy code, but it will work.
+        assert ifTrue != null;
 
-        v.visitJumpInsn(opcode, ifTrueLabel);
+        // This is nice for code coverage but could be more efficient, 
possibly generate
+        // more efficient bytecode, if it talked to the v directly.
 
-        new InstructionBuilderImpl(state).doCallback(ifFalseCallback);
-
-        v.visitJumpInsn(GOTO, endIfLabel);
-        v.visitLabel(ifTrueLabel);
-
-        new InstructionBuilderImpl(state).doCallback(ifTrueCallback);
-
-        v.visitLabel(endIfLabel);
-    }
-
-    public InstructionBuilder conditional(Condition condition, final 
InstructionBuilderCallback ifTrue)
-    {
-        check();
-
-        return conditional(condition, new ConditionCallback()
+        return when(condition, new WhenCallback()
         {
             public void ifTrue(InstructionBuilder builder)
             {
@@ -632,10 +601,13 @@ public class InstructionBuilderImpl exte
         });
     }
 
-    public InstructionBuilder conditional(Condition condition, 
ConditionCallback callback)
+    public InstructionBuilder when(Condition condition, WhenCallback callback)
     {
         check();
 
+        assert condition != null;
+        assert callback != null;
+
         Label ifFalseLabel = new Label();
         Label endIfLabel = new Label();
 

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=1091948&r1=1091947&r2=1091948&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
 Wed Apr 13 22:23:25 2011
@@ -43,7 +43,7 @@ import org.apache.tapestry5.plastic.Anno
 import org.apache.tapestry5.plastic.ClassInstantiator;
 import org.apache.tapestry5.plastic.ComputedValue;
 import org.apache.tapestry5.plastic.Condition;
-import org.apache.tapestry5.plastic.ConditionCallback;
+import org.apache.tapestry5.plastic.WhenCallback;
 import org.apache.tapestry5.plastic.FieldConduit;
 import org.apache.tapestry5.plastic.FieldHandle;
 import org.apache.tapestry5.plastic.InstanceContext;
@@ -1311,7 +1311,7 @@ public class PlasticClassImpl extends Lo
                     {
                         builder.invoke(MethodInvocation.class, boolean.class, 
"didThrowCheckedException");
 
-                        builder.conditional(Condition.NON_ZERO, new 
InstructionBuilderCallback()
+                        builder.when(Condition.NON_ZERO, new 
InstructionBuilderCallback()
                         {
                             public void doBuild(InstructionBuilder builder)
                             {

Modified: 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/Condition.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/Condition.java?rev=1091948&r1=1091947&r2=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/Condition.java
 (original)
+++ 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/Condition.java
 Wed Apr 13 22:23:25 2011
@@ -15,7 +15,7 @@
 package org.apache.tapestry5.plastic;
 
 /**
- * Condition used with {@link InstructionBuilder#conditional(Condition, 
ConditionCallback)}.
+ * Condition used with {@link InstructionBuilder#when(Condition, 
WhenCallback)}.
  */
 public enum Condition
 {

Modified: 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/InstructionBuilder.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/InstructionBuilder.java?rev=1091948&r1=1091947&r2=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/InstructionBuilder.java
 (original)
+++ 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/InstructionBuilder.java
 Wed Apr 13 22:23:25 2011
@@ -396,10 +396,10 @@ public interface InstructionBuilder
      * @return this builder
      */
     @Opcodes("IFEQ, etc., GOTO")
-    InstructionBuilder conditional(Condition condition, ConditionCallback 
callback);
+    InstructionBuilder when(Condition condition, WhenCallback callback);
 
     /**
-     * Simplified version of {@link #conditional(Condition, 
ConditionCallback)} that
+     * Simplified version of {@link #when(Condition, WhenCallback)} that
      * simply executes the callback code when the condition is true and does 
nothing
      * if the condition is false (the more general case).
      * <p>
@@ -412,6 +412,6 @@ public interface InstructionBuilder
      * @return
      */
     @Opcodes("IFEQ, etc., GOTO")
-    InstructionBuilder conditional(Condition condition, 
InstructionBuilderCallback ifTrue);
+    InstructionBuilder when(Condition condition, InstructionBuilderCallback 
ifTrue);
 
 }

Copied: 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/WhenCallback.java
 (from r1091947, 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/ConditionCallback.java)
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/WhenCallback.java?p2=tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/WhenCallback.java&p1=tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/ConditionCallback.java&r1=1091947&r2=1091948&rev=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/ConditionCallback.java
 (original)
+++ 
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/WhenCallback.java
 Wed Apr 13 22:23:25 2011
@@ -15,9 +15,9 @@
 package org.apache.tapestry5.plastic;
 
 /**
- * Used with {@link InstructionBuilder#conditional(Condition, 
ConditionCallback)}.
+ * Used with {@link InstructionBuilder#when(Condition, WhenCallback)}.
  */
-public interface ConditionCallback
+public interface WhenCallback
 {
     /** Generates code for when the condition is true. */
     void ifTrue(InstructionBuilder builder);

Modified: 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java?rev=1091948&r1=1091947&r2=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PropertyConduitSourceImpl.java
 Wed Apr 13 22:23:25 2011
@@ -68,7 +68,7 @@ import org.apache.tapestry5.ioc.util.Ava
 import org.apache.tapestry5.ioc.util.BodyBuilder;
 import org.apache.tapestry5.ioc.util.UnknownValueException;
 import org.apache.tapestry5.plastic.Condition;
-import org.apache.tapestry5.plastic.ConditionCallback;
+import org.apache.tapestry5.plastic.WhenCallback;
 import org.apache.tapestry5.plastic.InstructionBuilder;
 import org.apache.tapestry5.plastic.InstructionBuilderCallback;
 import org.apache.tapestry5.plastic.MethodDescription;
@@ -415,7 +415,7 @@ public class PropertyConduitSourceImpl i
                 public void doBuild(InstructionBuilder builder)
                 {
                     builder.loadArgument(0).dupe(0);
-                    builder.conditional(Condition.NULL, new 
InstructionBuilderCallback()
+                    builder.when(Condition.NULL, new 
InstructionBuilderCallback()
                     {
                         public void doBuild(InstructionBuilder builder)
                         {
@@ -804,7 +804,7 @@ public class PropertyConduitSourceImpl i
 
         public void returnResultIfNull(InstructionBuilder builder)
         {
-            builder.dupe(0).conditional(Condition.NULL, new 
InstructionBuilderCallback()
+            builder.dupe(0).when(Condition.NULL, new 
InstructionBuilderCallback()
             {
                 public void doBuild(InstructionBuilder builder)
                 {
@@ -1516,7 +1516,7 @@ public class PropertyConduitSourceImpl i
                         createPlasticMethodInvocation(builder, term, method, 
info);
                     }
 
-                    builder.dupe(0).conditional(Condition.NULL, new 
InstructionBuilderCallback()
+                    builder.dupe(0).when(Condition.NULL, new 
InstructionBuilderCallback()
                     {
                         public void doBuild(InstructionBuilder builder)
                         {

Modified: 
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyShadowBuilderImpl.java
URL: 
http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyShadowBuilderImpl.java?rev=1091948&r1=1091947&r2=1091948&view=diff
==============================================================================
--- 
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyShadowBuilderImpl.java
 (original)
+++ 
tapestry/tapestry5/trunk/tapestry-ioc/src/main/java/org/apache/tapestry5/ioc/internal/services/PropertyShadowBuilderImpl.java
 Wed Apr 13 22:23:25 2011
@@ -24,7 +24,7 @@ import org.apache.tapestry5.ioc.services
 import org.apache.tapestry5.ioc.services.PropertyShadowBuilder;
 import org.apache.tapestry5.plastic.ClassInstantiator;
 import org.apache.tapestry5.plastic.Condition;
-import org.apache.tapestry5.plastic.ConditionCallback;
+import org.apache.tapestry5.plastic.WhenCallback;
 import org.apache.tapestry5.plastic.InstructionBuilder;
 import org.apache.tapestry5.plastic.InstructionBuilderCallback;
 import org.apache.tapestry5.plastic.MethodDescription;
@@ -86,7 +86,7 @@ public class PropertyShadowBuilderImpl i
 
                         // Now add the null check.
 
-                        builder.dupe(0).conditional(Condition.NULL, new 
InstructionBuilderCallback()
+                        builder.dupe(0).when(Condition.NULL, new 
InstructionBuilderCallback()
                         {
                             public void doBuild(InstructionBuilder builder)
                             {


Reply via email to