From 6295641ae1b0ed1c14541a85de5a82cdc7f2f827 Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 22 Dec 2011 10:20:57 +0200 Subject: [PATCH] Renamed FieldBinder -> FieldGroup, BeanFieldBinder -> BeanFieldGroup based on API review meeting --- ...anFieldBinder.java => BeanFieldGroup.java} | 4 +-- .../{FieldBinder.java => FieldGroup.java} | 35 ++++++++++++------- .../vaadin/data/fieldbinder/FormBuilder.java | 8 ++--- .../AbstractBeanFieldBinderTest.java | 10 +++--- .../tests/fieldbinder/BasicPersonForm.java | 16 ++++----- .../FieldBinderWithBeanValidation.java | 10 +++--- .../FormBuilderWithNestedProperties.java | 6 ++-- .../fieldbinder/FormWithNestedProperties.java | 4 +-- 8 files changed, 52 insertions(+), 41 deletions(-) rename src/com/vaadin/data/fieldbinder/{BeanFieldBinder.java => BeanFieldGroup.java} (95%) rename src/com/vaadin/data/fieldbinder/{FieldBinder.java => FieldGroup.java} (92%) diff --git a/src/com/vaadin/data/fieldbinder/BeanFieldBinder.java b/src/com/vaadin/data/fieldbinder/BeanFieldGroup.java similarity index 95% rename from src/com/vaadin/data/fieldbinder/BeanFieldBinder.java rename to src/com/vaadin/data/fieldbinder/BeanFieldGroup.java index 2b15058500..a01c6e0879 100644 --- a/src/com/vaadin/data/fieldbinder/BeanFieldBinder.java +++ b/src/com/vaadin/data/fieldbinder/BeanFieldGroup.java @@ -8,11 +8,11 @@ import com.vaadin.data.util.BeanItem; import com.vaadin.data.validator.BeanValidationValidator; import com.vaadin.ui.Field; -public class BeanFieldBinder extends FieldBinder { +public class BeanFieldGroup extends FieldGroup { private Class beanType; - public BeanFieldBinder(Class beanType) { + public BeanFieldGroup(Class beanType) { this.beanType = beanType; } diff --git a/src/com/vaadin/data/fieldbinder/FieldBinder.java b/src/com/vaadin/data/fieldbinder/FieldGroup.java similarity index 92% rename from src/com/vaadin/data/fieldbinder/FieldBinder.java rename to src/com/vaadin/data/fieldbinder/FieldGroup.java index 3df8794079..a5cf6b993e 100644 --- a/src/com/vaadin/data/fieldbinder/FieldBinder.java +++ b/src/com/vaadin/data/fieldbinder/FieldGroup.java @@ -20,20 +20,31 @@ import com.vaadin.data.fieldbinder.FormBuilder.FormBuilderException; import com.vaadin.data.util.TransactionalPropertyWrapper; import com.vaadin.tools.ReflectTools; import com.vaadin.ui.Field; +import com.vaadin.ui.Form; /** - * FIXME Javadoc - * - * See also {@link BeanFieldBinder} which makes binding fields easier when your - * data is in a bean. + * FieldGroup provides an easy way of binding fields to data and handling + * commits of these fields. + *

+ * The functionality of FieldGroup is similar to {@link Form} but + * {@link FieldGroup} does not handle layouts in any way. The typical use case + * is to create a layout outside the FieldGroup and then use FieldGroup to bind + * the fields to a data source. + *

+ *

+ * {@link FieldGroup} is not a UI component so it cannot be added to a layout. + * Using the buildAndBind methods {@link FieldGroup} can create fields for you + * using a FieldGroupFieldFactory but you still have to add them to the correct + * position in your layout. + *

* * @author Vaadin Ltd * @version @version@ * @since 7.0 */ -public class FieldBinder implements Serializable { +public class FieldGroup implements Serializable { - private static final Logger logger = Logger.getLogger(FieldBinder.class + private static final Logger logger = Logger.getLogger(FieldGroup.class .getName()); private Item itemDataSource; @@ -51,7 +62,7 @@ public class FieldBinder implements Serializable { * data source for the field binder. * */ - public FieldBinder() { + public FieldGroup() { } @@ -61,7 +72,7 @@ public class FieldBinder implements Serializable { * @param itemDataSource * The data source to bind the fields to */ - public FieldBinder(Item itemDataSource) { + public FieldGroup(Item itemDataSource) { setItemDataSource(itemDataSource); } @@ -523,7 +534,7 @@ public class FieldBinder implements Serializable { } /** - * Returns a list of all commit handlers for this {@link FieldBinder}. + * Returns a list of all commit handlers for this {@link FieldGroup}. *

* Use {@link #addCommitHandler(CommitHandler)} and * {@link #removeCommitHandler(CommitHandler)} to register or unregister a @@ -572,9 +583,9 @@ public class FieldBinder implements Serializable { * */ public static class CommitEvent implements Serializable { - private FieldBinder fieldBinder; + private FieldGroup fieldBinder; - private CommitEvent(FieldBinder fieldBinder) { + private CommitEvent(FieldGroup fieldBinder) { this.fieldBinder = fieldBinder; } @@ -583,7 +594,7 @@ public class FieldBinder implements Serializable { * * @return The FieldBinder that is being committed. */ - public FieldBinder getFieldBinder() { + public FieldGroup getFieldBinder() { return fieldBinder; } diff --git a/src/com/vaadin/data/fieldbinder/FormBuilder.java b/src/com/vaadin/data/fieldbinder/FormBuilder.java index 4597d520b3..ccf060ec97 100644 --- a/src/com/vaadin/data/fieldbinder/FormBuilder.java +++ b/src/com/vaadin/data/fieldbinder/FormBuilder.java @@ -7,7 +7,7 @@ import java.io.Serializable; import java.lang.reflect.InvocationTargetException; import java.util.logging.Logger; -import com.vaadin.data.fieldbinder.FieldBinder.BindException; +import com.vaadin.data.fieldbinder.FieldGroup.BindException; import com.vaadin.tools.ReflectTools; import com.vaadin.ui.DefaultFieldFactory; import com.vaadin.ui.Field; @@ -21,7 +21,7 @@ import com.vaadin.ui.Field; public class FormBuilder implements Serializable { private FormBuilderFieldFactory fieldFactory = new DefaultFormBuilderFieldFactory(); - private FieldBinder fieldBinder; + private FieldGroup fieldBinder; private static final Logger logger = Logger.getLogger(FormBuilder.class .getName()); @@ -32,14 +32,14 @@ public class FormBuilder implements Serializable { * The FieldBinder to use for binding the fields to the data * source */ - public FormBuilder(FieldBinder fieldBinder) { + public FormBuilder(FieldGroup fieldBinder) { this.fieldBinder = fieldBinder; } /** * TODO: javadoc */ - protected FieldBinder getFieldBinder() { + protected FieldGroup getFieldBinder() { return fieldBinder; } diff --git a/tests/testbench/com/vaadin/tests/fieldbinder/AbstractBeanFieldBinderTest.java b/tests/testbench/com/vaadin/tests/fieldbinder/AbstractBeanFieldBinderTest.java index b35d85995c..8b4dac2d6f 100644 --- a/tests/testbench/com/vaadin/tests/fieldbinder/AbstractBeanFieldBinderTest.java +++ b/tests/testbench/com/vaadin/tests/fieldbinder/AbstractBeanFieldBinderTest.java @@ -1,7 +1,7 @@ package com.vaadin.tests.fieldbinder; -import com.vaadin.data.fieldbinder.BeanFieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder.CommitException; +import com.vaadin.data.fieldbinder.BeanFieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup.CommitException; import com.vaadin.tests.components.TestBase; import com.vaadin.tests.util.Log; import com.vaadin.ui.Button; @@ -16,7 +16,7 @@ public abstract class AbstractBeanFieldBinderTest extends TestBase { private Button discardButton; private Button showBeanButton; - private BeanFieldBinder fieldBinder; + private BeanFieldGroup fieldBinder; @Override protected void setup() { @@ -73,11 +73,11 @@ public abstract class AbstractBeanFieldBinderTest extends TestBase { return commitButton; } - protected BeanFieldBinder getFieldBinder() { + protected BeanFieldGroup getFieldBinder() { return fieldBinder; } - protected void setFieldBinder(BeanFieldBinder beanFieldBinder) { + protected void setFieldBinder(BeanFieldGroup beanFieldBinder) { fieldBinder = beanFieldBinder; } diff --git a/tests/testbench/com/vaadin/tests/fieldbinder/BasicPersonForm.java b/tests/testbench/com/vaadin/tests/fieldbinder/BasicPersonForm.java index de7193d849..24901e655c 100644 --- a/tests/testbench/com/vaadin/tests/fieldbinder/BasicPersonForm.java +++ b/tests/testbench/com/vaadin/tests/fieldbinder/BasicPersonForm.java @@ -1,10 +1,10 @@ package com.vaadin.tests.fieldbinder; -import com.vaadin.data.fieldbinder.BeanFieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder.CommitEvent; -import com.vaadin.data.fieldbinder.FieldBinder.CommitException; -import com.vaadin.data.fieldbinder.FieldBinder.CommitHandler; +import com.vaadin.data.fieldbinder.BeanFieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup.CommitEvent; +import com.vaadin.data.fieldbinder.FieldGroup.CommitException; +import com.vaadin.data.fieldbinder.FieldGroup.CommitHandler; import com.vaadin.data.fieldbinder.FormBuilder; import com.vaadin.data.util.BeanItem; import com.vaadin.data.util.converter.StringToBooleanConverter; @@ -65,7 +65,7 @@ public class BasicPersonForm extends TestBase { super("Configuration"); BeanItem bi = new BeanItem( configuration); - FieldBinder confBinder = new FieldBinder(bi); + FieldGroup confBinder = new FieldGroup(bi); confBinder.setItemDataSource(bi); confBinder.setFieldsBuffered(false); @@ -83,7 +83,7 @@ public class BasicPersonForm extends TestBase { Panel confPanel = new ConfigurationPanel(); addComponent(confPanel); - final FieldBinder binder = new BeanFieldBinder(Person.class); + final FieldGroup binder = new BeanFieldGroup(Person.class); binder.addCommitHandler(new CommitHandler() { public void preCommit(CommitEvent commitEvent) @@ -176,7 +176,7 @@ public class BasicPersonForm extends TestBase { binder.setItemDataSource(new BeanItem(p)); } - public static Person getPerson(FieldBinder binder) { + public static Person getPerson(FieldGroup binder) { return ((BeanItem) binder.getItemDataSource()).getBean(); } diff --git a/tests/testbench/com/vaadin/tests/fieldbinder/FieldBinderWithBeanValidation.java b/tests/testbench/com/vaadin/tests/fieldbinder/FieldBinderWithBeanValidation.java index 43ed23e5ad..9af14cb9fd 100644 --- a/tests/testbench/com/vaadin/tests/fieldbinder/FieldBinderWithBeanValidation.java +++ b/tests/testbench/com/vaadin/tests/fieldbinder/FieldBinderWithBeanValidation.java @@ -1,8 +1,8 @@ package com.vaadin.tests.fieldbinder; -import com.vaadin.data.fieldbinder.BeanFieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder.CommitException; +import com.vaadin.data.fieldbinder.BeanFieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup.CommitException; import com.vaadin.data.fieldbinder.FormBuilder; import com.vaadin.data.util.BeanItem; import com.vaadin.tests.components.TestBase; @@ -33,7 +33,7 @@ public class FieldBinderWithBeanValidation extends TestBase { protected void setup() { addComponent(log); - final BeanFieldBinder binder = new BeanFieldBinder( + final BeanFieldGroup binder = new BeanFieldGroup( PersonWithBeanValidationAnnotations.class); FormBuilder builder = new FormBuilder(binder); @@ -88,7 +88,7 @@ public class FieldBinderWithBeanValidation extends TestBase { p)); } - public static Person getPerson(FieldBinder binder) { + public static Person getPerson(FieldGroup binder) { return ((BeanItem) binder.getItemDataSource()).getBean(); } diff --git a/tests/testbench/com/vaadin/tests/fieldbinder/FormBuilderWithNestedProperties.java b/tests/testbench/com/vaadin/tests/fieldbinder/FormBuilderWithNestedProperties.java index 72f3d4f343..284d69aa81 100644 --- a/tests/testbench/com/vaadin/tests/fieldbinder/FormBuilderWithNestedProperties.java +++ b/tests/testbench/com/vaadin/tests/fieldbinder/FormBuilderWithNestedProperties.java @@ -1,7 +1,7 @@ package com.vaadin.tests.fieldbinder; -import com.vaadin.data.fieldbinder.BeanFieldBinder; -import com.vaadin.data.fieldbinder.FieldBinder; +import com.vaadin.data.fieldbinder.BeanFieldGroup; +import com.vaadin.data.fieldbinder.FieldGroup; import com.vaadin.data.fieldbinder.FormBuilder; import com.vaadin.data.fieldbinder.PropertyId; import com.vaadin.data.util.BeanItem; @@ -21,7 +21,7 @@ public class FormBuilderWithNestedProperties extends TestBase { @Override protected void setup() { - FieldBinder fieldBinder = new BeanFieldBinder(Person.class); + FieldGroup fieldBinder = new BeanFieldGroup(Person.class); FormBuilder b = new FormBuilder(fieldBinder); b.buildAndBindFields(this); diff --git a/tests/testbench/com/vaadin/tests/fieldbinder/FormWithNestedProperties.java b/tests/testbench/com/vaadin/tests/fieldbinder/FormWithNestedProperties.java index 0d29cc3004..69eac04d48 100644 --- a/tests/testbench/com/vaadin/tests/fieldbinder/FormWithNestedProperties.java +++ b/tests/testbench/com/vaadin/tests/fieldbinder/FormWithNestedProperties.java @@ -1,6 +1,6 @@ package com.vaadin.tests.fieldbinder; -import com.vaadin.data.fieldbinder.BeanFieldBinder; +import com.vaadin.data.fieldbinder.BeanFieldGroup; import com.vaadin.data.fieldbinder.FormBuilder; import com.vaadin.data.fieldbinder.PropertyId; import com.vaadin.tests.data.bean.Address; @@ -31,7 +31,7 @@ public class FormWithNestedProperties extends AbstractBeanFieldBinderTest { protected void setup() { super.setup(); - setFieldBinder(new BeanFieldBinder(Person.class)); + setFieldBinder(new BeanFieldGroup(Person.class)); getFieldBinder().bindFields(this); country = new FormBuilder(getFieldBinder()).buildAndBind("country", "address.country", NativeSelect.class); -- 2.39.5