diff --git a/.bumpversion.cfg b/.bumpversion.cfg index a9e6d876aadba9018dd4444ae655f5a6aad0219a..5626fa605a3c11fd1558d739a37e0a5eb7e7713b 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 2.9.2 +current_version = 2.9.3 commit = True tag = True tag_name = {new_version} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4424d57a3de2fa2a9cc2decb1ca06a0d4e178170..c4296ef6eebbdd329b63b27e12c4ebcd41992202 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,6 +6,7 @@ repos: - id: end-of-file-fixer exclude: .bumpversion.cfg - id: check-merge-conflict + exclude: LICENSE - id: check-added-large-files - id: check-yaml - id: check-json diff --git a/hbp.yml b/hbp.yml index 944af46cff5e075822bd8b6b25da28fdbc3016eb..6e6fcd1f7a02989a909a567bd775313a679dacc0 100644 --- a/hbp.yml +++ b/hbp.yml @@ -58,9 +58,9 @@ testing: command: ./test.sh release_management: - current_version: 2.9.2 - current_code_release: https://github.com/HBPMedical/portal-backend/archive/2.9.2.zip - current_binary_release: https://pypi.python.org/pypi/portal-backend/2.9.2 + current_version: 2.9.3 + current_code_release: https://github.com/HBPMedical/portal-backend/archive/2.9.3.zip + current_binary_release: https://pypi.python.org/pypi/portal-backend/2.9.3 release_script: 'publish.sh' continuous_integration: @@ -75,10 +75,10 @@ continuous_integration: distribution: docker_hub: name: hbpmip/portal-backend - current_tag: 2.9.2 + current_tag: 2.9.3 url: https://hub.docker.com/r/hbpmip/portal-backend/ badge: https://img.shields.io/badge/docker-hbpmip%2Fportal--backend-008bb8.svg - command: docker pull hbpmip/portal-backend:2.9.2 + command: docker pull hbpmip/portal-backend:2.9.3 planning: github: diff --git a/pom.xml b/pom.xml index da8cae4dc32584e10eb4827871bb5a416b460145..f8c622e0f3366184d2322bd29b9089ed026cfbad 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ <groupId>eu.hbp.mip</groupId> <artifactId>portal-backend</artifactId> - <version>2.9.2</version><!-- BUMP_VERSION --> + <version>2.9.3</version><!-- BUMP_VERSION --> <packaging>jar</packaging> <name>portal-backend</name> @@ -47,9 +47,9 @@ <spring-data-jpa.version>1.10.11.RELEASE</spring-data-jpa.version> <spring-boot-starter-actuator.version>1.4.7.RELEASE</spring-boot-starter-actuator.version> <aspectjweaver.version>1.8.9</aspectjweaver.version> - <woken-messages.version>2.9.6</woken-messages.version> + <woken-messages.version>3.0.1</woken-messages.version> <javax-inject.version>1</javax-inject.version> - <akka.version>2.5.20</akka.version> + <akka.version>2.5.21</akka.version> <spring-context.version>4.3.4.RELEASE</spring-context.version> <protobuf-java.version>3.1.0</protobuf-java.version> diff --git a/src/main/java/eu/hbp/mip/StartupTasks.java b/src/main/java/eu/hbp/mip/StartupTasks.java index fa58eaf924ef9826e7eadb6ac182b85acc2a9341..acbf8f0c9d1ccd557c0ffe4e118d841eab8f2b03 100644 --- a/src/main/java/eu/hbp/mip/StartupTasks.java +++ b/src/main/java/eu/hbp/mip/StartupTasks.java @@ -47,7 +47,7 @@ public class StartupTasks implements ApplicationListener<ApplicationReadyEvent> for (int i = 0; i < 5; i++) { try { for (Dataset dataset : datasetsApi.fetchDatasets()) { - final String code = dataset.dataset().code(); + final String code = dataset.id().code(); Variable v = variableRepository.findOne(code); if (v == null) { LOGGER.info("Store additional variable {}", code); diff --git a/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java b/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java index 99d5b8497cd9fad5b2843b1621293e26d5f6dfe8..7798b0ab9069dedb526cc24d7e2e5849b19987c8 100644 --- a/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java +++ b/src/main/java/eu/hbp/mip/controllers/DatasetsApi.java @@ -49,7 +49,7 @@ public class DatasetsApi extends WokenClientController { for (Dataset d: fetchDatasets()) { DatasetDescription dataset = new DatasetDescription(); LOGGER.info("Dataset {}", d); - dataset.setCode(d.dataset().code()); + dataset.setCode(d.id().code()); dataset.setLabel(d.label()); dataset.setDescription(d.description()); dataset.setAnonymisationLevel(d.anonymisationLevel().toString()); diff --git a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java index 5e4620f9cec3b368d569003e921f9a1edaabc07c..d94514c6e78eda1e10c0db3459671dd2a3e770f8 100644 --- a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java +++ b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java @@ -1,6 +1,7 @@ package eu.hbp.mip.controllers; import akka.dispatch.OnSuccess; +import ch.chuv.lren.mip.portal.WokenConversions; import com.google.common.collect.Lists; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -269,11 +270,9 @@ public class ExperimentApi extends WokenClientController { } else { if (queryResult.error().nonEmpty()) { experiment.setHasServerError(true); - experiment.setResult(queryResult.error().get()); LOGGER.error("Experiment failed with message: " + queryResult.error().get()); - } else { - experiment.setResult(queryResult.data().get().compactPrint()); } + experiment.setResult(new WokenConversions().toJson(queryResult)); experiment.setFinished(Date.from(queryResult.timestamp().toInstant())); experimentRepository.save(experiment); LOGGER.info("Experiment " + uuid + " updated (finished)"); diff --git a/src/main/java/eu/hbp/mip/controllers/MiningApi.java b/src/main/java/eu/hbp/mip/controllers/MiningApi.java index 21720df3028c9f4893555ee50bcaf59af91ce6be..bf89261eb14fab25a0adf5bf7dd3e07ff43235e6 100644 --- a/src/main/java/eu/hbp/mip/controllers/MiningApi.java +++ b/src/main/java/eu/hbp/mip/controllers/MiningApi.java @@ -2,11 +2,9 @@ package eu.hbp.mip.controllers; import com.google.gson.Gson; import eu.hbp.mip.akka.WokenClientController; -import eu.hbp.mip.configuration.SecurityConfiguration; import eu.hbp.mip.model.Mining; import eu.hbp.mip.model.User; import eu.hbp.mip.model.UserInfo; -import eu.hbp.mip.utils.HTTPUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; @@ -22,7 +20,6 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import scala.Option; -import java.io.IOException; import java.sql.Date; import static org.springframework.http.MediaType.APPLICATION_JSON_VALUE; @@ -61,7 +58,7 @@ public class MiningApi extends WokenClientController { return ResponseEntity.status(HttpStatus.BAD_REQUEST).body("{\"error\":\"" + result.error().get() + "\"}"); } else { Mining mining = new Mining( - unwrap(result.jobId()), + result.jobId(), result.node(), unwrap(result.algorithm()), result.type().mime(), diff --git a/src/main/scala/ch.chuv.lren/mip/portal/WokenConversions.scala b/src/main/scala/ch.chuv.lren/mip/portal/WokenConversions.scala index a0240df7d4bf4111be1ae4819266a6a120f377df..6abe7b362661e997730feae6a0790785ca13784e 100644 --- a/src/main/scala/ch.chuv.lren/mip/portal/WokenConversions.scala +++ b/src/main/scala/ch.chuv.lren/mip/portal/WokenConversions.scala @@ -2,9 +2,10 @@ package ch.chuv.lren.mip.portal import eu.hbp.mip.model.Variable import ch.chuv.lren.woken.messages.datasets.DatasetId +import ch.chuv.lren.woken.messages.query.QueryResult import ch.chuv.lren.woken.messages.query.filters.FilterRule import ch.chuv.lren.woken.messages.query.filters.FilterRule._ -import ch.chuv.lren.woken.messages.query.filters.queryFiltersProtocol._ +import ch.chuv.lren.woken.messages.query.queryProtocol._ import org.springframework.stereotype.Component import spray.json._ @@ -24,4 +25,6 @@ class WokenConversions { def toSqlWhere(filter: Option[FilterRule]): String = filter.fold("")(_.toSqlWhere) + def toJson(result: QueryResult): String = + result.toJson.compactPrint }