Skip to content
Snippets Groups Projects
Commit 80979e1a authored by ribeaudc's avatar ribeaudc
Browse files

[LMS-107]

add: - 'IProcedureAndDataTypeExtractor' parameter to 'IStorageProcessor.storeData'.

SVN: 5317
parent f2893e4b
No related branches found
No related tags found
No related merge requests found
...@@ -33,8 +33,11 @@ import ch.systemsx.cisd.common.collections.CollectionIO; ...@@ -33,8 +33,11 @@ import ch.systemsx.cisd.common.collections.CollectionIO;
*/ */
public final class DataSet implements IStorable public final class DataSet implements IStorable
{ {
static final String NO_PARENT_FOR_DERIVED_DATA_ASSERTION = static final String NO_PARENT_FOR_MEASURED_DATA =
"No parent can be specified for derived data."; "No parent could be specified for measured data.";
static final String PARENT_FOR_DERIVED_DATA =
"At least one parent must be specified for derived data.";
static final String FOLDER = "data_set"; static final String FOLDER = "data_set";
...@@ -104,11 +107,17 @@ public final class DataSet implements IStorable ...@@ -104,11 +107,17 @@ public final class DataSet implements IStorable
this.observableTypeCode = observableType; this.observableTypeCode = observableType;
if (isMeasured == false) if (isMeasured == false)
{ {
assert parentCodesOrNull != null && parentCodesOrNull.size() > 0 : "Unspecified parent codes."; if (parentCodesOrNull == null || parentCodesOrNull.size() == 0)
{
throw new IllegalArgumentException(PARENT_FOR_DERIVED_DATA);
}
this.parentCodes = parentCodesOrNull; this.parentCodes = parentCodesOrNull;
} else } else
{ {
assert parentCodesOrNull == null || parentCodesOrNull.size() == 0 : NO_PARENT_FOR_DERIVED_DATA_ASSERTION; if (parentCodesOrNull != null && parentCodesOrNull.size() > 0)
{
throw new IllegalArgumentException(String.format(NO_PARENT_FOR_MEASURED_DATA));
}
this.parentCodes = Collections.<String> emptyList(); this.parentCodes = Collections.<String> emptyList();
} }
this.producerCode = producerCodeOrNull; this.producerCode = producerCodeOrNull;
......
...@@ -98,10 +98,10 @@ public final class DataSetFileSystemTestCase extends AbstractFileSystemTestCase ...@@ -98,10 +98,10 @@ public final class DataSetFileSystemTestCase extends AbstractFileSystemTestCase
try try
{ {
new DataSet(dataSetCode, observableType, true, null, null, parentCodes); new DataSet(dataSetCode, observableType, true, null, null, parentCodes);
fail(DataSet.NO_PARENT_FOR_DERIVED_DATA_ASSERTION); fail(DataSet.NO_PARENT_FOR_MEASURED_DATA);
} catch (final AssertionError ex) } catch (final IllegalArgumentException ex)
{ {
assertEquals(DataSet.NO_PARENT_FOR_DERIVED_DATA_ASSERTION, ex.getMessage()); assertEquals(DataSet.NO_PARENT_FOR_MEASURED_DATA, ex.getMessage());
} }
final DataSet dataSet = final DataSet dataSet =
new DataSet(dataSetCode, observableType, false, null, null, parentCodes); new DataSet(dataSetCode, observableType, false, null, null, parentCodes);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment