summaryrefslogtreecommitdiff
path: root/src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java
diff options
context:
space:
mode:
authorErich Schubert <erich@debian.org>2011-09-10 23:13:04 +0200
committerAndrej Shadura <andrewsh@debian.org>2019-03-09 22:30:30 +0000
commit31b594b746419717396c9daa8bf1863890739d82 (patch)
tree995a0a53ba8f00ce98f653a4f79f986b10b2b402 /src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java
parentf229d1a7ad8b055647160621068188381be54521 (diff)
parent6160961591bfbfeab2ea5f7c249f58c78e893347 (diff)
Import Debian changes 0.4.0~beta2-1
elki (0.4.0~beta2-1) unstable; urgency=low * New upstream release. * Build with OpenJDK 7, which just entered unstable. * Move to main, since we can now build with free software only. * Drop Vcs-Browser used incorrectly (pointing to upstream VCS, not Debian packaging) (Closes: #638516)
Diffstat (limited to 'src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java')
-rw-r--r--src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java68
1 files changed, 46 insertions, 22 deletions
diff --git a/src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java b/src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java
index 0ee71c75..cb78ed84 100644
--- a/src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java
+++ b/src/de/lmu/ifi/dbs/elki/datasource/bundle/MultipleObjectsBundle.java
@@ -1,26 +1,27 @@
package de.lmu.ifi.dbs.elki.datasource.bundle;
-/*
-This file is part of ELKI:
-Environment for Developing KDD-Applications Supported by Index-Structures
-
-Copyright (C) 2011
-Ludwig-Maximilians-Universität München
-Lehr- und Forschungseinheit für Datenbanksysteme
-ELKI Development Team
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU Affero General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU Affero General Public License for more details.
-
-You should have received a copy of the GNU Affero General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
+/*
+ This file is part of ELKI:
+ Environment for Developing KDD-Applications Supported by Index-Structures
+
+ Copyright (C) 2011
+ Ludwig-Maximilians-Universität München
+ Lehr- und Forschungseinheit für Datenbanksysteme
+ ELKI Development Team
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
import java.util.ArrayList;
import java.util.List;
@@ -136,10 +137,12 @@ public class MultipleObjectsBundle implements ObjectBundle {
*
* @param type Type information
* @param data Data to add
+ * @return This object, for chaining.
*/
- public void appendColumn(SimpleTypeInformation<?> type, List<?> data) {
+ public MultipleObjectsBundle appendColumn(SimpleTypeInformation<?> type, List<?> data) {
meta.add(type);
columns.add(data);
+ return this;
}
/**
@@ -183,6 +186,27 @@ public class MultipleObjectsBundle implements ObjectBundle {
}
/**
+ * Helper to add a single column to the bundle.
+ *
+ * @param <V1> First Object type
+ * @param <V2> Second Object type
+ * @param <V3> Third Object type
+ * @param type1 First type information
+ * @param data1 First data column to add
+ * @param type2 Second type information
+ * @param data2 Second data column to add
+ * @param type3 Third type information
+ * @param data3 Third data column to add
+ */
+ public static <V1, V2, V3> MultipleObjectsBundle makeSimple(SimpleTypeInformation<? super V1> type1, List<? extends V1> data1, SimpleTypeInformation<? super V2> type2, List<? extends V2> data2, SimpleTypeInformation<? super V3> type3, List<? extends V3> data3) {
+ MultipleObjectsBundle bundle = new MultipleObjectsBundle();
+ bundle.appendColumn(type1, data1);
+ bundle.appendColumn(type2, data2);
+ bundle.appendColumn(type3, data3);
+ return bundle;
+ }
+
+ /**
* Get an object row.
*
* @param row Row number