This is an automated email from the git hooks/post-receive script. New commit to annotated tag v2.0.0-beta-1 in repository jaxx. See https://gitlab.nuiton.org/nuiton/jaxx.git commit 00bf8b1f6bcaa1ee8cfd2db4b5095edd330d8d8b Author: Tony Chemit <chemit@codelutin.com> Date: Thu Oct 22 10:57:40 2009 +0000 move context entry def static methods to jaxx.runtime.Util --- .../src/main/java/jaxx/demo/DemoTreeHelper.java | 2 +- .../src/main/java/jaxx/demo/DemoUIHandler.java | 2 +- .../jaxx/navigation/FullNavigationTreeHelper.java | 10 ++-- jaxx-runtime/src/main/java/jaxx/runtime/Util.java | 27 +++++++++ .../jaxx/runtime/context/DefaultJAXXContext.java | 6 +- .../jaxx/runtime/context/JAXXContextEntryDef.java | 64 ++++++++++++---------- .../navigation/NavigationTreeContextHelper.java | 21 +++---- .../swing/navigation/NavigationTreeModelTest.java | 15 ++--- 8 files changed, 84 insertions(+), 63 deletions(-) diff --git a/jaxx-demo/src/main/java/jaxx/demo/DemoTreeHelper.java b/jaxx-demo/src/main/java/jaxx/demo/DemoTreeHelper.java index 9f65603..be4a442 100644 --- a/jaxx-demo/src/main/java/jaxx/demo/DemoTreeHelper.java +++ b/jaxx-demo/src/main/java/jaxx/demo/DemoTreeHelper.java @@ -189,7 +189,7 @@ public class DemoTreeHelper extends NavigationTreeHelper { /** * la definition de l'unqiue object a partage */ - static private final JAXXContextEntryDef<DemoConfig> def = JAXXContextEntryDef.newDef(DemoConfig.class); + static private final JAXXContextEntryDef<DemoConfig> def = jaxx.runtime.Util.newContextEntryDef(DemoConfig.class); /** * la pile des noeuds parent */ diff --git a/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java b/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java index 702c2aa..85a20ff 100644 --- a/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java +++ b/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java @@ -51,7 +51,7 @@ public class DemoUIHandler { //implements JAXXHelp { /** to use log facility, just put in your code: log.info(\"...\"); */ static private Log log = LogFactory.getLog(DemoUIHandler.class); - static final JAXXContextEntryDef<DemoUI> MAIN_UI_ENTRY_DEF = JAXXContextEntryDef.newDef("mainui", DemoUI.class); + static final JAXXContextEntryDef<DemoUI> MAIN_UI_ENTRY_DEF = jaxx.runtime.Util.newContextEntryDef("mainui", DemoUI.class); /** * Methode pour initialiser l'ui principale sans l'afficher. diff --git a/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/navigation/FullNavigationTreeHelper.java b/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/navigation/FullNavigationTreeHelper.java index dce72e6..37cc85a 100644 --- a/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/navigation/FullNavigationTreeHelper.java +++ b/jaxx-demo/src/main/java/jaxx/demo/component/jaxx/navigation/FullNavigationTreeHelper.java @@ -23,7 +23,6 @@ package jaxx.demo.component.jaxx.navigation; import jaxx.runtime.JAXXObject; import jaxx.runtime.JAXXContext; import jaxx.runtime.context.JAXXContextEntryDef; -import static jaxx.runtime.context.JAXXContextEntryDef.newListDef; import jaxx.runtime.decorator.Decorator; import jaxx.runtime.decorator.DecoratorUtils; import jaxx.runtime.swing.CardLayout2; @@ -43,6 +42,7 @@ import static org.nuiton.i18n.I18n._; import java.util.Arrays; import java.util.List; import javax.swing.JPanel; +import jaxx.runtime.Util; /** * @@ -69,11 +69,11 @@ public class FullNavigationTreeHelper extends NavigationTreeHelper { /** * where the movies are hold in context */ - static public final JAXXContextEntryDef<List<Movie>> MOVIES = JAXXContextEntryDef.newListDef("movies"); + static public final JAXXContextEntryDef<List<Movie>> MOVIES = Util.newListContextEntryDef("movies"); /** * where the actors are hold in context */ - static public final JAXXContextEntryDef<List<People>> ACTORS = JAXXContextEntryDef.newListDef("actors"); + static public final JAXXContextEntryDef<List<People>> ACTORS = Util.newListContextEntryDef("actors"); public FullNavigationTreeHelper() { super("full"); @@ -128,7 +128,7 @@ public class FullNavigationTreeHelper extends NavigationTreeHelper { NavigationTreeNode moviesNode = builder.build( rootNode, _("movies"), - newListDef("movies"), + MOVIES, "movies", null, null); @@ -167,7 +167,7 @@ public class FullNavigationTreeHelper extends NavigationTreeHelper { // construction du noeud avec les acteurs NavigationTreeNode actorsNode = builder.build(rootNode, _("actors"), - newListDef("actors"), + ACTORS, "actors", null, null); for (People p : actors) { diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/Util.java b/jaxx-runtime/src/main/java/jaxx/runtime/Util.java index 3f551e4..2d8f217 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/Util.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/Util.java @@ -20,6 +20,7 @@ import java.lang.reflect.Method; import java.lang.reflect.Proxy; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.EventListener; import java.util.List; import java.util.Map; @@ -84,6 +85,32 @@ public class Util { } } + public static <O> JAXXContextEntryDef<O> newContextEntryDef(Class<O> klass) { + return newContextEntryDef(null, klass); + } + + public static <O> JAXXContextEntryDef<O> newContextEntryDef(String name, Class<O> klass) { + return new JAXXContextEntryDef<O>(name, klass); + } + + public static <O> JAXXContextEntryDef<List<O>> newListContextEntryDef() { + return newListContextEntryDef(null); + } + + //@SuppressWarnings({"unchecked"}) + public static <O> JAXXContextEntryDef<List<O>> newListContextEntryDef(String name) { + Class<List<O>> castList = Util.<O>castList(); + JAXXContextEntryDef<List<O>> contextEntryDef = new JAXXContextEntryDef<List<O>>(name,castList); + return contextEntryDef; + } + + + @SuppressWarnings({"unchecked"}) + protected static <O> Class<List<O>> castList() { + return (Class<List<O>>) Collections.emptyList().getClass(); + } + + /** * Method to initialize the context of a ui. * diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/context/DefaultJAXXContext.java b/jaxx-runtime/src/main/java/jaxx/runtime/context/DefaultJAXXContext.java index fc08f0f..170187d 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/context/DefaultJAXXContext.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/context/DefaultJAXXContext.java @@ -1,7 +1,7 @@ package jaxx.runtime.context; import jaxx.runtime.*; -import static jaxx.runtime.context.JAXXContextEntryDef.newDef; +import jaxx.runtime.Util; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -27,7 +27,7 @@ public class DefaultJAXXContext implements JAXXContext { /** * entry of the parent context */ - protected static final JAXXContextEntryDef<JAXXContext> PARENT_CONTEXT_ENTRY = newDef(JAXXContext.class); + protected static final JAXXContextEntryDef<JAXXContext> PARENT_CONTEXT_ENTRY = Util.newContextEntryDef(JAXXContext.class); /** * Logger */ @@ -174,7 +174,7 @@ public class DefaultJAXXContext implements JAXXContext { } protected JAXXContextEntryDef<?> getKey(String name, Class<?> klass) { - return JAXXContextEntryDef.newDef(name, klass); + return Util.newContextEntryDef(name, klass); } @SuppressWarnings({"unchecked"}) diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/context/JAXXContextEntryDef.java b/jaxx-runtime/src/main/java/jaxx/runtime/context/JAXXContextEntryDef.java index 54042b4..e08fd03 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/context/JAXXContextEntryDef.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/context/JAXXContextEntryDef.java @@ -1,13 +1,12 @@ package jaxx.runtime.context; -import jaxx.runtime.JAXXContext; -import java.util.Collections; import java.util.List; +import jaxx.runtime.JAXXContext; /** * To qualify an entry in a {@link JAXXContext}. * <p/> - * Use the factory methods <code>newDef</code> and <code>newListDef</code< to obtain new instances. + * Use the factory methods <code>newContextEntryDef</code> and <code>newListContextEntryDef</code< to obtain new instances. * * @param <O> type of the entry associated to the definition * @author chemit @@ -22,24 +21,25 @@ public class JAXXContextEntryDef<O> implements java.io.Serializable { private static final long serialVersionUID = 1L; - public static <O> JAXXContextEntryDef<O> newDef(Class<O> klass) { - return newDef(null, klass); - } - - public static <O> JAXXContextEntryDef<O> newDef(String name, Class<O> klass) { - return new JAXXContextEntryDef<O>(name, klass); - } - - public static <O> JAXXContextEntryDef<List<O>> newListDef() { - return newListDef(null); - } - - @SuppressWarnings({"unchecked"}) - public static <O> JAXXContextEntryDef<List<O>> newListDef(String name) { - JAXXContextEntryDef contextEntryDef = new JAXXContextEntryDef<List<O>>(name, JAXXContextEntryDef.<O>castList()); - contextEntryDef.klass = List.class; - return contextEntryDef; - } +// public static <O> JAXXContextEntryDef<O> newContextEntryDef(Class<O> klass) { +// return newContextEntryDef(null, klass); +// } +// +// public static <O> JAXXContextEntryDef<O> newContextEntryDef(String name, Class<O> klass) { +// return new JAXXContextEntryDef<O>(name, klass); +// } +// +// public static <O> JAXXContextEntryDef<List<O>> newListContextEntryDef() { +// return newListContextEntryDef(null); +// } +// +// @SuppressWarnings({"unchecked"}) +// public static <O> JAXXContextEntryDef<List<O>> newListContextEntryDef(String name) { +// Class<List<O>> castList = JAXXContextEntryDef.<O>castList(); +// JAXXContextEntryDef<List<O>> contextEntryDef = new JAXXContextEntryDef<List<O>>(name,castList); +// contextEntryDef.klass = castList; +// return contextEntryDef; +// } public String getName() { @@ -67,32 +67,36 @@ public class JAXXContextEntryDef<O> implements java.io.Serializable { return super.toString() + "<" + klass + ":" + name + ">"; } - protected JAXXContextEntryDef(Class<O> klass) { + public JAXXContextEntryDef(Class<O> klass) { this(null, klass); } - protected JAXXContextEntryDef(String name, Class<O> klass) { + @SuppressWarnings("unchecked") + public JAXXContextEntryDef(String name, Class<O> klass) { if (klass == null) { throw new IllegalArgumentException("class can not be null"); } this.name = name; + if (List.class.isAssignableFrom(klass)) { + klass = (Class<O>) List.class; + } this.klass = klass; } - - @SuppressWarnings({"unchecked"}) - protected static <O> Class<List<O>> castList() { - return (Class<List<O>>) Collections.emptyList().getClass(); - } +// +// @SuppressWarnings({"unchecked"}) +// protected static <O> Class<List<O>> castList() { +// return (Class<List<O>>) Collections.emptyList().getClass(); +// } @Override public boolean equals(Object o) { if (this == o) { return true; } - if (!(o instanceof JAXXContextEntryDef)) { + if (!(o instanceof JAXXContextEntryDef<?>)) { return false; } - JAXXContextEntryDef that = (JAXXContextEntryDef) o; + JAXXContextEntryDef<?> that = (JAXXContextEntryDef<?>) o; return klass.equals(that.klass) && !(name != null ? !name.equals(that.name) : that.name != null); } diff --git a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java index 5755757..5da00d9 100644 --- a/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java +++ b/jaxx-runtime/src/main/java/jaxx/runtime/swing/navigation/NavigationTreeContextHelper.java @@ -2,6 +2,7 @@ package jaxx.runtime.swing.navigation; import javax.swing.JTree; import jaxx.runtime.JAXXContext; +import jaxx.runtime.Util; import jaxx.runtime.context.JAXXContextEntryDef; /** @@ -46,12 +47,12 @@ public class NavigationTreeContextHelper { public NavigationTreeContextHelper(String prefix) { this.prefix = prefix; - treeContextEntry = JAXXContextEntryDef.newDef(prefix + "-tree", JTree.class); - treeModelContextEntry = JAXXContextEntryDef.newDef(prefix + "-tree-model", NavigationTreeModel.class); - treeHandlerContextEntry = JAXXContextEntryDef.newDef(prefix + "-tree-handler", NavigationTreeHandler.class); - selectedBeanContextEntry = JAXXContextEntryDef.newDef(prefix + "-selected-bean", Object.class); - selectedNodeContextEntry = JAXXContextEntryDef.newDef(prefix + "-selected-node", NavigationTreeNode.class); - selectedPathContextEntry = JAXXContextEntryDef.newDef(prefix + "-selected-path", String.class); + treeContextEntry = Util.newContextEntryDef(prefix + "-tree", JTree.class); + treeModelContextEntry = Util.newContextEntryDef(prefix + "-tree-model", NavigationTreeModel.class); + treeHandlerContextEntry = Util.newContextEntryDef(prefix + "-tree-handler", NavigationTreeHandler.class); + selectedBeanContextEntry = Util.newContextEntryDef(prefix + "-selected-bean", Object.class); + selectedNodeContextEntry = Util.newContextEntryDef(prefix + "-selected-node", NavigationTreeNode.class); + selectedPathContextEntry = Util.newContextEntryDef(prefix + "-selected-path", String.class); } public String getPrefix() { @@ -88,14 +89,6 @@ public class NavigationTreeContextHelper { return r; } - public <T> T getSelectedBean(JAXXContext context, Class<T> type) { - Object r = getSelectedBean(context); - if (r != null && !type.isAssignableFrom(r.getClass())) { - throw new IllegalStateException("required a object of type '" + type + "' but had '" + r.getClass() + "'"); - } - return (T) r; - } - public void setTreeModel(JAXXContext context, NavigationTreeModel model) { getTreeModelContextEntry().setContextValue(context, model); } diff --git a/jaxx-runtime/src/test/java/jaxx/runtime/swing/navigation/NavigationTreeModelTest.java b/jaxx-runtime/src/test/java/jaxx/runtime/swing/navigation/NavigationTreeModelTest.java index a83912d..0144afd 100644 --- a/jaxx-runtime/src/test/java/jaxx/runtime/swing/navigation/NavigationTreeModelTest.java +++ b/jaxx-runtime/src/test/java/jaxx/runtime/swing/navigation/NavigationTreeModelTest.java @@ -1,17 +1,14 @@ package jaxx.runtime.swing.navigation; -import jaxx.runtime.swing.navigation.NavigationTreeNode; -import jaxx.runtime.swing.navigation.NavigationTreeModel; -import jaxx.runtime.swing.navigation.NavigationTreeModelBuilder; import jaxx.runtime.context.DefaultJAXXContext; import jaxx.runtime.JAXXContext; -import jaxx.runtime.context.JAXXContextEntryDef; import org.junit.Assert; import org.junit.Test; import java.util.Arrays; import java.util.Collections; import java.util.List; +import jaxx.runtime.Util; /** * Test du model de navigation. @@ -147,10 +144,10 @@ public class NavigationTreeModelTest { NavigationTreeNode sonSonNode; NavigationTreeNode sonSonSonNode; - builder.build(rootNode, (String) null, JAXXContextEntryDef.newDef("name", String.class), "name", null, null); - builder.build(rootNode, (String) null, JAXXContextEntryDef.newDef("name2", String.class), "name2", null, null); + builder.build(rootNode, (String) null, Util.newContextEntryDef("name", String.class), "name", null, null); + builder.build(rootNode, (String) null, Util.newContextEntryDef("name2", String.class), "name2", null, null); - sonNode = builder.build(rootNode, (String) null, JAXXContextEntryDef.newDef(Model.class), "model", null, null); + sonNode = builder.build(rootNode, (String) null, Util.newContextEntryDef(Model.class), "model", null, null); builder.build(sonNode, (String) null, "../name", "name", null, null); builder.build(sonNode, (String) null, "../integerValue", "integerValue", null, null); @@ -269,7 +266,7 @@ public class NavigationTreeModelTest { NavigationTreeNode sonSonSonNode; // first son is a list of models - sonNode = builder.build(rootNode, (String) null, JAXXContextEntryDef.newListDef("models"), "models", null, null); + sonNode = builder.build(rootNode, (String) null, Util.newListContextEntryDef("models"), "models", null, null); // first son son is a model sonSonNode = builder.build(sonNode, (String) null, "..[1]", "0", null, null); @@ -327,7 +324,7 @@ public class NavigationTreeModelTest { Object value; value = model.getBean(contextPath); - Assert.assertNotNull(value); + Assert.assertNotNull("could not find bean for path : " + contextPath, value); Assert.assertEquals(expected, value); } -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.