You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by bd...@apache.org on 2005/03/11 09:36:14 UTC

svn commit: r157059 - in cocoon/blocks/unsupported/tour/trunk: java/org/apache/cocoon/samples/tour/shapes/ samples/flow/java-shapes/

Author: bdelacretaz
Date: Fri Mar 11 00:36:12 2005
New Revision: 157059

URL: http://svn.apache.org/viewcvs?view=rev&rev=157059
Log:
shapes sample uses bean-like properties, and use if/else in flowscript instead of switch

Modified:
    cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Circle.java
    cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Rectangular.java
    cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Shape.java
    cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Square.java
    cocoon/blocks/unsupported/tour/trunk/samples/flow/java-shapes/java-shapes.js

Modified: cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Circle.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Circle.java?view=diff&r1=157058&r2=157059
==============================================================================
--- cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Circle.java (original)
+++ cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Circle.java Fri Mar 11 00:36:12 2005
@@ -31,11 +31,11 @@
         _r = r;
     }
     
-    public double area() {
+    public double getArea() {
         return 3.14 * _r * _r;
     }
     
-    public double perimeter() {
+    public double getPerimeter() {
         return 2 * 3.14 * _r;
     }
     

Modified: cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Rectangular.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Rectangular.java?view=diff&r1=157058&r2=157059
==============================================================================
--- cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Rectangular.java (original)
+++ cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Rectangular.java Fri Mar 11 00:36:12 2005
@@ -32,11 +32,11 @@
         return "Rectangular";
     }
 
-    public double area(){
+    public double getArea(){
     	return _h * _b;
     }
     
-    public double perimeter(){
+    public double getPerimeter(){
         return (_h + _b) * 2;
     }
 	    

Modified: cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Shape.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Shape.java?view=diff&r1=157058&r2=157059
==============================================================================
--- cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Shape.java (original)
+++ cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Shape.java Fri Mar 11 00:36:12 2005
@@ -21,6 +21,6 @@
  */
 public interface Shape {
     String getName();
-    abstract double area();
-    abstract double perimeter();
+    abstract double getArea();
+    abstract double getPerimeter();
 }

Modified: cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Square.java
URL: http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Square.java?view=diff&r1=157058&r2=157059
==============================================================================
--- cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Square.java (original)
+++ cocoon/blocks/unsupported/tour/trunk/java/org/apache/cocoon/samples/tour/shapes/Square.java Fri Mar 11 00:36:12 2005
@@ -30,11 +30,11 @@
         return "Square";
     }
 
-    public double area() {
+    public double getArea() {
         return _b*_b;
     }
     
-    public double perimeter() {
+    public double getPerimeter() {
         return 4*_b;
     }
     

Modified: cocoon/blocks/unsupported/tour/trunk/samples/flow/java-shapes/java-shapes.js
URL: http://svn.apache.org/viewcvs/cocoon/blocks/unsupported/tour/trunk/samples/flow/java-shapes/java-shapes.js?view=diff&r1=157058&r2=157059
==============================================================================
--- cocoon/blocks/unsupported/tour/trunk/samples/flow/java-shapes/java-shapes.js (original)
+++ cocoon/blocks/unsupported/tour/trunk/samples/flow/java-shapes/java-shapes.js Fri Mar 11 00:36:12 2005
@@ -16,7 +16,7 @@
 
 // Shape's area and perimeter calculation example.
 
-var calculator = Packages.org.apache.cocoon.samples.supersonic.shapes.Shape;
+var calculator = null;
 
 function public_startShape() {
     var hint = "Calculate shape's area and perimeter using logic in java. ";
@@ -28,26 +28,26 @@
     // send shape-specific view
     cocoon.sendPageAndWait("java-shapes/views/" + shapeId, {"shapeId" : shapeId});
 
+    // get request parameters (of which some are null depending on shape, that's not a problem)
+    var h = parseInt( cocoon.request.get("h") );
+    var b = parseInt( cocoon.request.get("b") );
+    var r = parseInt( cocoon.request.get("r") );
+
     // instantiate appropriate calculator
-    switch (shapeId){
-        case "square":
-            var b      = parseInt( cocoon.request.get("b") );
-            calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Square(b);
-            break;
-        case "rectangular":
-            var h      = parseInt( cocoon.request.get("h") );
-            var b      = parseInt( cocoon.request.get("b") );
-            calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Rectangular(b,h);
-            break;
-        case "circle":
-            var r      = parseInt( cocoon.request.get("r") );
-            calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Circle(r);
-            break;
+    if(shapeId == "square") {
+        calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Square(b);
+    } else if(shapeId=="rectangular") {
+        calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Rectangular(b,h);
+    } else if(shapeId=="circle") {
+        calculator = new Packages.org.apache.cocoon.samples.tour.shapes.Circle(r);
+    } else {
+        throw new java.lang.Exception("No calculator found for shape '" + shapeId + "'");
     }
 
     // compute results
-    var a = calculator.area();
-    var p = calculator.perimeter();
+    // (accessing bean-like properties like "getArea()" using property names like "area")
+    var a = calculator.area;
+    var p = calculator.perimeter;
 
     cocoon.sendPage("java-shapes/views/results", {"area" : a, "perimeter" : p, "shape" : shapeId} );
-}
\ No newline at end of file
+}