Skip to content

Commit

Permalink
Merge pull request #9 from qbicsoftware/development
Browse files Browse the repository at this point in the history
Prepare release 1.6.0
  • Loading branch information
sven1103 authored Nov 29, 2019
2 parents a208dba + 0c3217f commit af5170f
Show file tree
Hide file tree
Showing 8 changed files with 158 additions and 6 deletions.
6 changes: 4 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ before_script: if [ "$VAADIN_CHARTS_LICENSE_CODE" != "" ]; then
fi;

# as agreed in our SOP, build everything (don't deploy, just try to 'mvn install' locally, which covers all phases)
script: mvn --quiet --activate-profiles !development-build,!release-build --settings .travis.settings.xml clean cobertura:cobertura install
script: mvn build-helper:parse-version versions:set -DnewVersion=\${parsedVersion.majorVersion}.\${parsedVersion.minorVersion}.\${parsedVersion.incrementalVersion}-SNAPSHOT versions:update-child-modules && mvn versions:commit &&
mvn --quiet --activate-profiles !development-build,!release-build --settings .travis.settings.xml clean cobertura:cobertura install
# upload code coverage report, generate maven site (javadocs, documentation, static code analysis, etc.)
after_success:
- bash <(curl -s https://codecov.io/bash)
Expand All @@ -53,7 +54,8 @@ deploy:
# artifact will be installed in our testing instance if it is a .war file
- skip_cleanup: true
provider: script
script: mvn --quiet --activate-profiles !development-build,release-build --settings .travis.settings.xml deploy
script: mvn build-helper:parse-version versions:set -DnewVersion=$TRAVIS_TAG -DprocessAllModules && mvn versions:commit &&
mvn --quiet --activate-profiles !development-build,release-build --settings .travis.settings.xml deploy
on:
branch: master
condition: '"$TRAVIS_EVENT_TYPE" = "push"'
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
<version>1.5.1</version>
</parent>
<artifactId>data-model-lib</artifactId>
<version>1.6.0-SNAPSHOT</version>
<packaging>jar</packaging>
<version>1.5.2</version>
<name>Data Model Library</name>
<url>http://github.com/qbicsoftware/data-model-lib</url>
<description>A collection of QBiC data models.</description>
Expand Down
7 changes: 7 additions & 0 deletions src/main/groovy/life/qbic/datamodel/Constants.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package life.qbic.datamodel

class Constants {

static final public String ISO_8601_DATETIME_FORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'"

}
4 changes: 2 additions & 2 deletions src/main/groovy/life/qbic/datamodel/services/Status.groovy
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
package life.qbic.datamodel.services;

public enum Status {
WAITING, PROCESSING, PROCESSED, FAILED_QC, DATA_AT_QBIC
}
WAITING, PROCESSING, PROCESSED, FAILED_QC, DATA_AT_QBIC, METADATA_REGISTERED
}
40 changes: 40 additions & 0 deletions src/main/groovy/life/qbic/datamodel/workflows/MetaData.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package life.qbic.datamodel.workflows

import com.fasterxml.jackson.annotation.JsonProperty
import groovy.transform.EqualsAndHashCode

@EqualsAndHashCode()
class MetaData {

@JsonProperty('metadata')
private final Map metadata

MetaData() {
metadata = [:].asImmutable()
}

MetaData(Map metadata){
this.metadata = metadata.asImmutable()
}

@Override
Object getProperty(String s) {
return this.metadata.get(s)
}

@Override
boolean equals(Object o) {
if( !o instanceof MetaData ) {
return false
}
def trace = o as MetaData
for( String key in this.metadata.keySet() ) {
def thisProperty = this.getProperty(key)
def otherProperty = trace.getProperty(key)
if( ! otherProperty || ( otherProperty != thisProperty ) ) {
return false
}
}
return true
}
}
64 changes: 64 additions & 0 deletions src/main/groovy/life/qbic/datamodel/workflows/RunInfo.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package life.qbic.datamodel.workflows

import com.fasterxml.jackson.annotation.JsonFormat
import com.fasterxml.jackson.annotation.JsonProperty
import groovy.transform.EqualsAndHashCode
import life.qbic.datamodel.Constants

import java.text.SimpleDateFormat

enum NextflowEventType
{
STARTED, PROCESS_SUBMITTED, PROCESS_STARTED, PROCESS_COMPLETED, ERROR, COMPLETED, UNKNOWN
}

@EqualsAndHashCode()
class RunInfo {

@JsonProperty("event")
private NextflowEventType event

@JsonProperty("runName")
private String name

@JsonProperty("runStatus")
private String status

@JsonProperty("runId")
private String id

@JsonProperty("utcTime")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = Constants.ISO_8601_DATETIME_FORMAT)
private Date time

RunInfo() {
event = NextflowEventType.UNKNOWN
name = ""
status = ""
id = ""
time = new Date()
}

RunInfo(Map weblogRunInformation) {
event = convertEventStringToEventType(weblogRunInformation.get('event') as String)
name = weblogRunInformation.get('runName') ?: ""
status = weblogRunInformation.get('runStatus') ?: ""
id = weblogRunInformation.get('runId') ?: ""
time = convertStringToDate(weblogRunInformation.get('utcTime') as String)
}

private static Date convertStringToDate(String s) {
Date date = new SimpleDateFormat(Constants.ISO_8601_DATETIME_FORMAT).parse(s)
return date
}

private static NextflowEventType convertEventStringToEventType(String event) {
try {
def eventType = event.toUpperCase() as NextflowEventType
return eventType
} catch (IllegalArgumentException e) {
return NextflowEventType.UNKNOWN
}
}

}
39 changes: 39 additions & 0 deletions src/main/groovy/life/qbic/datamodel/workflows/Trace.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package life.qbic.datamodel.workflows

import com.fasterxml.jackson.annotation.JsonProperty


class Trace {

@JsonProperty("properties")
private final Map traceInformation

Trace() {
traceInformation = [:].asImmutable()
}

Trace(Map trace) {
traceInformation = trace.asImmutable()
}

@Override
Object getProperty(String s) {
return traceInformation.get(s)
}

@Override
boolean equals(Object o) {
if( !o instanceof Trace ) {
return false
}
def trace = o as Trace
for( String key in this.traceInformation.keySet() ) {
def thisProperty = this.getProperty(key)
def otherProperty = trace.getProperty(key)
if( ! otherProperty || ( otherProperty != thisProperty ) ) {
return false
}
}
return true
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public static boolean isQbicBarcode(String code) {
* @return true if String is a QBiC entity code, false if not
*/
public static boolean isQbicEntityCode(String code) {
Pattern entityPattern = Pattern.compile("Q[A-X0-9]{4}ENTITY-[0-9]*$", Pattern.CASE_INSENSITIVE);
Pattern entityPattern = Pattern.compile("Q[A-X0-9]{4}ENTITY-[1-9][0-9]*", Pattern.CASE_INSENSITIVE);
Matcher matcher = entityPattern.matcher(code);
return matcher.find();
}
Expand Down

0 comments on commit af5170f

Please sign in to comment.