From 0fc3bd533d8daa120fea5c486946f3a39de84665 Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Fri, 9 Jun 2017 14:11:07 +0200
Subject: [PATCH] parsing of new configuration response

---
 frontend-js/src/main/js/Configuration.js         | 16 ++++++++++++++++
 frontend-js/src/test/js/ServerConnector-test.js  |  3 +++
 .../apiCalls/configuration/token=MOCK_TOKEN_ID&  |  2 +-
 3 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/frontend-js/src/main/js/Configuration.js b/frontend-js/src/main/js/Configuration.js
index 0db51c6fd0..7932fc1ad7 100644
--- a/frontend-js/src/main/js/Configuration.js
+++ b/frontend-js/src/main/js/Configuration.js
@@ -42,6 +42,8 @@ function Configuration(json) {
 
   self.setImageConverters(json.imageFormats);
   self.setModelConverters(json.modelFormats);
+  self.setElementTypes(json.elementTypes);
+  self.setReactionTypes(json.reactionTypes);
 }
 
 Configuration.prototype.setOption = function(type, value) {
@@ -72,4 +74,18 @@ Configuration.prototype.getModelConverters = function() {
   return this._modelConverters;
 };
 
+Configuration.prototype.setElementTypes = function(elementTypes) {
+  this._elementTypes = elementTypes;
+};
+Configuration.prototype.getElementTypes = function() {
+  return this._elementTypes;
+};
+
+Configuration.prototype.setReactionTypes = function(reactionTypes) {
+  this._reactionTypes = reactionTypes;
+};
+Configuration.prototype.getReactionTypes = function() {
+  return this._reactionTypes;
+};
+
 module.exports = Configuration;
diff --git a/frontend-js/src/test/js/ServerConnector-test.js b/frontend-js/src/test/js/ServerConnector-test.js
index 8972e450c8..ddfb8d2707 100644
--- a/frontend-js/src/test/js/ServerConnector-test.js
+++ b/frontend-js/src/test/js/ServerConnector-test.js
@@ -175,7 +175,10 @@ describe('ServerConnector', function() {
   it('getConfiguration', function() {
     return ServerConnector.getConfiguration().then(function(configuration) {
       assert.ok(configuration instanceof Configuration);
+      assert.ok(configuration.getElementTypes().length>0);
+      assert.ok(configuration.getReactionTypes().length>0);
     });
   });
 
+
 });
diff --git a/frontend-js/testFiles/apiCalls/configuration/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/configuration/token=MOCK_TOKEN_ID&
index 0ce74643e1..309b4b8859 100644
--- a/frontend-js/testFiles/apiCalls/configuration/token=MOCK_TOKEN_ID&
+++ b/frontend-js/testFiles/apiCalls/configuration/token=MOCK_TOKEN_ID&
@@ -1 +1 @@
-{"modelFormats":[{"handler":"lcsb.mapviewer.converter.model.celldesigner.CellDesignerXmlParser","name":"CellDesigner SBML"},{"handler":"lcsb.mapviewer.converter.model.sbgnml.SbgnmlXmlConverter","name":"SBGN-ML"}],"imageFormats":[{"handler":"lcsb.mapviewer.converter.graphics.PngImageGenerator","name":"PNG image"},{"handler":"lcsb.mapviewer.converter.graphics.PdfImageGenerator","name":"PDF"}],"options":[{"idObject":9,"type":"EMAIL_ADDRESS","value":"your.account@domain.com"},{"idObject":10,"type":"EMAIL_LOGIN","value":"your@login"},{"idObject":11,"type":"EMAIL_PASSWORD","value":"email.secret.password"},{"idObject":13,"type":"EMAIL_IMAP_SERVER","value":"your.imap.domain.com"},{"idObject":12,"type":"EMAIL_SMTP_SERVER","value":"your.smtp.domain.com"},{"idObject":14,"type":"EMAIL_SMTP_PORT","value":"25"},{"idObject":6,"type":"DEFAULT_MAP","value":"sample"},{"idObject":4,"type":"LOGO_IMG","value":"udl.png"},{"idObject":3,"type":"LOGO_LINK","value":"http://wwwen.uni.lu/"},{"idObject":7,"type":"SEARCH_DISTANCE","value":"10"},{"idObject":1,"type":"REQUEST_ACCOUNT_EMAIL","value":"your.email@domain.com"},{"idObject":8,"type":"SEARCH_RESULT_NUMBER","value":"100"},{"idObject":2,"type":"GOOGLE_ANALYTICS_IDENTIFIER","value":""},{"idObject":5,"type":"LOGO_TEXT","value":"University of Luxembourg"},{"idObject":56,"type":"X_FRAME_DOMAIN","value":"http://localhost:8080/"},{"idObject":131,"type":"BIG_FILE_STORAGE_DIR","value":"minerva-big/"},{"idObject":138,"type":"LENGEND_FILE_1","value":"resources/images/legend_a.png"},{"idObject":139,"type":"LENGEND_FILE_2","value":"resources/images/legend_b.png"},{"idObject":140,"type":"LENGEND_FILE_3","value":"resources/images/legend_c.png"},{"idObject":141,"type":"LENGEND_FILE_4","value":"resources/images/legend_d.png"},{"idObject":142,"type":"USER_MANUAL_FILE","value":"resources/other/user_guide.pdf"},{"idObject":205,"type":"MIN_COLOR_VAL","value":"FF0000"},{"idObject":206,"type":"MAX_COLOR_VAL","value":"fbff00"}],"overlayTypes":[{"name":"GENERIC"},{"name":"GENETIC_VARIANT"}]}
\ No newline at end of file
+{"modelFormats":[{"handler":"lcsb.mapviewer.converter.model.celldesigner.CellDesignerXmlParser","name":"CellDesigner SBML"},{"handler":"lcsb.mapviewer.converter.model.sbgnml.SbgnmlXmlConverter","name":"SBGN-ML"}],"elementTypes":["Drug","Degraded","Phenotype","Gene","RNA","Unknown","Compartment","Antisense RNA","Ion","Simple molecule","Protein","Complex"],"imageFormats":[{"handler":"lcsb.mapviewer.converter.graphics.PngImageGenerator","name":"PNG image"},{"handler":"lcsb.mapviewer.converter.graphics.PdfImageGenerator","name":"PDF"}],"options":[{"idObject":9,"type":"EMAIL_ADDRESS","value":"your.account@domain.com"},{"idObject":10,"type":"EMAIL_LOGIN","value":"your@login"},{"idObject":11,"type":"EMAIL_PASSWORD","value":"email.secret.password"},{"idObject":13,"type":"EMAIL_IMAP_SERVER","value":"your.imap.domain.com"},{"idObject":12,"type":"EMAIL_SMTP_SERVER","value":"your.smtp.domain.com"},{"idObject":14,"type":"EMAIL_SMTP_PORT","value":"25"},{"idObject":6,"type":"DEFAULT_MAP","value":"sample"},{"idObject":4,"type":"LOGO_IMG","value":"udl.png"},{"idObject":3,"type":"LOGO_LINK","value":"http://wwwen.uni.lu/"},{"idObject":7,"type":"SEARCH_DISTANCE","value":"10"},{"idObject":1,"type":"REQUEST_ACCOUNT_EMAIL","value":"your.email@domain.com"},{"idObject":8,"type":"SEARCH_RESULT_NUMBER","value":"100"},{"idObject":2,"type":"GOOGLE_ANALYTICS_IDENTIFIER","value":""},{"idObject":5,"type":"LOGO_TEXT","value":"University of Luxembourg"},{"idObject":56,"type":"X_FRAME_DOMAIN","value":"http://localhost:8080/"},{"idObject":131,"type":"BIG_FILE_STORAGE_DIR","value":"minerva-big/"},{"idObject":138,"type":"LENGEND_FILE_1","value":"resources/images/legend_a.png"},{"idObject":139,"type":"LENGEND_FILE_2","value":"resources/images/legend_b.png"},{"idObject":140,"type":"LENGEND_FILE_3","value":"resources/images/legend_c.png"},{"idObject":141,"type":"LENGEND_FILE_4","value":"resources/images/legend_d.png"},{"idObject":142,"type":"USER_MANUAL_FILE","value":"resources/other/user_guide.pdf"},{"idObject":205,"type":"MIN_COLOR_VAL","value":"FF0000"},{"idObject":206,"type":"MAX_COLOR_VAL","value":"fbff00"}],"overlayTypes":[{"name":"GENERIC"},{"name":"GENETIC_VARIANT"}],"reactionTypes":["Unknown reduced modulation","Reduced physical stimulation","Translation","State transition","Transcription","Unknown reduced trigger","Negative influence","Unknown positive influence","Positive influence","Unknown transition","Truncation","Reduced trigger","Boolean logic gate","Unknown reduced physical stimulation","Generic Reaction","Heterodimer associaation","Reduced modulation","Unknown negative influence","Dissociation","Known transition omitted","Transport"]}
\ No newline at end of file
-- 
GitLab