]> source.dussan.org Git - vaadin-framework.git/commitdiff
Improve listing and data source Javadocs a bit
authorJohannes Dahlström <johannesd@vaadin.com>
Mon, 5 Sep 2016 16:40:31 +0000 (19:40 +0300)
committerIlia Motornyi <elmot@vaadin.com>
Wed, 7 Sep 2016 07:20:30 +0000 (07:20 +0000)
Change-Id: Ie3821df9bcb13af5f3955776a11d33fd2c16020e

client/src/main/java/com/vaadin/client/connectors/data/HasDataSource.java
server/src/main/java/com/vaadin/data/Listing.java
server/src/main/java/com/vaadin/server/data/DataSource.java
server/src/main/java/com/vaadin/server/data/ListDataSource.java

index 79a70a1fe9b583c45b217b830db8181ff110519e..f32dae4ac0d239cab02dfb4bb50d9c6ddbcaba9b 100644 (file)
@@ -20,7 +20,11 @@ import com.vaadin.client.data.DataSource;
 import elemental.json.JsonObject;
 
 /**
- * Marker interface for Connectors that have a {@link DataSource}.
+ * A marker interface for connectors that have a data source.
+ * 
+ * @author Vaadin Ltd.
+ * @see DataSource
+ * @since 8.0
  */
 public interface HasDataSource {
 
@@ -28,14 +32,14 @@ public interface HasDataSource {
      * Sets the data source for this Connector.
      *
      * @param dataSource
-     *            new data source
+     *            the new data source, not null
      */
     void setDataSource(DataSource<JsonObject> dataSource);
 
     /**
      * Gets the current data source for this Connector.
      *
-     * @return data source
+     * @return the data source, not null
      */
     DataSource<JsonObject> getDataSource();
 }
index 8d35a231decd6cf091f1be03d1f09df3502b4125..aa410e9dc7d200e23f231ed53a3cc91369bff911 100644 (file)
@@ -26,6 +26,7 @@ import com.vaadin.shared.data.selection.SelectionModel;
  * A generic interface for components that show a list of data.
  *
  * @author Vaadin Ltd.
+ * 
  * @param <T>
  *            the item data type
  * @param <SELECTIONMODEL>
@@ -62,7 +63,7 @@ public interface Listing<T, SELECTIONMODEL extends SelectionModel<T>>
      * Sets the collection of data items of this listing.
      *
      * @param items
-     *            the data items to display
+     *            the data items to display, not null
      *
      */
     default void setItems(Collection<T> items) {
@@ -75,7 +76,7 @@ public interface Listing<T, SELECTIONMODEL extends SelectionModel<T>>
      * @param items
      *            the data items to display
      */
-    default void setItems(T... items) {
+    default void setItems(@SuppressWarnings("unchecked") T... items) {
         setDataSource(DataSource.create(items));
     }
 
index ea9c24acbb4fc752423f96d606599ce88fed7cd3..a6147bbade16b477794699306fed3aa618d4ae17 100644 (file)
@@ -25,12 +25,15 @@ import java.util.stream.Stream;
  * Minimal DataSource API for communication between the DataProvider and a back
  * end service.
  *
- * @since
+ * @author Vaadin Ltd.
+ * 
  * @param <T>
  *            data type
  *
  * @see ListDataSource
  * @see BackEndDataSource
+ *
+ * @since
  */
 public interface DataSource<T>
         extends Function<Query, Stream<T>>, Serializable {
@@ -56,26 +59,30 @@ public interface DataSource<T>
      * This method creates a new {@link ListDataSource} from a given Collection.
      * The ListDataSource creates a protective List copy of all the contents in
      * the Collection.
-     *
-     * @param data
-     *            collection of data
-     * @return in-memory data source
+     * 
+     * @param <T>
+     *            the data item type
+     * @param items
+     *            the collection of data, not null
+     * @return a new list data source
      */
-    public static <T> ListDataSource<T> create(Collection<T> data) {
-        return new ListDataSource<>(data);
+    public static <T> ListDataSource<T> create(Collection<T> items) {
+        return new ListDataSource<>(items);
     }
 
     /**
      * This method creates a new {@link ListDataSource} from given objects.The
      * ListDataSource creates a protective List copy of all the contents in the
      * array.
-     *
-     * @param data
-     *            data objects
-     * @return in-memory data source
+     * 
+     * @param <T>
+     *            the data item type
+     * @param items
+     *            the data items
+     * @return a new list data source
      */
     @SafeVarargs
-    public static <T> ListDataSource<T> create(T... data) {
-        return new ListDataSource<>(Arrays.asList(data));
+    public static <T> ListDataSource<T> create(T... items) {
+        return new ListDataSource<>(Arrays.asList(items));
     }
-}
\ No newline at end of file
+}
index 93add67ad495f015e7a2019eee5fbc7dcfb484e6..f3ecc771ec3c0946ea3c7c7f05a01e8e2084f4a5 100644 (file)
@@ -19,6 +19,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Comparator;
 import java.util.List;
+import java.util.Objects;
 import java.util.function.Function;
 import java.util.stream.Stream;
 
@@ -38,11 +39,12 @@ public class ListDataSource<T> implements DataSource<T> {
      * Constructs a new ListDataSource. This method makes a protective copy of
      * the contents of the Collection.
      *
-     * @param collection
-     *            initial data
+     * @param items
+     *            the initial data, not null
      */
-    public ListDataSource(Collection<T> collection) {
-        final List<T> backend = new ArrayList<>(collection);
+    public ListDataSource(Collection<T> items) {
+        Objects.requireNonNull(items, "items cannot be null");
+        final List<T> backend = new ArrayList<>(items);
         request = query -> backend.stream();
         size = backend.size();
     }