From f2d7a7b3f18beec9c193111fab8fa425d7862905 Mon Sep 17 00:00:00 2001
From: vkovtun <vkovtun@ethz.ch>
Date: Thu, 24 Aug 2023 15:50:05 +0200
Subject: [PATCH] SSDM-13926: Fixing failing JS tests.

---
 .../asapi/v3/dto/exporter/ExportResult.java   | 21 ++++++++++-
 .../v3/dto/exporter/data/ExportData.java      | 12 ++++++
 .../dto/exporter/data/ExportablePermId.java   | 17 +++++++--
 .../v3/dto/exporter/data/SelectedFields.java  | 12 ++++++
 .../dto/exporter/options/ExportOptions.java   | 37 +++++++++++++++++--
 .../v3/dto/importer/ImportOperation.java      | 12 ++++++
 .../v3/dto/importer/data/ImportScript.java    | 12 ++++++
 .../importer/data/UncompressedImportData.java | 18 +++++++++
 .../v3/dto/importer/data/ZipImportData.java   | 12 ++++++
 .../dto/importer/options/ImportOptions.java   |  6 +++
 .../src/v3/as/dto/exporter/ExportResult.js    | 17 ++++++---
 .../src/v3/as/dto/exporter/data/ExportData.js | 12 ++++--
 .../as/dto/exporter/data/ExportablePermId.js  | 13 +++++--
 .../v3/as/dto/exporter/data/SelectedFields.js | 12 ++++--
 .../as/dto/exporter/options/ExportOptions.js  | 28 ++++++++++----
 .../src/v3/as/dto/importer/ImportOperation.js | 12 ++++--
 .../v3/as/dto/importer/data/ImportScript.js   | 12 ++++--
 .../importer/data/UncompressedImportData.js   | 17 +++++++--
 .../v3/as/dto/importer/data/ZipImportData.js  | 12 ++++--
 .../as/dto/importer/options/ImportOptions.js  |  7 +++-
 test-api-openbis-javascript/README.txt        |  2 +-
 21 files changed, 256 insertions(+), 47 deletions(-)

diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/ExportResult.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/ExportResult.java
index bd88516237c..4ad96eb8fe1 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/ExportResult.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/ExportResult.java
@@ -32,10 +32,15 @@ public class ExportResult implements Serializable
     private static final long serialVersionUID = 1L;
 
     @JsonProperty
-    final String downloadURL;
+    private String downloadURL;
 
     @JsonProperty
-    final Collection<String> warnings;
+    private Collection<String> warnings;
+
+    @SuppressWarnings("unused")
+    public ExportResult()
+    {
+    }
 
     public ExportResult(final String downloadURL, final Collection<String> warnings)
     {
@@ -49,12 +54,24 @@ public class ExportResult implements Serializable
         return downloadURL;
     }
 
+    @JsonIgnore
+    public void setDownloadURL(final String downloadURL)
+    {
+        this.downloadURL = downloadURL;
+    }
+
     @JsonIgnore
     public Collection<String> getWarnings()
     {
         return warnings;
     }
 
+    @JsonIgnore
+    public void setWarnings(final Collection<String> warnings)
+    {
+        this.warnings = warnings;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportData.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportData.java
index f267aa79e55..17cfeedd815 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportData.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportData.java
@@ -54,12 +54,24 @@ public class ExportData implements Serializable
         return permIds;
     }
 
+    @JsonIgnore
+    public void setPermIds(final List<ExportablePermId> permIds)
+    {
+        this.permIds = permIds;
+    }
+
     @JsonIgnore
     public IExportableFields getFields()
     {
         return fields;
     }
 
+    @JsonIgnore
+    public void setFields(final IExportableFields fields)
+    {
+        this.fields = fields;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportablePermId.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportablePermId.java
index cc982e5d5a8..6f5b5da74c1 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportablePermId.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/ExportablePermId.java
@@ -17,7 +17,6 @@
 package ch.ethz.sis.openbis.generic.asapi.v3.dto.exporter.data;
 
 import java.io.Serializable;
-import java.util.Objects;
 
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.fasterxml.jackson.annotation.JsonProperty;
@@ -45,8 +44,8 @@ public class ExportablePermId implements Serializable
 
     public ExportablePermId(final ExportableKind exportableKind, final ObjectPermId permId)
     {
-        this.exportableKind = Objects.requireNonNull(exportableKind);
-        this.permId = Objects.requireNonNull(permId);
+        this.exportableKind = exportableKind;
+        this.permId = permId;
     }
 
     @JsonIgnore
@@ -55,12 +54,24 @@ public class ExportablePermId implements Serializable
         return exportableKind;
     }
 
+    @JsonIgnore
+    public void setExportableKind(final ExportableKind exportableKind)
+    {
+        this.exportableKind = exportableKind;
+    }
+
     @JsonIgnore
     public ObjectPermId getPermId()
     {
         return permId;
     }
 
+    @JsonIgnore
+    public void setPermId(final ObjectPermId permId)
+    {
+        this.permId = permId;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/SelectedFields.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/SelectedFields.java
index 161289a3f15..9b7ae319dab 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/SelectedFields.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/data/SelectedFields.java
@@ -55,12 +55,24 @@ public class SelectedFields implements Serializable, IExportableFields
         return attributes;
     }
 
+    @JsonIgnore
+    public void setAttributes(final List<Attribute> attributes)
+    {
+        this.attributes = attributes;
+    }
+
     @JsonIgnore
     public List<PropertyTypePermId> getProperties()
     {
         return properties;
     }
 
+    @JsonIgnore
+    public void setProperties(final List<PropertyTypePermId> properties)
+    {
+        this.properties = properties;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/options/ExportOptions.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/options/ExportOptions.java
index 0685994b90a..e544dec89c4 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/options/ExportOptions.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/exporter/options/ExportOptions.java
@@ -32,16 +32,21 @@ public class ExportOptions implements Serializable
     private static final long serialVersionUID = 1L;
 
     @JsonProperty
-    final Set<ExportFormat> formats;
+    private Set<ExportFormat> formats;
 
     @JsonProperty
-    final XlsTextFormat xlsTextFormat;
+    private XlsTextFormat xlsTextFormat;
 
     @JsonProperty
-    final Boolean withReferredTypes;
+    private Boolean withReferredTypes;
 
     @JsonProperty
-    final Boolean withImportCompatibility;
+    private Boolean withImportCompatibility;
+
+    @SuppressWarnings("unused")
+    public ExportOptions()
+    {
+    }
 
     public ExportOptions(final Set<ExportFormat> formats, final XlsTextFormat xlsTextFormat, final Boolean withReferredTypes,
             final Boolean withImportCompatibility)
@@ -58,24 +63,48 @@ public class ExportOptions implements Serializable
         return formats;
     }
 
+    @JsonIgnore
+    public void setFormats(final Set<ExportFormat> formats)
+    {
+        this.formats = formats;
+    }
+
     @JsonIgnore
     public XlsTextFormat getXlsTextFormat()
     {
         return xlsTextFormat;
     }
 
+    @JsonIgnore
+    public void setXlsTextFormat(final XlsTextFormat xlsTextFormat)
+    {
+        this.xlsTextFormat = xlsTextFormat;
+    }
+
     @JsonIgnore
     public Boolean isWithReferredTypes()
     {
         return withReferredTypes;
     }
 
+    @JsonIgnore
+    public void setWithReferredTypes(final Boolean withReferredTypes)
+    {
+        this.withReferredTypes = withReferredTypes;
+    }
+
     @JsonIgnore
     public Boolean isWithImportCompatibility()
     {
         return withImportCompatibility;
     }
 
+    @JsonIgnore
+    public void setWithImportCompatibility(final Boolean withImportCompatibility)
+    {
+        this.withImportCompatibility = withImportCompatibility;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/ImportOperation.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/ImportOperation.java
index 24e853e60ae..509ee42d978 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/ImportOperation.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/ImportOperation.java
@@ -63,12 +63,24 @@ public class ImportOperation implements Serializable, IOperation
         return importData;
     }
 
+    @JsonIgnore
+    public void setImportData(final IImportData importData)
+    {
+        this.importData = importData;
+    }
+
     @JsonIgnore
     public ImportOptions getImportOptions()
     {
         return importOptions;
     }
 
+    @JsonIgnore
+    public void setImportOptions(final ImportOptions importOptions)
+    {
+        this.importOptions = importOptions;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ImportScript.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ImportScript.java
index a8d051d76e5..4307d2ff86c 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ImportScript.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ImportScript.java
@@ -53,12 +53,24 @@ public class ImportScript implements Serializable
         return name;
     }
 
+    @JsonIgnore
+    public void setName(final String name)
+    {
+        this.name = name;
+    }
+
     @JsonIgnore
     public String getSource()
     {
         return source;
     }
 
+    @JsonIgnore
+    public void setSource(final String source)
+    {
+        this.source = source;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/UncompressedImportData.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/UncompressedImportData.java
index d2451161317..2b48cd2939d 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/UncompressedImportData.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/UncompressedImportData.java
@@ -57,18 +57,36 @@ public class UncompressedImportData implements Serializable, IImportData
         return format;
     }
 
+    @JsonIgnore
+    public void setFormat(final ImportFormat format)
+    {
+        this.format = format;
+    }
+
     @JsonIgnore
     public byte[] getFile()
     {
         return file;
     }
 
+    @JsonIgnore
+    public void setFile(final byte[] file)
+    {
+        this.file = file;
+    }
+
     @JsonIgnore
     public Collection<ImportScript> getScripts()
     {
         return scripts;
     }
 
+    @JsonIgnore
+    public void setScripts(final Collection<ImportScript> scripts)
+    {
+        this.scripts = scripts;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ZipImportData.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ZipImportData.java
index 9fab7fbeca4..d3a95e6bbd3 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ZipImportData.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/data/ZipImportData.java
@@ -52,12 +52,24 @@ public class ZipImportData implements Serializable, IImportData
         return format;
     }
 
+    @JsonIgnore
+    public void setFormat(final ImportFormat format)
+    {
+        this.format = format;
+    }
+
     @JsonIgnore
     public byte[] getFile()
     {
         return file;
     }
 
+    @JsonIgnore
+    public void setFile(final byte[] file)
+    {
+        this.file = file;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/options/ImportOptions.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/options/ImportOptions.java
index b4cdf993740..711e61a2f9b 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/options/ImportOptions.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/asapi/v3/dto/importer/options/ImportOptions.java
@@ -49,6 +49,12 @@ public class ImportOptions implements Serializable
         return mode;
     }
 
+    @JsonIgnore
+    public void setMode(final ImportMode mode)
+    {
+        this.mode = mode;
+    }
+
     @Override
     public String toString()
     {
diff --git a/api-openbis-javascript/src/v3/as/dto/exporter/ExportResult.js b/api-openbis-javascript/src/v3/as/dto/exporter/ExportResult.js
index 1b33decd4a9..f3b17801d8e 100644
--- a/api-openbis-javascript/src/v3/as/dto/exporter/ExportResult.js
+++ b/api-openbis-javascript/src/v3/as/dto/exporter/ExportResult.js
@@ -16,10 +16,9 @@
  */
 
 define(["stjs"], function (stjs) {
-  var ExportResult = function (downloadURL, warnings) {
-    this.downloadUrl = downloadURL;
-    this.warnings = warnings;
+  var ExportResult = function () {
   };
+
   stjs.extend(
     ExportResult,
     null,
@@ -28,19 +27,27 @@ define(["stjs"], function (stjs) {
       prototype["@type"] = "as.dto.exporter.ExportResult";
 
       constructor.serialVersionUID = 1;
-      prototype.downloadUrl = null;
+      prototype.downloadURL = null;
       prototype.warnings = null;
 
       prototype.getDownloadURL = function() {
         return this.downloadURL;
       };
 
+      prototype.setDownloadURL = function(downloadURL) {
+        this.downloadURL = downloadURL;
+      };
+
       prototype.getWarnings = function() {
         return this.warnings;
       };
+
+      prototype.setWarnings = function(warnings) {
+        this.warnings = warnings;
+      };
     },
     {
-      downloadUrl: "String",
+      downloadURL: "String",
       warnings: {
         name: "Collection",
         arguments: ["String"]
diff --git a/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportData.js b/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportData.js
index 70e238e2cef..81ad0315879 100644
--- a/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportData.js
+++ b/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportData.js
@@ -16,9 +16,7 @@
  */
 
 define(["stjs"], function (stjs) {
-  var ExportData = function(permIds, fields) {
-    this.permIds = permIds;
-    this.fields = fields;
+  var ExportData = function() {
   }
 
   stjs.extend(
@@ -36,9 +34,17 @@ define(["stjs"], function (stjs) {
         return this.permIds;
       };
 
+      prototype.setPermIds = function(permIds) {
+        this.permIds = permIds;
+      };
+
       prototype.getFields = function() {
         return this.fields;
       };
+
+      prototype.setFields = function(fields) {
+        this.fields = fields;
+      };
     },
     {
       permIds: {
diff --git a/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportablePermId.js b/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportablePermId.js
index 327b30c3a6e..df6affab0fa 100644
--- a/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportablePermId.js
+++ b/api-openbis-javascript/src/v3/as/dto/exporter/data/ExportablePermId.js
@@ -16,9 +16,7 @@
  */
 
 define(["stjs"], function (stjs) {
-  var ExportablePermId = function(exportableKind, permId) {
-    this.exportableKind = exportableKind;
-    this.permId = permId;
+  var ExportablePermId = function() {
   }
 
   stjs.extend(
@@ -36,9 +34,18 @@ define(["stjs"], function (stjs) {
         return this.exportableKind;
       };
 
+      prototype.setExportableKind = function(exportableKind) {
+        this.exportableKind = exportableKind;
+      };
+
       prototype.getPermId = function() {
         return this.permId;
       };
+
+      prototype.setPermId = function(permId) {
+        this.permId = permId;
+      };
+
     },
     {
       exportableKind: "ExportableKind",
diff --git a/api-openbis-javascript/src/v3/as/dto/exporter/data/SelectedFields.js b/api-openbis-javascript/src/v3/as/dto/exporter/data/SelectedFields.js
index 74c4d3c9f81..525b2bbb36e 100644
--- a/api-openbis-javascript/src/v3/as/dto/exporter/data/SelectedFields.js
+++ b/api-openbis-javascript/src/v3/as/dto/exporter/data/SelectedFields.js
@@ -16,9 +16,7 @@
  */
 
 define(["stjs", "as/dto/exporter/data/IExportableFields"], function (stjs, IExportableFields) {
-  var SelectedFields = function(attributes, properties) {
-    this.attributes = attributes;
-    this.properties = properties;
+  var SelectedFields = function() {
   }
 
   stjs.extend(
@@ -36,9 +34,17 @@ define(["stjs", "as/dto/exporter/data/IExportableFields"], function (stjs, IExpo
         return this.attributes;
       };
 
+      prototype.setAttributes = function(attributes) {
+        this.attributes = attributes;
+      };
+
       prototype.getProperties = function() {
         return this.properties;
       };
+
+      prototype.setProperties = function(properties) {
+        this.properties = properties;
+      };
     },
     {
       attributes: {
diff --git a/api-openbis-javascript/src/v3/as/dto/exporter/options/ExportOptions.js b/api-openbis-javascript/src/v3/as/dto/exporter/options/ExportOptions.js
index 6a1e0881235..005f53ddb45 100644
--- a/api-openbis-javascript/src/v3/as/dto/exporter/options/ExportOptions.js
+++ b/api-openbis-javascript/src/v3/as/dto/exporter/options/ExportOptions.js
@@ -16,19 +16,15 @@
  */
 
 define(["stjs"], function (stjs) {
-  var SelectedFields = function(formats, xlsTextFormat, withReferredTypes, withImportCompatibility) {
-    this.formats = formats;
-    this.xlsTextFormat = xlsTextFormat;
-    this.withReferredTypes = withReferredTypes;
-    this.withImportCompatibility = withImportCompatibility;
+  var ExportOptions = function() {
   }
 
   stjs.extend(
-    SelectedFields,
+    ExportOptions,
     null,
     [],
     function (constructor, prototype) {
-      prototype["@type"] = "as.dto.exporter.options.SelectedFields";
+      prototype["@type"] = "as.dto.exporter.options.ExportOptions";
 
       constructor.serialVersionUID = 1;
       prototype.formats = null;
@@ -40,17 +36,33 @@ define(["stjs"], function (stjs) {
         return this.formats;
       };
 
+      prototype.setFormats = function(formats) {
+        this.formats = formats;
+      };
+
       prototype.getXlsTextFormat = function() {
         return this.xlsTextFormat;
       };
 
+      prototype.setXlsTextFormat = function(xlsTextFormat) {
+        this.xlsTextFormat = xlsTextFormat;
+      };
+
       prototype.isWithReferredTypes = function() {
         return this.withReferredTypes;
       };
 
+      prototype.setWithReferredTypes = function(withReferredTypes) {
+        this.withReferredTypes = withReferredTypes;
+      };
+
       prototype.isWithImportCompatibility = function() {
         return this.withImportCompatibility;
       };
+
+      prototype.setWithImportCompatibility = function(withImportCompatibility) {
+        this.withImportCompatibility = withImportCompatibility;
+      };
     },
     {
       formats: {
@@ -63,5 +75,5 @@ define(["stjs"], function (stjs) {
     }
   );
 
-  return SelectedFields;
+  return ExportOptions;
 });
\ No newline at end of file
diff --git a/api-openbis-javascript/src/v3/as/dto/importer/ImportOperation.js b/api-openbis-javascript/src/v3/as/dto/importer/ImportOperation.js
index 717aa8112bf..a1ba8afca3b 100644
--- a/api-openbis-javascript/src/v3/as/dto/importer/ImportOperation.js
+++ b/api-openbis-javascript/src/v3/as/dto/importer/ImportOperation.js
@@ -17,9 +17,7 @@
 
 define(["stjs", "as/dto/common/operation/IOperation"],
   function (stjs, IOperation) {
-    var ImportOperation = function(importData, importOptions) {
-      this.importData = importData;
-      this.importOptions = importOptions;
+    var ImportOperation = function() {
     }
 
     stjs.extend(
@@ -41,9 +39,17 @@ define(["stjs", "as/dto/common/operation/IOperation"],
           return this.importData;
         };
 
+        prototype.setImportData = function(importData) {
+          this.importData = importData;
+        };
+
         prototype.getImportOptions = function() {
           return this.importOptions;
         };
+
+        prototype.setImportOptions = function(importOptions) {
+          this.importOptions = importOptions;
+        };
       },
       {
         importData: "IImportData",
diff --git a/api-openbis-javascript/src/v3/as/dto/importer/data/ImportScript.js b/api-openbis-javascript/src/v3/as/dto/importer/data/ImportScript.js
index 96565e11bfb..64545851a62 100644
--- a/api-openbis-javascript/src/v3/as/dto/importer/data/ImportScript.js
+++ b/api-openbis-javascript/src/v3/as/dto/importer/data/ImportScript.js
@@ -17,9 +17,7 @@
 
 define(["stjs"],
   function (stjs) {
-    var ImportScript = function(name, source) {
-      this.name = name;
-      this.source = source;
+    var ImportScript = function() {
     }
 
     stjs.extend(
@@ -37,9 +35,17 @@ define(["stjs"],
           return this.name;
         };
 
+        prototype.setName = function(name) {
+          this.name = name;
+        };
+
         prototype.getSource = function() {
           return this.source;
         };
+
+        prototype.setSource = function(source) {
+          this.source = source;
+        };
       },
       {}
     );
diff --git a/api-openbis-javascript/src/v3/as/dto/importer/data/UncompressedImportData.js b/api-openbis-javascript/src/v3/as/dto/importer/data/UncompressedImportData.js
index e5f163b7c16..90db35a00ee 100644
--- a/api-openbis-javascript/src/v3/as/dto/importer/data/UncompressedImportData.js
+++ b/api-openbis-javascript/src/v3/as/dto/importer/data/UncompressedImportData.js
@@ -17,10 +17,7 @@
 
 define(["stjs", "as/dto/importer/data/IImportData"],
   function (stjs, IImportData) {
-    var UncompressedImportData = function(format, file, scripts) {
-      this.format = format;
-      this.file = file;
-      this.scripts = scripts;
+    var UncompressedImportData = function() {
     }
 
     stjs.extend(
@@ -39,13 +36,25 @@ define(["stjs", "as/dto/importer/data/IImportData"],
           return this.format;
         };
 
+        prototype.setFormat = function(format) {
+          this.format = format;
+        };
+
         prototype.getFile = function() {
           return this.file;
         };
 
+        prototype.setFile = function(file) {
+          this.file = file;
+        };
+
         prototype.getScripts = function() {
           return this.scripts;
         };
+
+        prototype.setScripts = function(scripts) {
+          this.scripts = scripts;
+        };
       },
       {
         format: "ImportFormat",
diff --git a/api-openbis-javascript/src/v3/as/dto/importer/data/ZipImportData.js b/api-openbis-javascript/src/v3/as/dto/importer/data/ZipImportData.js
index a2e162e7c65..918cc534cd6 100644
--- a/api-openbis-javascript/src/v3/as/dto/importer/data/ZipImportData.js
+++ b/api-openbis-javascript/src/v3/as/dto/importer/data/ZipImportData.js
@@ -17,9 +17,7 @@
 
 define(["stjs", "as/dto/importer/data/IImportData"],
   function (stjs, IImportData) {
-    var ZipImportData = function(format, file) {
-      this.format = format;
-      this.file = file;
+    var ZipImportData = function() {
     }
 
     stjs.extend(
@@ -37,9 +35,17 @@ define(["stjs", "as/dto/importer/data/IImportData"],
           return this.format;
         };
 
+        prototype.setFormat = function(format) {
+          this.format = format;
+        };
+
         prototype.getFile = function() {
           return this.file;
         };
+
+        prototype.setFile = function(file) {
+          this.file = file;
+        };
       },
       {
         format: "ImportFormat",
diff --git a/api-openbis-javascript/src/v3/as/dto/importer/options/ImportOptions.js b/api-openbis-javascript/src/v3/as/dto/importer/options/ImportOptions.js
index b38a98b11e8..46f6b7c0c9d 100644
--- a/api-openbis-javascript/src/v3/as/dto/importer/options/ImportOptions.js
+++ b/api-openbis-javascript/src/v3/as/dto/importer/options/ImportOptions.js
@@ -16,8 +16,7 @@
  */
 
 define(["stjs"], function (stjs) {
-  var ImportOptions = function(mode) {
-    this.mode = mode;
+  var ImportOptions = function() {
   }
 
   stjs.extend(
@@ -33,6 +32,10 @@ define(["stjs"], function (stjs) {
       prototype.getMode = function() {
         return this.mode;
       };
+
+      prototype.setMode = function(mode) {
+        this.mode = mode;
+      };
     },
     {
       mode: "ImportMode"
diff --git a/test-api-openbis-javascript/README.txt b/test-api-openbis-javascript/README.txt
index b420dd4adff..93b40da43f6 100644
--- a/test-api-openbis-javascript/README.txt
+++ b/test-api-openbis-javascript/README.txt
@@ -54,7 +54,7 @@ Here are some tips for speed up development:
   Otherwise the old code is executed. This isn't necessary for testing classes.
   If you change only API code you can do the following command:
   
-  cp -R <root folder>/server-application-server/source/java/ch/systemsx/cisd/openbis/public/resources/api <root folder>/test-api-openbis-javascript/targets/gradle/webapps/webapp/resources/
+  cp -R <root folder>/server-application-server/source/java/ch/systemsx/cisd/openbis/public/resources/ <root folder>/test-api-openbis-javascript/targets/gradle/webapps/webapp/resources/
   
 * In case of changes of Java classes stop and restart (using ./gradlew test-api-openbis-javascript:clean test-api-openbis-javascript:test) is needed.
   The test server is available much faster after outcommenting the following lines in build.gradle of 
-- 
GitLab