Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
minerva
core
Commits
518c3ef7
Commit
518c3ef7
authored
Jul 09, 2020
by
Piotr Gawron
Browse files
Merge remote-tracking branch 'origin/master' into 1016-refactor-test-framework
parents
51adac30
94a0142c
Changes
494
Hide whitespace changes
Inline
Side-by-side
.gitlab-ci.yml
View file @
518c3ef7
...
...
@@ -34,6 +34,8 @@ test:frontend:
-
postgres:9.6
stage
:
test
coverage
:
'
/(\d+.\d+)
\%
covered/'
before_script
:
-
mvn dependency:purge-local-repository -DmanualInclude="lcsb.mapviewer"
.jdk_11_template
:
&jdk_11_definition
image
:
maven:3.6.0-jdk-11
...
...
@@ -41,6 +43,8 @@ test:frontend:
-
postgres:9.6
stage
:
test
coverage
:
'
/(\d+.\d+)
\%
covered/'
before_script
:
-
mvn dependency:purge-local-repository -DmanualInclude="lcsb.mapviewer"
.hsql_template
:
&hsql_definition
image
:
maven:3.6.0-jdk-11
...
...
CHANGELOG
View file @
518c3ef7
minerva
(
16.0.0
~
alpha
.0
)
stable
;
urgency
=
medium
*
Bug
fix
:
md5
hash
function
of
plugin
was
not
computed
properly
minerva
(
15.0.0
~
beta
.2
)
stable
;
urgency
=
medium
*
Bug
fix
:
newt
use
incorrect
attributes
when
exporting
render
information
that
could
not
be
parsed
by
minevra
(#
1127
)
*
Bug
fix
:
catalysis
to
protein
was
not
parsed
from
SBGN
file
(#
1116
)
*
Bug
fix
:
upload
logs
for
SBGN
parser
were
not
translated
properly
to
new
structured
log
form
*
Bug
fix
:
antisenseRNA
shape
is
infered
from
SBGN
when
antisenseRNA
text
is
present
in
glyph
label
(#
1114
)
*
Bug
fix
:
export
to
SBGN
sometimes
crashed
due
to
concurrency
issues
(#
1126
)
*
Bug
fix
:
CellDesigner
models
where
start
and
end
point
of
reaction
was
the
same
were
not
handled
properly
(#
1131
)
*
Bug
fix
:
exporting
map
to
CellDesigner
from
GPML
file
created
not
-
editable
compartments
(#
1146
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Wed
,
27
Feb
2020
14
:
00
:
00
+
0200
minerva
(
15.0.0
~
beta
.1
)
stable
;
urgency
=
medium
*
Bug
fix
:
conflict
on
libraries
caused
some
features
to
stop
working
in
production
(
like
parsing
text
notes
of
species
,
regresion
in
15.0.0
~
alpha
.1
,
#
1139
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Wed
,
26
Feb
2020
13
:
00
:
00
+
0200
minerva
(
15.0.0
~
beta
.0
)
stable
;
urgency
=
medium
*
Feature
removal
:
old
connection
to
CTD
is
removed
and
replaced
with
minerva
(
15.1.0
)
unstable
;
urgency
=
medium
*
Small
improvement
:
annotations
are
exported
in
SBGN
extension
that
can
be
opened
by
newt
(#
1296
)
*
Small
improvement
:
plugin
API
allows
to
add
/
remove
data
overlays
(#
1153
)
*
Small
improvement
:
logged
user
can
change
password
(#
1119
)
*
Small
improvement
:
possibility
to
reset
password
added
(#
275
)
*
Small
improvement
:
import
SBML
uses
render
:
fill
color
for
compartment
(#
1254
)
*
Small
improvement
:
in
SBML
render
stroke
color
for
glyphs
is
used
for
defining
font
color
*
Small
improvement
:
when
SBML
with
layout
contains
different
glyph
text
and
species
name
those
two
values
are
assigned
to
name
and
full
name
(#
1275
)
*
Small
improvement
:
process
rectangle
can
be
specified
in
SBML
with
reaction
bounding
box
(#
1292
)
*
Small
improvement
:
API
allows
to
remove
plugin
data
entry
(#
1298
)
*
Small
improvement
:
transport
/
translation
/
transcription
reactions
are
exported
to
SBGN
PD
(#
1302
)
*
Small
improvement
:
Unknown
Transition
Reaction
is
exported
to
GPML
as
CONVERSION
(#
1300
)
*
Small
improvement
:
when
uploading
complex
map
with
images
warnings
are
raised
if
images
are
not
referenced
in
coords
.
txt
file
(#
1308
)
*
Small
improvement
:
hitting
enter
after
filling
credentials
automatically
tries
to
log
in
(#
1312
)
*
Small
improvement
:
rest
API
provides
information
about
element
glyph
and
z
index
*
Small
improvement
:
pathways
with
glyphs
and
z
index
below
0
are
not
clickable
(#
1314
)
*
Bug
fix
:
export
to
image
from
selected
polygon
contained
all
elements
inside
rectangle
bounded
by
the
polygon
coordinates
(#
1096
)
*
Bug
fix
:
continuous
refreshing
list
of
project
when
uploading
/
removing
project
did
not
allow
to
change
other
project
details
(#
996
)
*
Bug
fix
:
when
multi
extension
did
not
contain
species
type
list
import
of
SBML
crashed
*
Bug
fix
:
when
content
of
element
popover
is
too
wide
the
scrollbar
is
visible
(#
1269
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Thu
,
18
Jun
2020
16
:
00
:
00
+
0200
minerva
(
15.0.2
)
stable
;
urgency
=
medium
*
Bug
fix
:
annotations
using
identifiers
.
org
urls
sometimes
required
http
and
sometimes
required
https
url
(#
1297
)
*
Bug
fix
:
map
notes
were
not
exported
to
GPML
*
Bug
fix
:
reaction
notes
were
not
imported
from
GPML
*
Bug
fix
:
export
of
notes
could
create
invalid
GPML
file
(#
1299
)
*
Bug
fix
:
there
was
an
issue
with
exporting
color
and
line
type
of
reaction
additional
reactant
/
product
(#
1303
)
*
Bug
fix
:
coordinates
of
children
in
compact
complexes
in
CellDesigner
were
wrong
(#
1304
)
*
Bug
fix
:
user
data
overlays
were
not
removed
when
user
was
deleted
(#
1301
)
*
Bug
fix
:
kinetic
parameters
exported
to
SBML
created
invalid
SBML
file
(#
1305
)
*
Bug
fix
:
text
area
were
not
converted
to
GPML
using
conversion
API
(#
1306
)
*
Bug
fix
:
name
provided
by
user
in
comment
dialog
was
not
visible
in
admin
panel
(#
1245
)
*
Bug
fix
:
bqmodel
:
isInstanceOf
and
bqmodel
:
hasInstance
relation
types
were
not
handled
properly
(#
1281
)
*
Bug
fix
:
"bqmodel:isInstanceOf"
,
"bqmodel:hasInstance"
,
"bqbiol:hasProperty"
,
"bqbiol:isPropertyOf"
and
"bqbiol:hasTaxon"
relation
types
are
not
supported
by
CellDedigner
and
are
now
transformed
during
export
into
something
readable
by
CellDesigner
(#
1281
)
*
Bug
fix
:
at
random
time
points
there
was
an
issue
with
cached
data
(#
1323
)
*
Bug
fix
:
connection
to
DAPI
timeouted
sometimes
which
resulted
in
error
when
checking
for
all
chemicals
for
specfific
protein
(#
1324
)
*
Bug
fix
:
complex
/
compartment
with
empty
name
was
incorrectly
exported
to
CellDesigner
(#
1310
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Wed
,
1
Jul
2020
16
:
00
:
00
+
0200
minerva
(
15.0.1
)
stable
;
urgency
=
medium
*
Bug
fix
:
when
there
was
problem
with
DAPI
minerva
threw
unexpected
error
(#
1316
)
*
Bug
fix
:
DAPI
connection
must
go
over
HTTPS
(#
1316
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Fri
,
26
Jun
2020
11
:
00
:
00
+
0200
minerva
(
15.0.0
)
stable
;
urgency
=
medium
*
Backward
incompatible
:
old
connection
to
CTD
is
removed
and
replaced
with
new
Data
-
API
interface
that
closely
check
license
compliance
*
Feature
removal
:
some
custom
fields
(
like
transparency
zoom
level
)
are
not
exported
to
CellDesigner
file
(#
1071
)
*
Backward
incompatible
:
old
connection
to
DrugBank
is
removed
and
replaced
with
new
Data
-
API
interface
that
closely
check
license
compliance
*
Backward
incompatible
:
some
custom
fields
(
like
transparency
zoom
level
)
are
not
exported
to
CellDesigner
file
(#
1071
)
*
Backward
incompatible
:
truncation
/
association
/
dissociation
points
are
represented
as
a
dot
in
all
new
images
/
uploaded
maps
(#
1265
)
*
Backward
incompatible
:
and
/
split
points
are
represented
as
a
dot
in
all
new
images
/
uploaded
maps
(#
1253
)
*
Backward
incompatible
:
reaction
will
be
on
top
of
elements
in
maps
uploaded
from
formats
that
does
not
contain
z
-
index
(#
1251
)
*
Backward
incompatible
:
when
uploading
complex
map
with
submap
there
is
no
possibility
to
change
submap
name
(#
947
)
*
Improvement
:
logs
provided
for
validation
data
model
are
structured
(#
325
)
*
Improvement
:
import
/
export
of
GPML
implemented
*
Improvement
:
API
allows
to
merge
files
(#
1208
)
*
Improvement
:
export
to
SBGN
/
SBML
/
GPML
format
provides
popup
with
list
of
warnings
occurred
in
the
translation
process
(#
713
)
*
Improvement
:
support
for
rendering
colors
in
SBGNML
added
(#
1009
)
*
Small
improvement
:
compartments
in
not
layouted
SBML
file
are
more
scattered
(#
326
)
*
Small
improvement
:
when
downloading
a
map
results
in
too
big
file
(>
1
MB
)
the
content
is
compressed
and
returned
as
a
zip
file
(#
348
)
*
Small
improvement
:
confirmation
dialog
when
removing
"general view"
overlays
contain
proper
warning
(#
809
)
*
Small
improvement
:
CellDesigner
text
area
object
can
have
"BorderColor"
property
defined
(#
806
)
*
Small
improvement
:
list
of
submaps
is
sorted
alphabetically
(#
962
)
*
Small
improvement
:
notification
about
new
releases
of
minerva
added
in
admin
panel
(#
961
)
*
Small
improvement
:
font
awesome
upgraded
to
5.1
(
new
icon
styles
)
*
Small
improvement
:
header
contains
login
/
logout
button
and
access
admin
panel
button
(#
982
)
*
Small
improvement
:
autocomplete
for
chemical
searches
is
enabled
(#
841
)
*
Small
improvement
:
"bqbiol:occursIn"
and
"bqmodel:isDerivedFrom"
and
handled
in
annotations
(#
1190
),
*
Small
improvement
:
3
DMET
,
Evidence
Code
Ontology
,
Kegg
Glycan
,
LipidBank
,
Chemical
Component
Dictionary
annotations
are
supported
(#
1190
)
*
Small
improvement
:
SWISS
-
model
annotations
are
supported
(#
1249
),
*
Small
Improvement
:
SBO
annotation
support
added
(#
1194
)
*
Small
improvement
:
support
for
annotations
added
:
ChemIDplus
,
EcoGene
,
FlyBase
,
GeneDB
,
Intact
,
Kegg
Drug
,
KNApSAcK
,
LIPID
MAPS
,
NCBI
Protein
,
PATO
,
RGD
,
SPIKE
,
TTD
Drug
,
ZFIN
BioEntity
*
Small
Improvement
:
additional
annotation
uri
qualifiers
added
:
hasProperty
,
isPropertyOf
(#
1193
)
*
Small
improvement
:
small
css
improvement
in
info
tab
(#
1104
)
*
Small
improvement
:
import
/
export
to
SBML
of
unit
of
information
obtained
from
SBGN
source
is
supported
(#
1088
)
*
Small
improvement
:
rounded
rectangle
is
used
to
visualize
Simple
chemicals
in
SBGN
-
like
view
according
to
the
newest
SBGN
specification
(#
1094
)
*
Small
improvement
:
after
removing
project
is
confirmed
the
system
enforce
waiting
until
remove
status
is
confirmed
(#
1106
)
*
Bug
fix
:
import
from
SBGN
assigned
invalid
name
to
species
that
didn
't have
label defined (#1093)
* Bug fix: drawing protein in SBGN-like style didn'
t
handle
properly
dimension
of
the
species
for
multimers
bigger
than
2
(#
1091
)
*
Bug
fix
:
drawing
of
structural
state
in
SBGN
-
like
style
uses
RoundedRectangle
instead
of
Ellipse
which
was
not
SBGN
-
compliant
(#
1095
)
*
Bug
fix
:
export
to
GPML
provided
invalid
font
size
and
pathviosio
could
not
open
it
(#
1108
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Tue
,
28
Jan
2020
13
:
00
:
00
+
0200
minerva
(
15.0.0
~
alpha
.2
)
stable
;
urgency
=
medium
*
Feature
removal
:
old
connection
to
DrugBank
is
removed
and
replaced
with
new
Data
-
API
interface
that
closely
check
license
compliance
*
Small
improvement
:
when
typing
drug
,
list
of
autocomplete
drugs
should
be
available
limited
to
the
drugs
target
ting
something
on
the
map
(#
641
)
available
limited
to
the
drugs
that
target
something
on
the
map
(#
641
)
*
Small
improvement
:
data
not
compliant
with
database
constraints
(
for
instance
too
long
species
identifiers
)
will
be
automatically
adjust
instead
of
crashing
project
upload
(#
1041
)
*
Small
improvement
:
reaction
lines
in
SBML
files
without
layout
are
set
outside
of
the
species
(
not
in
the
center
,
#
1023
)
*
Bug
fix
:
import
from
CellDesigner
rounded
alias
dimension
to
integer
*
Bug
fix
:
old
project
with
structural
state
couldn
't be removed (regression
15.0.0~alpha.1, #1021)
* Bug fix: processing sbgn file with render information was breaking sometimes
(regression 15.0.0~alpha.1, #1020)
-- Piotr Gawron <piotr.gawron@uni.lu> Wed, 22 Jan 2020 13:00:00 +0200
minerva (15.0.0~alpha.1) stable; urgency=medium
* Feature removal: when uploading complex map with submap there is no
possibility to change submap name (#947)
* Improvement: support for rendering colors in SBGNML added (#1009)
*
Small
improvement
:
sort
order
of
tables
in
admin
panel
is
preserved
among
sessions
(#
836
)
* Small improvement: simple molecules in
sbgn
compliant view are drawn as
*
Small
improvement
:
simple
molecules
in
SBGN
compliant
view
are
drawn
as
ellipses
not
circles
(#
796
)
*
Small
improvement
:
uploaded
map
is
automatically
cached
(#
983
)
*
Small
improvement
:
molart
updated
to
version
1.5.0
:
Ability
to
show
...
...
@@ -86,15 +154,52 @@ minerva (15.0.0~alpha.1) stable; urgency=medium
about
the
plugins
(
name
,
version
)
*
Small
improvement
:
there
is
possibility
to
define
default
plugins
loaded
with
every
opening
of
a
map
(#
967
)
* Small improvement: support for annotations added: ChemIDplus, EcoGene,
FlyBase, GeneDB, Intact, Kegg Drug, KNApSAcK, LIPID MAPS, NCBI Protein,
PATO, RGD, SPIKE, TTD Drug, ZFIN BioEntity
*
Bug
fix
:
pathways
are
visualized
in
image
converter
(#
1266
)
*
Bug
fix
:
conversion
of
file
containing
BOM
did
not
work
(#
1264
)
*
Bug
fix
:
proper
color
is
parsed
from
CellDesigner
species
marked
as
'brief'
*
Bug
fix
:
upload
of
SBGN
files
didn
't process unicode characters properly
when server was running with encoding different than UTF-8 (#1142)
* Bug fix: kinetic equation in reaction that referenced complex (instead of
target species) crashed CellDesigner upload (#1212)
* Bug fix: kinetic equation in SBML that used speciesReference id crashed
upload (#1190)
* Bug fix: layout reaction with duplicated reaction element crashed SBML
upload (#1190)
* Bug fix: conversion from SBML to CellDesigner escaped "<" twice (#1228)
* Bug fix: Select annotation dialog width is at least 840px (#1210)
* Bug fix: modifiers joined by operator were exported to SBML without line
corresponding to the operator (#1199)
* Bug fix: first state variable that does not match modification residue is
translated to structural state when importing from SBGNML (#1088)
* Bug fix: exported SBML was not compliant with the standard when element
name was empty (#1147)
* Bug fix: invalid data overlays in uploaded zip file created "valid" project
that could not be opened (#1086)
* Bug fix: cardinality in SBGN-like view is drawn in separate unit (#1157)
* Bug fix: notes from SBML are parsed with all html tags (#1196)
* Bug fix: converter API append conversion warnings to generated output notes
* Bug fix: newt use incorrect attributes when exporting render information
that could not be parsed by minerva (#1127)
* Bug fix: catalysis to protein was not parsed from SBGN file (#1116)
* Bug fix: antisenseRNA shape is inferred from SBGN when antisenseRNA text is
present in glyph label (#1114)
* Bug fix: export to SBGN sometimes crashed due to concurrency issues (#1126)
* Bug fix: CellDesigner models where start and end point of reaction was the
same were not handled properly (#1131)
* Bug fix: more than one authors in CellDesigner file were not parsed
properly (#1156)
* Bug fix: SBGN reaction with no reactants crashed map upload (#1148)
* Bug fix: import from SBGN assigned invalid name to species that didn'
t
have
label
defined
(#
1093
)
*
Bug
fix
:
drawing
protein
in
SBGN
-
like
style
didn
't handle properly
dimension of the species for multimers bigger than 2 (#1091)
* Bug fix: drawing of structural state in SBGN-like style uses
RoundedRectangle instead of Ellipse which was not SBGN-compliant (#1095)
* Bug fix: import from CellDesigner rounded alias dimension to integer
* Bug fix: compartments limited by corner (left-top corner compartment, etc)
are parsed properly from CellDesigner files
* Bug fix: structural states of proteins are imported properly from SBGNML PD
(#995)
* Bug fix: clear button icon, refresh comments button and show overview
button icons were missing (regression 15.0.0~alpha.0)
* Bug fix: export to CellDesigner names with new line is properly handled
(#930)
* Bug fix: layout of the exported reactome pathways is fixed when reactome
...
...
@@ -103,36 +208,61 @@ minerva (15.0.0~alpha.1) stable; urgency=medium
visualized with proper line type across all included modifiers (#957)
* Bug fix: dimension of the modifications is the same as in minerva when
exporting to SBGNML-PD (#554)
-- Piotr Gawron <piotr.gawron@uni.lu> Fri, 15 Nov 2019 9:00:00 +0200
minerva (15.0.0~alpha.0) stable; urgency=medium
* Improvement: logs provided for validation data model are structurized (#325)
* Improvement: import/export of GPML implemented
* Small improvement: compartments in not layouted SBML file are more
scattered (#326)
* Small improvement: when downloading a map results in too big file (>1MB)
the content is compressed and returned as a zip file (#348)
* Small improvement: confirmation dialog when removing "general view"
overlays contain proper warning (#809)
* Small improvement: CellDesigner text area object can have "BorderColor"
property defined (#806)
* Small improvement: list of submaps is sorted alphabetically (#962)
* Small improvement: notification about new releases of minerva added in
admin panel (#961)
* Small improvement: font awesome upgraded to 5.1 (new icon styles)
* Small improvement: header contains login/logout button and access admin
panel button (#982)
* Bug fix: position of structural state is preserved on upload CellDesigner
file (#671)
* Bug fix: problematic notes doesn'
t
crash
CellDesigner
upload
(#
968
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Wed
,
4
Nov
2019
11
:
00
:
00
+
0200
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Mon
,
22
Jun
2020
11
:
00
:
00
+
0200
minerva
(
14.0.13
)
stable
;
urgency
=
medium
*
Bug
fix
:
chrome
modified
default
css
and
service
looked
ugly
in
chrome
(#
1260
)
*
Bug
fix
:
uploaded
HGNC
identifiers
that
looks
like
"HGNC:HGNC:1234"
are
changed
to
"HGNC:1234"
(#
1252
)
*
Bug
fix
:
creating
comment
with
too
long
name
/
email
resulted
in
Internal
Server
Error
-
now
the
proper
error
message
is
returned
(#
1245
)
*
Bug
fix
:
user
cannot
put
too
long
name
in
a
comment
dialog
(#
1245
)
*
Bug
fix
:
when
url
contained
invalid
submap
id
unhandled
error
was
raised
(#
1243
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Wed
,
3
Jun
2020
17
:
00
:
00
+
0200
minerva
(
14.0.12
)
stable
;
urgency
=
medium
*
Bug
fix
:
comments
on
submaps
were
not
visible
(#
1230
)
*
Bug
fix
:
removing
comment
from
submap
did
not
work
*
Bug
fix
:
reaction
name
containing
"<"
character
was
exported
inproperly
to
CellDesigner
(#
1227
)
*
Bug
fix
:
doi
annotation
was
inproperly
parsed
from
CellDesigner
file
and
resulted
in
not
clickable
link
(#
1231
)
*
Bug
fix
:
when
plugin
data
was
too
big
500
error
was
returned
(#
1232
)
*
Bug
fix
:
removing
plugin
in
admin
panel
removes
it
from
server
permanently
(#
1211
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Mon
,
11
May
2020
17
:
00
:
00
+
0200
minerva
(
14.0.11
)
stable
;
urgency
=
medium
*
Bug
fix
:
complex
with
no
border
was
inproperly
imported
from
CellDesigner
(#
1198
)
*
Bug
fix
:
export
to
CellDesigner
deal
with
CellDesigner
issue
that
does
not
allow
compartment
species
alias
to
be
shorter
than
2
characters
(#
1204
)
*
Bug
fix
:
kinetic
parameters
with
INFINITY
values
could
not
be
uploaded
to
minerva
(#
1202
)
*
Bug
fix
:
infinity
value
in
kinetic
parameter
could
not
be
parsed
from
CellDesigner
file
minerva
(#
1203
)
*
Bug
fix
:
author
list
inproperly
presented
author
data
when
some
fields
were
missing
(#
1201
)
*
Bug
fix
:
refreshing
minerva
page
with
more
than
one
plugin
opened
might
led
to
an
error
due
to
race
condition
(#
1197
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Mon
,
31
Mar
2020
09
:
00
:
00
+
0200
minerva
(
14.0.10
)
stable
;
urgency
=
medium
*
Bug
fix
:
reaction
without
ports
in
SBGN
crashed
upload
(#
1065
)
*
Bug
fix
:
annotations
using
newer
identifiers
.
org
uri
schema
were
truncated
by
one
character
(#
1191
)
*
Bug
fix
:
long
annotation
string
broke
listing
of
annotations
(#
1155
)
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Tue
,
27
Feb
2020
1
0
:
00
:
00
+
0200
--
Piotr
Gawron
<
piotr
.
gawron
@
uni
.
lu
>
Mon
,
16
Mar
2020
1
4
:
00
:
00
+
0200
minerva
(
14.0.9
)
stable
;
urgency
=
medium
*
Bug
fix
:
simultanous
export
to
SBML
of
more
than
one
file
could
result
in
...
...
CellDesigner-plugin/build.xml
View file @
518c3ef7
...
...
@@ -2,34 +2,18 @@
<project
name=
"CellDesigner plugin"
default=
"main"
basedir=
"."
>
<property
environment=
"env"
/>
<property
name=
"build.dir"
value=
"target"
/>
<property
name=
"mvn.home"
value=
"${env.M2_HOME}"
/>
<property
name=
"celldesigner.home"
value=
"C:/Program Files (x86)/CellDesigner4.4/"
/>
<property
name=
"celldesigner.deploy.dir"
value=
"${celldesigner.home}/plugin/"
/>
<property
name=
"plugin.name"
value=
"mv_plugin"
/>
<property
name=
"jar.file"
value=
"CellDesigner-plugin-1.0-jar-with-dependencies.jar"
/>
<target
name=
"maven-build"
>
<exec
executable=
"
${
mvn
.home}/bin/mvn.bat
"
>
<exec
executable=
"mvn"
>
<arg
line=
"clean"
/>
</exec>
<exec
executable=
"
${
mvn
.home}/bin/mvn.bat
"
>
<exec
executable=
"mvn"
>
<arg
line=
"-Dmaven.test.skip=true install"
/>
</exec>
</target>
<target
name=
"jar-exists"
>
<available
file=
"${celldesigner.home}/plugin/${plugin.name}.jar"
property=
"jar.exists"
/>
</target>
<target
name=
"remove-jar"
depends=
"jar-exists"
if=
"jar.exists"
>
<delete
file=
"${celldesigner.home}/plugin/${plugin.name}.jar"
/>
</target>
<target
name=
"deploy"
depends=
"remove-jar"
>
<copy
file=
"${build.dir}/${jar.file}"
todir=
"${celldesigner.deploy.dir}"
/>
<move
file=
"${celldesigner.deploy.dir}/${jar.file}"
tofile=
"${celldesigner.deploy.dir}/${plugin.name}.jar"
/>
</target>
<target
name=
"main"
depends=
"maven-build, deploy"
/>
<target
name=
"main"
depends=
"maven-build"
/>
</project>
\ No newline at end of file
CellDesigner-plugin/src/main/java/lcsb/mapviewer/cdplugin/info/InfoPlugin.java
View file @
518c3ef7
...
...
@@ -99,7 +99,7 @@ public class InfoPlugin extends CellDesignerPlugin {
for
(
int
i
=
0
;
i
<
Math
.
min
(
aliasList
.
size
(),
MAX_VISIBLE_ELEMENTS
);
i
++)
{
PluginSpeciesAlias
alias
=
(
PluginSpeciesAlias
)
aliasList
.
get
(
i
);
v
.
add
(
alias
);
newId
+=
alias
.
get
Species
().
getName
();
newId
+=
alias
.
get
AliasID
();
}
// if the cache is exactly the same as in the previous run then
// don't update infoframe
...
...
README.md
View file @
518c3ef7
...
...
@@ -10,7 +10,7 @@ Documentation for minerva can be found here: https://minerva.pages.uni.lu/doc/
After cloning repo you need to install following tools:
*
postgresql (>=9.1)
*
tomcat (tested on tomcat
7
, tomcat
8
)
*
tomcat (tested on tomcat
8
, tomcat
9
)
*
Java8 - works on OpenJDK 8, Oracle Java 8, OpenJDK 11
*
maven
*
ant
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/cache/WebPageDownloader.java
View file @
518c3ef7
...
...
@@ -143,7 +143,13 @@ public class WebPageDownloader {
Future
<
String
>
future
=
executor
.
submit
(
new
Task
());
try
{
String
result
=
future
.
get
(
HTTP_CONNECTION_TIMEOUT_SEC
,
TimeUnit
.
SECONDS
);
int
timeout
=
HTTP_CONNECTION_TIMEOUT_SEC
;
// dapi is slow for now
if
(
accessUrl
.
indexOf
(
"dapi.lcsb.uni.lu"
)
>=
0
)
{
timeout
*=
10
;
}
String
result
=
future
.
get
(
timeout
,
TimeUnit
.
SECONDS
);
executor
.
shutdownNow
();
return
result
;
}
catch
(
Exception
e
)
{
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/cache/XmlSerializer.java
View file @
518c3ef7
...
...
@@ -98,8 +98,6 @@ public class XmlSerializer<T> {
}
try
{
return
(
T
)
jaxbUnmarshaller
.
unmarshal
(
node
);
}
catch
(
JAXBException
e
)
{
throw
new
SerializationException
(
e
);
}
catch
(
Exception
e
)
{
// the library can throw NPE sometimes...
logger
.
error
(
e
,
e
);
return
null
;
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/data/Drug.java
View file @
518c3ef7
...
...
@@ -29,7 +29,7 @@ public class Drug implements Serializable, TargettingStructure {
/**
* Default class logger.
*/
private
static
Logger
logger
=
LogManager
.
getLogger
(
Drug
.
class
);
private
static
Logger
logger
=
LogManager
.
getLogger
();
/**
* Source of the data.
...
...
@@ -47,7 +47,7 @@ public class Drug implements Serializable, TargettingStructure {
private
String
description
;
/**
* Status of blood brain barries for the drug.
* Status of blood brain barrie
r
s for the drug.
*/
private
String
bloodBrainBarrier
=
"N/A"
;
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/services/MiriamConnector.java
View file @
518c3ef7
...
...
@@ -12,6 +12,7 @@ import org.springframework.stereotype.Service;
import
lcsb.mapviewer.annotation.cache.*
;
import
lcsb.mapviewer.common.exception.InvalidArgumentException
;
import
lcsb.mapviewer.converter.annotation.XmlAnnotationParser
;
import
lcsb.mapviewer.model.map.*
;
/**
...
...
@@ -36,6 +37,8 @@ public final class MiriamConnector extends CachableInterface implements IExterna
* Default class logger.
*/
private
Logger
logger
=
LogManager
.
getLogger
(
MiriamConnector
.
class
);
XmlAnnotationParser
xap
=
new
XmlAnnotationParser
();
/**
* Default class constructor. Prevent initialization.
...
...
@@ -90,13 +93,6 @@ public final class MiriamConnector extends CachableInterface implements IExterna
}
else
if
(
miriamData
.
getDataType
().
getUris
().
size
()
==
0
)
{
throw
new
InvalidArgumentException
(
"Url for "
+
miriamData
.
getDataType
()
+
" cannot be retreived."
);
}
String
id
;
if
(
miriamData
.
getDataType
().
getNamespace
().
isEmpty
())
{
id
=
miriamData
.
getResource
();
}
else
{
id
=
miriamData
.
getDataType
().
getNamespace
()
+
":"
+
miriamData
.
getResource
();
}
String
query
=
LINK_DB_PREFIX
+
miriamData
.
getDataType
().
getUris
().
get
(
0
)
+
"\n"
+
miriamData
.
getResource
();
String
result
=
getCacheValue
(
query
);
if
(
result
!=
null
)
{
...
...
@@ -106,7 +102,8 @@ public final class MiriamConnector extends CachableInterface implements IExterna
return
result
;
}
try
{
result
=
getRedirectURL
(
"https://identifiers.org/"
+
id
);
String
identifiersOrgUrl
=
xap
.
getIdentifiersOrgUrl
(
miriamData
);
result
=
getRedirectURL
(
identifiersOrgUrl
);
if
(
result
!=
null
)
{
setCacheValue
(
query
,
result
);
...
...
@@ -123,7 +120,7 @@ public final class MiriamConnector extends CachableInterface implements IExterna
}
private
String
getRedirectURL
(
String
address
)
throws
IOException
{
URL
url
=
new
URL
(
address
);
URL
url
=
new
URL
(
address
.
replaceAll
(
"\n"
,
""
)
);
HttpURLConnection
con
=
(
HttpURLConnection
)
url
.
openConnection
();
con
.
setInstanceFollowRedirects
(
false
);
con
.
setRequestProperty
(
"User-Agent"
,
"minerva-framework"
);
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/services/PubmedParser.java
View file @
518c3ef7
...
...
@@ -43,7 +43,7 @@ public class PubmedParser extends CachableInterface implements IExternalService
/**
* Version of the remote API that is supported by this connecting class.
*/
static
final
String
SUPPORTED_VERSION
=
"6.
2
"
;
static
final
String
SUPPORTED_VERSION
=
"6.
3
"
;
static
final
String
API_URL
=
"https://www.ebi.ac.uk/europepmc/webservices/rest/"
;
/**
* Length of {@link #PUBMED_PREFIX} string.
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/EnsemblAnnotator.java
View file @
518c3ef7
...
...
@@ -36,7 +36,7 @@ public class EnsemblAnnotator extends ElementAnnotator implements IExternalServi
/**
* Version of the rest API that is supported by this annotator.
*/
static
final
String
SUPPORTED_VERSION
=
"1
1.2
"
;
static
final
String
SUPPORTED_VERSION
=
"1
2.0
"
;
/**
* Url address of ensembl restful service.
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/services/dapi/ChemicalParser.java
View file @
518c3ef7
...
...
@@ -152,7 +152,8 @@ public class ChemicalParser {
if
(
target
.
getDataType
().
equals
(
MiriamType
.
HGNC_SYMBOL
))
{
targets
.
add
(
target
);
}
else
{
throw
new
InvalidArgumentException
(
"Only those identifiers are accepted: "
+
MiriamType
.
HGNC_SYMBOL
);
throw
new
InvalidArgumentException
(
"Only those identifiers are accepted: "
+
MiriamType
.
HGNC_SYMBOL
+
". Found: "
+
target
);
}
return
targets
;
}
...
...
@@ -196,7 +197,7 @@ public class ChemicalParser {
if
(
disease
==
null
)
{
throw
new
InvalidArgumentException
(
"disease cannot be null"
);
}
if
(!
dapiConnector
.
isValidConnection
())
{
return
null
;
}
...
...
@@ -230,7 +231,8 @@ public class ChemicalParser {
private
List
<
Chemical
>
fetchChemicals
(
ListChemicalEntityDto
list
,
MiriamData
disease
)
throws
DapiConnectionException
{
List
<
Chemical
>
result
=
new
ArrayList
<>();
for
(
ChemicalEntityDto
entity
:
list
.
getContent
())
{
Chemical
chemical
=
getByIdentifier
(
MiriamType
.
getMiriamDataFromPrefixIdentifier
(
entity
.
getSourceIdentifier
()),
disease
);
Chemical
chemical
=
getByIdentifier
(
MiriamType
.
getMiriamDataFromPrefixIdentifier
(
entity
.
getSourceIdentifier
()),
disease
);
if
(
chemical
==
null
)
{
logger
.
warn
(
"Invalid chemical identifier: "
+
entity
.
getSourceIdentifier
());
}
else
{
...
...
@@ -252,8 +254,8 @@ public class ChemicalParser {
Chemical
chemical
=
chemicalEntityDtoConverter
.
dtoToChemical
(
result
);
Set
<
Target
>
targetsToRemove
=
new
HashSet
<>();
for
(
Target
t
:
chemical
.
getTargets
())
{
if
(
disease
!=
null
&&
!
Objects
.
equals
(
t
.
getAssociatedDisease
(),
disease
))
{
for
(
Target
t
:
chemical
.
getTargets
())
{
if
(
disease
!=
null
&&
!
Objects
.
equals
(
t
.
getAssociatedDisease
(),
disease
))
{
targetsToRemove
.
add
(
t
);
}
}
...
...
annotation/src/main/java/lcsb/mapviewer/annotation/services/dapi/DapiConnectorImpl.java
View file @
518c3ef7
...
...
@@ -26,7 +26,7 @@ public class DapiConnectorImpl extends CachableInterface implements DapiConnecto
private
static
Logger
logger
=
LogManager
.
getLogger
();
private
static
final
String
DAPI_DOMAIN
=
"dapi.lcsb.uni.lu"
;
private
static
final
String
DAPI_BASE_URL
=
"http://"
+
DAPI_DOMAIN
+
"/api/"
;
private
static
final
String
DAPI_BASE_URL
=
"http
s
://"
+
DAPI_DOMAIN
+
"/api/"
;
private
ConfigurationDao
configurationDao
;