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 2016/03/23 10:15:39 UTC

svn commit: r1736295 - in /myfaces/tobago/branches/tobago-3.0.x/tobago-example: tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/ tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/ tobago-example-demo/src/...

Author: lofwyr
Date: Wed Mar 23 09:15:38 2016
New Revision: 1736295

URL: http://svn.apache.org/viewvc?rev=1736295&view=rev
Log:
TOBAGO-1544: Revise Demo Application for Tobago 3.0
restructured data

Added:
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SolarConverter.java
Modified:
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Planet.java
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Solar.java
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/SolarObject.java
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SelectManyShuttleController.java
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/selectManyShuttle.xhtml

Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Planet.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Planet.java?rev=1736295&r1=1736294&r2=1736295&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Planet.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Planet.java Wed Mar 23 09:15:38 2016
@@ -22,6 +22,7 @@ package org.apache.myfaces.tobago.exampl
 import java.util.ArrayList;
 import java.util.List;
 
+@Deprecated
 public class Planet {
 
   public static final Planet MERCURY

Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Solar.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Solar.java?rev=1736295&r1=1736294&r2=1736295&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Solar.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/Solar.java Wed Mar 23 09:15:38 2016
@@ -22,6 +22,7 @@ package org.apache.myfaces.tobago.exampl
 import java.util.ArrayList;
 import java.util.List;
 
+@Deprecated
 public class Solar {
 
   private List<Planet> planets;

Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/SolarObject.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/SolarObject.java?rev=1736295&r1=1736294&r2=1736295&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/SolarObject.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-data/src/main/java/org/apache/myfaces/tobago/example/data/SolarObject.java Wed Mar 23 09:15:38 2016
@@ -166,6 +166,10 @@ public class SolarObject {
     this.chemicalComposition = chemicalComposition;
   }
 
+  public String toString() {
+    return name;
+  }
+
   public boolean isSelectionDisabled() {
     return number.equals("II");
   }
@@ -208,6 +212,17 @@ public class SolarObject {
     return collect;
   }
 
+  // TODO: optimize
+  public static SolarObject find(String name) {
+    for (SolarObject solarObject : DATA) {
+      if (solarObject.getName().equals(name)) {
+        return solarObject;
+      }
+    }
+    return null;
+  }
+
+
   public static final SolarObject SUN = new SolarObject("Sun", "-", "-", 0, 0.0, 0.0, 0.0, "-", null);
   public static final SolarObject EARTH =new SolarObject("Earth", "III", "Sun", 149600, 365.26, 0.00, 0.02, "-", null);
   public static final SolarObject MOON = new SolarObject("Moon", "I", "Earth", 384, 27.32, 5.14, 0.05, "-", null);

Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SelectManyShuttleController.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SelectManyShuttleController.java?rev=1736295&r1=1736294&r2=1736295&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SelectManyShuttleController.java (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SelectManyShuttleController.java Wed Mar 23 09:15:38 2016
@@ -19,6 +19,8 @@
 
 package org.apache.myfaces.tobago.example.demo;
 
+import org.apache.myfaces.tobago.example.data.SolarObject;
+
 import javax.enterprise.context.SessionScoped;
 import javax.inject.Named;
 import java.io.Serializable;
@@ -30,44 +32,29 @@ import java.util.List;
 @Named
 public class SelectManyShuttleController implements Serializable {
 
-  private List<Planet> planets = new ArrayList<Planet>();
-  private String[] selectedPlanets = new String[0];
+  private List<SolarObject> planets = new ArrayList<SolarObject>();
+  private SolarObject[] selectedPlanets = new SolarObject[0];
   private List<String> stars = Arrays.asList("Proxima Centauri", "Alpha Centauri", "Wolf 359", "Sirius");
   private String[] selectedStars = new String[0];
 
   public SelectManyShuttleController() {
-    planets.add(new Planet("Mercury", 0.387));
-    planets.add(new Planet("Venus", 0.723));
-    planets.add(new Planet("Earth", 1));
-    planets.add(new Planet("Mars", 1.524));
-    planets.add(new Planet("Jupiter", 5.203));
-    planets.add(new Planet("Saturn", 9.537));
-    planets.add(new Planet("Uranus", 19.191));
-    planets.add(new Planet("Neptun", 30.069));
+    planets = SolarObject.getSatellites("Sun");
   }
 
-  public List<Planet> getPlanets() {
+  public List<SolarObject> getPlanets() {
     return planets;
   }
 
-  public String[] getSelectedPlanets() {
+  public SolarObject[] getSelectedPlanets() {
     return selectedPlanets;
   }
 
-  public void setSelectedPlanets(String[] selectedPlanets) {
+  public void setSelectedPlanets(SolarObject[] selectedPlanets) {
     this.selectedPlanets = selectedPlanets;
   }
 
   public String getSelectedPlanetsAsString() {
-    String retValue = "";
-    for (String selectedPlanet : selectedPlanets) {
-      for (Planet planet : planets) {
-        if (planet.getId().equals(selectedPlanet)) {
-          retValue = retValue.concat(planet.getName() + " (" + planet.getAu() + " AU); ");
-        }
-      }
-    }
-    return retValue;
+    return Arrays.toString(selectedPlanets);
   }
 
   public List<String> getStars() {
@@ -85,28 +72,4 @@ public class SelectManyShuttleController
   public String getSelectedStarsAsString() {
     return Arrays.toString(selectedStars);
   }
-
-  public class Planet {
-    private String id;
-    private String name;
-    private double au;
-
-    public Planet(String name, double au) {
-      id = name + au;
-      this.name = name;
-      this.au = au;
-    }
-
-    public String getId() {
-      return id;
-    }
-
-    public String getName() {
-      return name;
-    }
-
-    private double getAu() {
-      return au;
-    }
-  }
 }

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SolarConverter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SolarConverter.java?rev=1736295&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SolarConverter.java (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SolarConverter.java Wed Mar 23 09:15:38 2016
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.myfaces.tobago.example.demo;
+
+import org.apache.myfaces.tobago.example.data.SolarObject;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.convert.Converter;
+import javax.faces.convert.ConverterException;
+import javax.faces.convert.FacesConverter;
+
+@FacesConverter(forClass = SolarObject.class)
+public class SolarConverter implements Converter {
+
+  @Override
+  public Object getAsObject(final FacesContext context, final UIComponent component, final String value)
+      throws ConverterException {
+    return SolarObject.find(value);
+  }
+
+  @Override
+  public String getAsString(final FacesContext context, final UIComponent component, final Object value)
+      throws ConverterException {
+    return ((SolarObject) value).getName();
+  }
+}

Modified: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/selectManyShuttle.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/selectManyShuttle.xhtml?rev=1736295&r1=1736294&r2=1736295&view=diff
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/selectManyShuttle.xhtml (original)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/030-select/70-selectManyShuttle/selectManyShuttle.xhtml Wed Mar 23 09:15:38 2016
@@ -93,7 +93,7 @@
                           unselectedLabel="Left List" selectedLabel="Right List"
                           value="#{selectManyShuttleController.selectedPlanets}">
       <tc:selectItems value="#{selectManyShuttleController.planets}"
-                      var="planet" itemLabel="#{planet.name}" itemValue="#{planet.id}"/>
+                      var="planet" itemLabel="#{planet.name}" itemValue="#{planet}"/>
     </tc:selectManyShuttle>
     <tc:out id="o1" label="Selected Planets" value="#{selectManyShuttleController.selectedPlanetsAsString}"/>
     <tc:button label="Submit"/>