Skip to content

Commit f06ab35

Browse files
committed
Merge branch 'hotfix-1.4.3'
2 parents 6345580 + 1860374 commit f06ab35

24 files changed

+245
-187
lines changed

docs/api.md

+3-4
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@ Authorization: Bearer {accessToken}
1414

1515
Passing the authorization token via `auth` query parameter is deprecated as of 1.4.0.
1616

17-
Keep in mind that the token you use is tied to a user that has permissions.
18-
What you can see through the API will be restricted to what the corresponding
19-
user is authorized to read.
17+
Keep in mind that the token you use is tied to a user that has permissions. What you can see through the API will be
18+
restricted to what the corresponding user is authorized to read.
2019

2120
## List all users
2221

@@ -55,7 +54,7 @@ GET /api/users/search HTTP/1.1
5554
By name:
5655

5756
- `nameLike` a name in the user profile
58-
- `prefix` a boolean `true` or `false` as to whether the name search is matching a prefix
57+
- `prefix` a boolean `true` or `false` whether the name search is matching a prefix
5958

6059
By description:
6160

docs/customization.md

+51-49
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,17 @@ update the software.
1515
## Gene information and GO terms
1616

1717
By default, RDP will retrieve the latest gene information from NCBI, and GO terms
18-
from [Ontobee](http://www.ontobee.org/ontology/OBI). Users genes and GO terms will be updated after a
19-
successful update.
18+
from [Ontobee](http://www.ontobee.org/ontology/OBI). Users genes and GO terms will be updated after a successful update.
2019

2120
Gene information are obtained from [NCBI Gene FTP server](https://ftp.ncbi.nih.gov/gene/DATA/GENE_INFO/)
2221
with URLs stored in the database. You can retrieve these with the following query:
2322

2423
```sql
2524
select taxon_id, scientific_name, gene_url from taxon;
2625
```
27-
For example, the `gene_url` column for *Homo sapiens* would contain `ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/GENE_INFO/Mammalia/Homo_sapiens.gene_info.gz`
26+
27+
For example, the `gene_url` column for *Homo sapiens* would
28+
contain `ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/GENE_INFO/Mammalia/Homo_sapiens.gene_info.gz`
2829

2930
Genes' GO term annotations are also obtained from NCBI:
3031

@@ -38,23 +39,23 @@ GO terms, on the other hand, are obtained from Ontobee:
3839
rdp.settings.cache.term-file=http://purl.obolibrary.org/obo/go.obo
3940
```
4041

41-
42-
4342
## Taxon
4443

45-
The taxon table is pre-populated during the very first installation of the software, at which time only Human taxon is activated. To enable other taxons, set their `active` column to `1` in the database.
44+
The taxon table is pre-populated during the very first installation of the software, at which time only Human taxon is
45+
activated. To enable other taxon, set their `active` column to `1` in the database.
4646

4747
For example, the following will activate the mouse taxon:
4848

4949
```sql
5050
update taxon set active = 1 where taxon_id = 10090;
5151
```
52-
Every time the new model organisams are added to the application, they will have to be activated in this manner.
52+
53+
Every time the new model organisms are added to the application, they will have to be activated in this manner.
5354

5455
## Ortholog mapping
5556

56-
There is an ortholog mapping file that is included with the application and will automatically
57-
populate the database on startup. The ortholog mappings are based
57+
There is an ortholog mapping file that is included with the application and will automatically populate the database on
58+
startup. The ortholog mappings are based
5859
on [DIOPT](https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-12-357).
5960

6061
The default value points to a classpath resource included within RDP archive:
@@ -63,11 +64,13 @@ The default value points to a classpath resource included within RDP archive:
6364
rdp.settings.cache.ortholog-file=classpath:cache/DIOPT_filtered_data_May2021.gz
6465
```
6566

66-
It would also be possible to use another orthology resource, as long as it has the same format. For example, to use the NCBI gene orthologs:
67+
It would also be possible to use another ortholog resource, as long as it has the same format. For example, to use the
68+
NCBI gene orthologs:
6769

6870
```ini
6971
rdp.settings.cache.orthologs-file=ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene_orthologs.gz
7072
```
73+
7174
As with other remotely downloaded files, this would be updated monthly.
7275

7376
## Organ systems
@@ -80,17 +83,17 @@ and updated monthly.
8083
rdp.settings.cache.organ-file=http://purl.obolibrary.org/obo/uberon.obo
8184
```
8285

83-
Only a select few organ systems are active by default. You can activate more by running the following SQL command with a
84-
Uberon identifier of your choice:
86+
Only a select few organ systems are active by default. You can activate more by running the following SQL command with
87+
an Uberon identifier of your choice:
8588

8689
```sql
8790
update organ_info
8891
set active = true
8992
where uberon_id = '<uberon_id>';
9093
```
9194

92-
If you activate a non-default organ system, consider adding an icon for it by
93-
following the instructions in the [Style and static resources](#style-and-static-resources)
95+
If you activate a non-default organ system, consider adding an icon for it by following the instructions in
96+
the [Style and static resources](#style-and-static-resources)
9497
section below.
9598

9699
To disable organ systems altogether, set the following in your configuration:
@@ -101,8 +104,8 @@ rdp.settings.organs.enabled=false
101104

102105
## Loading data from disk
103106

104-
It's also possible to store all the above mentioned info locally, instead of fetching it remotely. The following settings will retrieve all the necessary files relative to the
105-
working directory of the Web application:
107+
It's also possible to store all the above mentioned info locally, instead of fetching it remotely. The following
108+
settings will retrieve all the necessary files relative to the working directory of the Web application:
106109

107110
```ini
108111
#this setting relates only to gene info files. Files for all taxons will be stord under gene/
@@ -119,9 +122,9 @@ rdp.settings.cache.organ-file=file:uberon.obo
119122
rdp.settings.cache.ortholog-file=file:DIOPT_filtered_data_March2020.txt
120123
```
121124

122-
With `rdp.settings.load-from-disk` enabled, the basename from the `gene_url` (mentioned above) will
123-
be used in conjustion with `rdp.settings.gene-files-location`. For example *Homo
124-
sapiens* taxon would be retrieved from `genes/Homo_sapiens.gene_info.gz`
125+
With `rdp.settings.load-from-disk` enabled, the basename from the `gene_url` (mentioned above) will be used in
126+
conjunction with `rdp.settings.gene-files-location`. For example *Homo sapiens* taxon would be retrieved
127+
from `genes/Homo_sapiens.gene_info.gz`
125128

126129
## International data
127130

@@ -131,40 +134,40 @@ do not have HTTPS setup for you domain, you can consult the following guides on
131134
- [medium.com/@raupach/how-to-install-lets-encrypt-with-tomcat-3db8a469e3d2](https://medium.com/@raupach/how-to-install-lets-encrypt-with-tomcat-3db8a469e3d2)
132135
- [community.letsencrypt.org/t/configuring-lets-encrypt-with-tomcat-6-x-and-7-x/32416](https://community.letsencrypt.org/t/configuring-lets-encrypt-with-tomcat-6-x-and-7-x/32416)
133136

134-
Registries can access each other public data by enabling `rdp.settings.isearch.enabled` and setting up the `rdp.settings.isearch.apis` in
135-
the `application.properties` file to contain a comma-delimited list of partner registry URLs.
137+
Registries can access each other public data by enabling `rdp.settings.isearch.enabled` and setting up
138+
the `rdp.settings.isearch.apis` in the `application.properties` file to contain a comma-delimited list of partner
139+
registry URLs.
136140

137141
```ini
138142
rdp.settings.isearch.enabled=true
139143
rdp.settings.isearch.apis=https://register.rare-diseases-catalyst-network.ca/
140144
```
141145

142-
A secure communication between different instances is achieved using a special search token which gets appended to remote queries. Currently there is one
143-
token that is used by all partner registries.
146+
A secure communication between different instances is achieved using a special search token which gets appended to
147+
remote queries. Currently, there is one token that is used by all partner registries.
144148

145-
The token can be generated using OpenSSL: `openssl rand -base64 24` and it would look something like this: `hrol3Y4z2OE0ayK227i8oHTLDjPtRfb4` (this is just an example). Once generated, this token is shared securely with partner registries.
149+
The token can be generated using OpenSSL: `openssl rand -base64 24` and it would look something like
150+
this: `hrol3Y4z2OE0ayK227i8oHTLDjPtRfb4` (this is just an example). Once generated, this token is shared securely with
151+
partner registries.
146152

147153
The token is added to the `application.properties` file in the following way:
148154

149155
```ini
150156
rdp.settings.isearch.search-token=hrol3Y4z2OE0ayK227i8oHTLDjPtRfb4
151157
```
152158

153-
154159
On the receiving side, the partner registry must create a user that is used to perform privileged searches.
155160

156161
This is usually done by creating a remote administrative account:
157162

158163
```sql
159164
insert into user ( email, enabled, password, privacy_level, description, last_name, name, shared, hide_genelist, contact_email_verified)
160-
values(concat(rand(),"@rdmm.com"), 0, md5(rand()), 0, "remote admin profile", "", "", false, false, false);
165+
values(concat(rand(),'@rdmm.com'), 0, md5(rand()), 0, 'remote admin profile', '', '', false, false, false);
161166
insert into user_role (user_id,role_id) values ((select max(user_id) from user), 1);
162167
insert into user_role (user_id,role_id) values ((select max(user_id) from user), 2);
163168
select max(user_id) from user;
164169
```
165170

166-
167-
168171
Let's assume that the created user's ID was 522. The partner would then add the token to
169172
its `rdp.settings.isearch.auth-tokens` setting along any existing tokens.
170173

@@ -173,12 +176,13 @@ rdp.settings.isearch.user-id=522
173176
rdp.settings.isearch.auth-tokens=jLb22QZzsaT6/w3xwDHBObmZPypJgXfb,hrol3Y4z2OE0ayK227i8oHTLDjPtRfb4
174177
```
175178

176-
This allows you to query private data from the partner registry when logged in as an administrator on your own
177-
registry.
179+
This allows you to query private data from the partner registry when logged in as an administrator on your own registry.
178180

179181
## Gene Tiers
180182

181-
Users' genes are categorized in tiers based on their familiarity and experience with the gene. This is explained in detail in the users' documentation and FAQs. Users add TIER1 and TIER2 genes directly, while TIER3 genes are inferred from GO term associations.
183+
Users' genes are categorized in tiers based on their familiarity and experience with the gene. This is explained in
184+
detail in the users' documentation and FAQs. Users add TIER1 and TIER2 genes directly, while TIER3 genes are inferred
185+
from GO term associations.
182186

183187
To enable only TIER1 and TIER2, and thus disabling GO terms-related features, add the following to your configuration:
184188

@@ -189,8 +193,7 @@ rdp.settings.enabled-tiers=TIER1,TIER2
189193
## Researcher position
190194

191195
Researcher positions can be enabled or disabled by setting the
192-
`rdp.settings.profile.enabled-researcher-positions` to a list of desired
193-
values.
196+
`rdp.settings.profile.enabled-researcher-positions` to a list of desired values.
194197

195198
For the moment, only one value is defined `PRINCIPAL_INVESTIGATOR`.
196199

@@ -203,21 +206,20 @@ To disable this feature, just leave the setting blank.
203206
## Researcher categories
204207

205208
Researcher categories can be enabled or disabled by setting the
206-
`rdp.settings.profile.enabled-researcher-categories` to a list of desired
207-
values.
209+
`rdp.settings.profile.enabled-researcher-categories` to a list of desired values.
208210

209211
```ini
210212
rdp.settings.profile.enabled-researcher-categories=IN_SILICO,IN_VIVO
211213
```
212214

213215
The available values are:
214216

215-
- `IN_VIVO`
216-
- `IN_VITRO_BIOCHEMICAL`
217-
- `IN_VITRO_CELLS`
218-
- `IN_VITRO_STRUCTURAL`
219-
- `IN_SILICO`
220-
- `OTHER`
217+
- `IN_VIVO`
218+
- `IN_VITRO_BIOCHEMICAL`
219+
- `IN_VITRO_CELLS`
220+
- `IN_VITRO_STRUCTURAL`
221+
- `IN_SILICO`
222+
- `OTHER`
221223

222224
To disable this feature, just leave the setting blank.
223225

@@ -230,11 +232,9 @@ rdp.settings.privacy.enabled-levels=PUBLIC,SHARED,PRIVATE
230232
rdp.settings.privacy.enabled-gene-levels=PUBLIC,SHARED,PRIVATE
231233
```
232234

233-
Note that any value enabled for genes that is not also enabled for profiles
234-
will be ignored.
235+
Note that any value enabled for genes that is not also enabled for profiles will be ignored.
235236

236-
To allow user to modify the privacy level of their profile and individual
237-
genes, set the following properties:
237+
To allow user to modify the privacy level of their profile and individual genes, set the following properties:
238238

239239
```ini
240240
rdp.settings.privacy.customizable-level=true
@@ -258,7 +258,8 @@ rdp.settings.privacy.enable-anonymized-search-results=false
258258

259259
## Customizing the application's messages
260260

261-
Some text displayed in RDP can be customized and/or internationalized. To do so, copy a provided `messages.properties` file in the working directory of the Web application and edit it. The file is found in
261+
Some text displayed in RDP can be customized and/or internationalized. To do so, copy a provided `messages.properties`
262+
file in the working directory of the Web application and edit it. The file is found in
262263
[messages.properties](https://github.com/PavlidisLab/rgr/blob/master/src/main/resources/messages.properties)
263264

264265
You can use suffixed like `messages_en_CA.properties` for region-specific customization.
@@ -275,15 +276,16 @@ the `rdp.settings.faq-file` parameter:
275276
rdp.settings.faq-file=file:faq.properties
276277
```
277278

278-
In the file, each entry requires two parts: `rdp.faq.questions.<q_key>` and `rdp.faq.answers.<q_key>` which hold the question and the corresponding
279-
answer, respectively.
279+
In the file, each entry requires two parts: `rdp.faq.questions.<q_key>` and `rdp.faq.answers.<q_key>` which hold the
280+
question and the corresponding answer, respectively.
280281

281282
```ini
282283
rdp.faq.questions.<q_key>=A relevant question.
283284
rdp.faq.answers.<q_key>=A plausible answer.
284285
```
285286

286-
The provided default file can be found in [faq.properties](https://github.com/PavlidisLab/rgr/tree/master/src/main/resources/faq.properties).
287+
The provided default file can be found
288+
in [faq.properties](https://github.com/PavlidisLab/rgr/tree/master/src/main/resources/faq.properties).
287289

288290
## Style and static resources
289291

docs/deployment.md

+15-11
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ Set `-Dserver.port=<port>` to adjust the port the embedded webserver is listenin
1313

1414
### Fast random number generation
1515

16-
Specify `-Djava.security.egd=file:/dev/urandom` this if you receive logs such as: _"Creation of SecureRandom instance for
17-
session ID generation using [SHA1PRNG] took [235,853] milliseconds."_ The secure random calls may be blocking as there is
18-
not enough entropy to feed them in `/dev/random`.
16+
Specify `-Djava.security.egd=file:/dev/urandom` this if you receive logs such as: _"Creation of SecureRandom instance
17+
for session ID generation using [SHA1PRNG] took [235,853] milliseconds."_ The secure random calls may be blocking as
18+
there is not enough entropy to feed them in `/dev/random`.
1919

2020
### Proxy configuration
2121

@@ -27,7 +27,8 @@ Likewise, you can set up a proxy for FTP connections with `-Dftp.proxyHost` and
2727

2828
1. Create a working directory for the web service: `mkdir -p /project/directory`
2929
2. Move into that directory: `cd /project/directory`
30-
3. Download the latest release: `wget -O rdp-{{ config.extra.rdp_version }}.jar https://github.com/PavlidisLab/rdp/releases/download/v{{ config.extra.rdp_version }}/rdp-{{ config.extra.rdp_version }}.jar`
30+
3. Download the latest
31+
release: `wget -O rdp-{{ config.extra.rdp_version }}.jar https://github.com/PavlidisLab/rdp/releases/download/v{{ config.extra.rdp_version }}/rdp-{{ config.extra.rdp_version }}.jar`
3132
4. Create `application.properties`, and optionally `faq.properties` and
3233
`messages.properties` if you want to [customize messages](customization.md#customizing-the-applications-messages).
3334
5. Test your setup: `java -jar rdp-{{ config.extra.rdp_version }}.jar`
@@ -36,11 +37,10 @@ Likewise, you can set up a proxy for FTP connections with `-Dftp.proxyHost` and
3637

3738
## Integration with systemd
3839

39-
If you are not using a container technology such as Docker, we recommend that
40-
you use a systemd service unit to deploy your RDP instance.
40+
If you are not using a container technology such as Docker, we recommend that you use a systemd service unit to deploy
41+
your RDP instance.
4142

42-
Create a file under `/etc/systemd/system/rdp.service` with the following
43-
content:
43+
Create a file under `/etc/systemd/system/rdp.service` with the following content:
4444

4545
```Ini
4646
[Unit]
@@ -63,7 +63,7 @@ WantedBy=multi-user.target
6363

6464
### Apache
6565

66-
Create a standard virtual host seection with the following proxies:
66+
Create a standard virtual host section with the following proxies:
6767

6868
```
6969
ProxyPass / http://localhost:<port>/
@@ -72,6 +72,10 @@ ProxyPassReverse / http://localhost:<port>/
7272

7373
## More information
7474

75-
For custom cloud deployments see [Spring Boot: Deploying to the Cloud](https://docs.spring.io/spring-boot/docs/current/reference/html/cloud-deployment.html).
75+
For custom cloud deployments
76+
see [Spring Boot: Deploying to the Cloud](https://docs.spring.io/spring-boot/docs/current/reference/html/cloud-deployment.html)
77+
.
7678

77-
To install as a system service see [Spring Boot: Installing Spring Boot Applications](https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html).
79+
To install as a system service
80+
see [Spring Boot: Installing Spring Boot Applications](https://docs.spring.io/spring-boot/docs/current/reference/html/deployment-install.html)
81+
.

docs/installation.md

+12-13
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,12 @@ Download the [latest jar distribution](https://github.com/PavlidisLab/rgr/releas
1616
wget https://github.com/PavlidisLab/rgr/releases/download/v{{ config.extra.rdp_version }}/rdp-{{ config.extra.rdp_version }}.jar
1717
```
1818

19-
The jar contains the core application, including an embedded webserver (Tomcat 8.5.x),
20-
a task scheduler, an in-memory cache, and much more!
19+
The jar contains the core application, including an embedded webserver (Tomcat 8.5.x), a task scheduler, an in-memory
20+
cache, and much more!
2121

22-
## Setup the MySQL database
22+
## Set up the MySQL database
2323

24-
Create the database and an associated user that the application will use to
25-
store and retrieve data.
24+
Create the database and an associated user that the application will use to store and retrieve data.
2625

2726
```sql
2827
create database <database name> character set utf8mb4 collate utf8mb4_general_ci;
@@ -54,21 +53,21 @@ spring.mail.properties.mail.smtp.auth=true
5453
spring.mail.properties.mail.smtp.starttls.enable=true
5554
```
5655

57-
This file contains the database and SMTP credentials and various runtime
58-
configurations. Make sure it's only readable by the user that will run the
59-
instance.
56+
This file contains the database and SMTP credentials and various runtime configurations. Make sure it's only readable by
57+
the user that will run the instance.
6058

61-
Documentation for options with their default values are available in [application.properties](https://github.com/PavlidisLab/rgr/blob/development/src/main/resources/application.properties).
59+
Documentation for options with their default values are available
60+
in [application.properties](https://github.com/PavlidisLab/rgr/blob/development/src/main/resources/application.properties)
61+
.
6262

63-
That should be enough to get the Web service started. Now you can launch it by
64-
issuing the following command:
63+
That should be enough to get the Web service started. Now you can launch it by issuing the following command:
6564

6665
```bash
6766
java -jar rdp-{{ config.extra.rdp_version }}.jar
6867
```
6968

70-
If your email server is not properly configured, you will see an error from the
71-
Spring Actuator health check. You can detect further issues by looking at the
69+
If your email server is not properly configured, you will see an error from the Spring Actuator health check. You can
70+
detect further issues by looking at the
7271
`/admin/health` endpoint with administrative privilege.
7372

7473
## Create an administrative account

0 commit comments

Comments
 (0)