]> source.dussan.org Git - vaadin-framework.git/commitdiff
#5946 / #5713 AbstractBeanContainer / BeanItemContainer changes based on review
authorHenri Sara <henri.sara@itmill.com>
Mon, 29 Nov 2010 13:45:19 +0000 (13:45 +0000)
committerHenri Sara <henri.sara@itmill.com>
Mon, 29 Nov 2010 13:45:19 +0000 (13:45 +0000)
svn changeset:16214/svn branch:6.5

src/com/vaadin/data/util/AbstractBeanContainer.java
src/com/vaadin/data/util/BeanItemContainer.java

index 47743cced26705d16f4b3e1ca644bf22a02a2a7d..bb49297c4f28d1075c046deaf22c8a5043be9e21 100644 (file)
@@ -807,8 +807,7 @@ public abstract class AbstractBeanContainer<IDTYPE, BT> implements Indexed,
      * 
      * @return Returns the new BeanItem or null if the operation fails.
      */
-    protected BeanItem<BT> addItemAt(int index, IDTYPE newItemId, BT bean)
-            throws UnsupportedOperationException {
+    protected BeanItem<BT> addItemAt(int index, IDTYPE newItemId, BT bean) {
         if (index < 0 || index > size()) {
             return null;
         } else if (index == 0) {
index 854534cad4e4bfd0abcdc582264ec7696739a83b..aaa9a66675a4a765bc4a502600bcf255b6c80459 100644 (file)
@@ -44,7 +44,8 @@ public class BeanItemContainer<BT> extends AbstractBeanContainer<BT, BT> {
      * @throws IllegalArgumentException
      *             If {@code type} is null
      */
-    public BeanItemContainer(Class<? extends BT> type) {
+    public BeanItemContainer(Class<? extends BT> type)
+            throws IllegalArgumentException {
         super(type);
     }
 
@@ -91,7 +92,7 @@ public class BeanItemContainer<BT> extends AbstractBeanContainer<BT, BT> {
             throws IllegalArgumentException {
         if (collection == null || collection.isEmpty()) {
             throw new IllegalArgumentException(
-                    "The collection passed to BeanItemContainer must not be null or empty");
+                    "The collection passed to BeanItemContainer constructor must not be null or empty. Use the other BeanItemContainer constructor.");
         }
         return (Class<? extends BT>) collection.iterator().next().getClass();
     }
@@ -166,8 +167,7 @@ public class BeanItemContainer<BT> extends AbstractBeanContainer<BT, BT> {
      * 
      * @see com.vaadin.data.Container.Ordered#addItemAfter(Object, Object)
      */
-    public BeanItem<BT> addItemAfter(Object previousItemId, Object newItemId)
-            throws UnsupportedOperationException {
+    public BeanItem<BT> addItemAfter(Object previousItemId, Object newItemId) {
         return super.addItemAfter((BT) previousItemId, (BT) newItemId,
                 (BT) newItemId);
     }
@@ -183,8 +183,7 @@ public class BeanItemContainer<BT> extends AbstractBeanContainer<BT, BT> {
      *            The bean to add to the container.
      * @return Returns the new BeanItem or null if the operation fails.
      */
-    public BeanItem<BT> addItemAt(int index, Object newItemId)
-            throws UnsupportedOperationException {
+    public BeanItem<BT> addItemAt(int index, Object newItemId) {
         return super.addItemAt(index, (BT) newItemId, (BT) newItemId);
     }
 
@@ -195,18 +194,8 @@ public class BeanItemContainer<BT> extends AbstractBeanContainer<BT, BT> {
      * 
      * @see com.vaadin.data.Container#addItem(Object)
      */
-    public BeanItem<BT> addItem(Object itemId)
-            throws UnsupportedOperationException {
-        BeanItem<BT> beanItem = null;
-
-        if (size() > 0) {
-            // add immediately after last visible item
-            int lastIndex = internalIndexOf(lastItemId());
-            beanItem = internalAddAt(lastIndex + 1, (BT) itemId, (BT) itemId);
-        } else {
-            // add at the beginning of an empty container
-            beanItem = internalAddAt(0, (BT) itemId, (BT) itemId);
-        }
+    public BeanItem<BT> addItem(Object itemId) {
+        BeanItem<BT> beanItem = addItem((BT) itemId, (BT) itemId);
 
         if (beanItem != null) {
             filterAll();