+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Thank you for joining OpenDMP!
+ Please confirm that your email address is correct to continue.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Confirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Confirmation/Email/subject.en.txt
new file mode 100644
index 000000000..b6107c108
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Confirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Email Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/body.en.html
new file mode 100644
index 000000000..e85ecdd4c
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/body.en.html
@@ -0,0 +1,305 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ You have been invited to collaborate to Data Management plan {dmpname} with role {dmprole}.
+ Click the button to redirect to {dmpname}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/subject.en.txt
new file mode 100644
index 000000000..2c36d1524
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/DataManagementPlan/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Data Management Plan Invite
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/body.en.html
new file mode 100644
index 000000000..7316beb27
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just finalised the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/subject.en.txt
new file mode 100644
index 000000000..a53f1a7bc
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Finalised/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Finalised
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/body.en.html
new file mode 100644
index 000000000..01f0536d6
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ User {userName} have sent you a merge Request.
+ Please confirm that you want to merge your {host} account with that account.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/subject.en.txt
new file mode 100644
index 000000000..5621c2292
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/MergeConfirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Merge Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/body.en.html
new file mode 100644
index 000000000..87460d2da
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just made changes to the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/subject.en.txt
new file mode 100644
index 000000000..ff3f31c75
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Modified/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Modified
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/body.en.html
new file mode 100644
index 000000000..1cfb61e82
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just made changes and finalised the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/subject.en.txt
new file mode 100644
index 000000000..a7ea51cb5
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/ModifiedFinalised/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Modified Finalised
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/body.en.html
new file mode 100644
index 000000000..d23a1d6d8
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just publish the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/subject.en.txt
new file mode 100644
index 000000000..8576f2649
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Publish/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Publish
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/body.en.html
new file mode 100644
index 000000000..7214de36b
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/body.en.html
@@ -0,0 +1,305 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ You have been invited to co-develop the Template {templateName}.
+ Click the button to redirect to {templateName}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/subject.en.txt
new file mode 100644
index 000000000..ad592424e
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/Template/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Template Invite
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/body.en.html b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/body.en.html
new file mode 100644
index 000000000..ee547f813
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ You have made a request to unlink your email account in ARGOS.
+ Please confirm that you want to unlink your {email} account.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/subject.en.txt
new file mode 100644
index 000000000..e957d468f
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/src/main/resources/notification_templates/UnlinkConfirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Unlink Email Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/certificates/elasticsearch_dev04.crt b/dmp-backend/notification-service/notification-web/target/classes/certificates/elasticsearch_dev04.crt
new file mode 100644
index 000000000..ae8d7a7c5
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/certificates/elasticsearch_dev04.crt
@@ -0,0 +1,20 @@
+-----BEGIN CERTIFICATE-----
+MIIDUjCCAjqgAwIBAgIUKTnOSL0Rtnm8ZQkfSUvpQiBNGnMwDQYJKoZIhvcNAQEL
+BQAwNDEyMDAGA1UEAxMpRWxhc3RpYyBDZXJ0aWZpY2F0ZSBUb29sIEF1dG9nZW5l
+cmF0ZWQgQ0EwHhcNMTkwOTAzMTUyMDM1WhcNMjIwOTAyMTUyMDM1WjAYMRYwFAYD
+VQQDEw1lbGFzdGljc2VhcmNoMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEAkB1OMRBRUDUxQ6fIv5gv0myKDZgVJFnEEjIjU6YjMpf/htTsvu8zdpBoWhg6
+7IsflSkUPynDG4geFjQ/WtxVeqxjnmtIB2fMDAHppX882as3tYjBlHj1sU0/OwwI
+Ga5/OtxOubGswrzCEEjIgZwTtSX2Yzx3tE2UzwjWsYwGCBM/ssN8Wc1vlqq20+Qr
+Lsggk+dXapN2wL9FABrxrJfV2SxXb2qKLKVd3EIfs+HVqIt9dVrpcFRV3Lwexg+Z
+wlJv58EPsynphczssBhMOhlmVqpRY8z88fqsbqDVdqHIF8hqn7czWFqeCRldnb7W
+LWaYaOG0Jd6SM7OpHnfNgBST4wIDAQABo3gwdjAdBgNVHQ4EFgQUCkDAcWSJ6H2G
+UFFh9dhk+mG0L08wHwYDVR0jBBgwFoAUDF2zHdVwSwxo9Z7sa9vIc4Sd+1MwKQYD
+VR0RBCIwIIIJbG9jYWxob3N0hwR/AAABgg1lbGFzdGljc2VhcmNoMAkGA1UdEwQC
+MAAwDQYJKoZIhvcNAQELBQADggEBAAQpkdkGl2H0ylgbmmNiIlrQX+U2i4ag4sJ6
+xsVR5OWxuyB/aMWhuOHkgueMh2wElufn60jK0Mh25b2U7oO/0Nq+28rhhP9HURLz
+7/TwCbLcglTAgHQPWItwn5r5WKDFNCPNpZXFU/oG5H6hUJqTvuaTN6G/PQ6V9Yp3
+J00NbPuFq8tjNAc/kQnhC7zdC/7YQ/fanHBPkvQnkGbac5+VAF/se/JYbxRpSz23
+5a+v6BDb/kjs82QgV8dzsyFmntO+Neesu9tTJurBbQD5T3xMgoGSWLgnTCq3/drl
+PMBLgUQHik629dU+7o8ePCdyULruGMR6CIBqO7ZKQASulhkxdUo=
+-----END CERTIFICATE-----
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/application.yml b/dmp-backend/notification-service/notification-web/target/classes/config/application.yml
new file mode 100644
index 000000000..4f9a66b6d
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/application.yml
@@ -0,0 +1,20 @@
+spring:
+ jackson:
+ default-property-inclusion: non_null
+ config:
+ import: optional:classpath:config/app.env[.properties], optional:file:../config/app.env[.properties],
+ optional:classpath:config/db.yml[.yml], optional:classpath:config/db-${spring.profiles.active}.yml[.yml], optional:file:../config/db-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/permissions.yml[.yml], optional:classpath:config/permissions-${spring.profiles.active}.yml[.yml], optional:file:../config/permissions-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/errors.yml[.yml], optional:classpath:config/errors-${spring.profiles.active}.yml[.yml], optional:file:../config/errors-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/security.yml[.yml], optional:classpath:config/security-${spring.profiles.active}.yml[.yml], optional:file:../config/security-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/server.yml[.yml], optional:classpath:config/server-${spring.profiles.active}.yml[.yml], optional:file:../config/server-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/logging.yml[.yml], optional:classpath:config/logging-${spring.profiles.active}.yml[.yml], optional:file:../config/logging-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/idpclaims.yml[.yml], optional:classpath:config/idpclaims-${spring.profiles.active}.yml[.yml], optional:file:../config/idpclaims-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/cache.yml[.yml], optional:classpath:config/cache-${spring.profiles.active}.yml[.yml], optional:file:../config/cache-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/tenant.yml[.yml], optional:classpath:config/tenant-${spring.profiles.active}.yml[.yml], optional:file:../config/tenant-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/locale.yml[.yml], optional:classpath:config/locale-${spring.profiles.active}.yml[.yml], optional:file:../config/locale-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/cors.yml[.yml], optional:classpath:config/cors-${spring.profiles.active}.yml[.yml], optional:file:../config/cors-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/notification.yml[.yml], optional:classpath:config/notification-${spring.profiles.active}.yml[.yml], optional:file:../config/notification-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/email.yml[.yml], optional:classpath:config/email-${spring.profiles.active}.yml[.yml], optional:file:../config/email-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/cipher.yml[.yml], optional:classpath:config/cipher-${spring.profiles.active}.yml[.yml], optional:file:../config/cipher-${spring.profiles.active}.yml[.yml],
+ optional:classpath:config/formatting.yml[.yml], optional:classpath:config/formatting-${spring.profiles.active}.yml[.yml], optional:file:../config/formatting-${spring.profiles.active}.yml[.yml]
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/cache.yml b/dmp-backend/notification-service/notification-web/target/classes/config/cache.yml
new file mode 100644
index 000000000..5b30dee77
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/cache.yml
@@ -0,0 +1,77 @@
+cache:
+ manager:
+ fallbackToNoOpCache: true
+ caffeineCaches:
+ - names: [ apikey ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 10
+ expireAfterAccessMinutes: 10
+ refreshAfterWriteMinutes: 10
+ - names: [ tenantByCode ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 10
+ expireAfterAccessMinutes: 10
+ refreshAfterWriteMinutes: 10
+ - names: [ tenantById ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 10
+ expireAfterAccessMinutes: 10
+ refreshAfterWriteMinutes: 10
+ - names: [ userBySubjectId ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 5
+ expireAfterAccessMinutes: 5
+ refreshAfterWriteMinutes: 5
+ - names: [ userAccessTenant ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 5
+ expireAfterAccessMinutes: 5
+ refreshAfterWriteMinutes: 5
+ - names: [ formattingUserProfile ]
+ allowNullValues: true
+ initialCapacity: 100
+ maximumSize: 500
+ enableRecordStats: false
+ expireAfterWriteMinutes: 1
+ expireAfterAccessMinutes: 1
+ refreshAfterWriteMinutes: 1
+ mapCaches:
+ - names: [ cacheB ]
+ allowNullValues: true
+ storeByValue: true
+ apiKey:
+ name: apikey
+ keyPattern: resolve_$keyhash$:v0
+ userBySubjectId:
+ name: userBySubjectId
+ keyPattern: user_by_subject_$subject$:v0
+ tenantByCode:
+ name: tenantByCode
+ keyPattern: tenant_by_code_$code$:v0
+ tenantById:
+ name: tenantById
+ keyPattern: tenant_by_id_$tenantId$:v0
+ userAllowedTenant:
+ name: userAccessTenant
+ keyPattern: user_access_tenant_$user_id$_$tenant_id$:v0
+ formattingUserProfileCache:
+ name: formattingUserProfile
+ keyPattern: formatting_user_profile$user_id$:v0
+ template:
+ name: template
+ key-pattern: ------
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/cipher.yml b/dmp-backend/notification-service/notification-web/target/classes/config/cipher.yml
new file mode 100644
index 000000000..caa559296
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/cipher.yml
@@ -0,0 +1,35 @@
+cipher-profiles:
+ profile-map:
+ configuration-profile-name: "configuration"
+ queue-profile-name: "queue"
+ notification-profile-name: "queue"
+
+cipher:
+# salted-hash:
+# default-o: null
+# options: null
+ symetric-encryption:
+ default-o: null
+ options:
+ configuration:
+ aes:
+ key: ${CIPHER_SYMETRIC_ENCRYPTION_CONFIGURATION_AES_KEY:}
+ iv: ${CIPHER_SYMETRIC_ENCRYPTION_CONFIGURATION_AES_IV:}
+ queue:
+ aes:
+ key: ${CIPHER_SYMETRIC_ENCRYPTION_QUEUE_AES_KEY:}
+ iv: ${CIPHER_SYMETRIC_ENCRYPTION_QUEUE_AES_IV:}
+ masking:
+ default: null
+ options:
+ configuration:
+ character: "*"
+ clear-begining: 2
+ clear-ending: 4
+ at-least-percentage: 70
+ digital-signature:
+ default: null
+ options:
+ configuration:
+ certificate-path: null
+ certificate-password: null
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/cors-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/cors-devel.yml
new file mode 100644
index 000000000..3e9227ef3
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/cors-devel.yml
@@ -0,0 +1,3 @@
+web:
+ cors:
+ allowed-origins: [ http://localhost, http://localhost:4200 ]
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/cors.yml b/dmp-backend/notification-service/notification-web/target/classes/config/cors.yml
new file mode 100644
index 000000000..3774f14d4
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/cors.yml
@@ -0,0 +1,7 @@
+web:
+ cors:
+ enabled: true
+ allowed-methods: [ HEAD, GET, POST, PUT, DELETE, PATCH ]
+ allowed-headers: [ Authorization, Cache-Control, Content-Type, Content-Disposition, x-tenant ]
+ exposed-headers: [ Authorization, Cache-Control, Content-Type, Content-Disposition ]
+ allow-credentials: false
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/db-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/db-devel.yml
new file mode 100644
index 000000000..22a089fbd
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/db-devel.yml
@@ -0,0 +1,7 @@
+spring:
+ jpa:
+ show-sql: true
+ properties:
+ hibernate:
+ show_sql: true
+ format_sql: false
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/db.yml b/dmp-backend/notification-service/notification-web/target/classes/config/db.yml
new file mode 100644
index 000000000..ede758c3b
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/db.yml
@@ -0,0 +1,21 @@
+spring:
+ jpa:
+ properties:
+ hibernate:
+ ddl-auto: validate
+ dialect: org.hibernate.dialect.PostgreSQLDialect
+ hibernate:
+ naming:
+ physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
+ implicit-strategy: org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
+ datasource:
+ url: ${DB_CONNECTION_STRING}
+ username: ${DB_USER}
+ password: ${DB_PASSWORD}
+ driver-class-name: org.postgresql.Driver
+ hikari:
+ connection-timeout: 30000
+ minimum-idle: 3
+ maximum-pool-size: 5
+ idle-timeout: 600000
+ max-lifetime: 1800000
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/email.yml b/dmp-backend/notification-service/notification-web/target/classes/config/email.yml
new file mode 100644
index 000000000..fb7c94ba0
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/email.yml
@@ -0,0 +1,14 @@
+spring:
+ mail:
+ host: ${MAIL_HOST:}
+ port: ${MAIL_PORT:}
+ username: ${MAIL_USERNAME:}
+ password: ${MAIL_PASSWORD:}
+ properties:
+ mail:
+ smtp:
+ auth: ${MAIL_AUTH:}
+ starttls:
+ enable: ${MAIL_TLS:}
+email:
+ address: ${MAIL_ADDRESS:}
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/errors.yml b/dmp-backend/notification-service/notification-web/target/classes/config/errors.yml
new file mode 100644
index 000000000..79762a9e7
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/errors.yml
@@ -0,0 +1,43 @@
+error-thesaurus:
+ hash-conflict:
+ code: 100
+ message: there is a hash conflict for the item modified. please reload to get the latest changes
+ forbidden:
+ code: 101
+ message: insufficient rights
+ system-error:
+ code: 102
+ message: an unexpected system error occurred
+ missing-tenant:
+ code: 103
+ message: tenant scope not provided
+ invalid-api-key:
+ code: 104
+ message: provided APIKey not valid
+ stale-api-key:
+ code: 105
+ message: there was a problem authorizing you with your API key. Please try again. Contact the system administrator if the problem persists
+ model-validation:
+ code: 106
+ message: validation error
+ sensitive-info:
+ code: 107
+ message: you are attempting to access sensitive information. please don't do that
+ non-person-principal:
+ code: 108
+ message: the operation is available only to person users
+ blocking-consent:
+ code: 113
+ message: user consents are not sufficient to complete the operation
+ single-tenant-configuration-per-type-supported:
+ code: 116
+ message: a single tenant configuration entry per config type is supported
+ incompatible-tenant-configuration-types:
+ code: 117
+ message: the provided tenant configuration type is incompatible
+ missing-totp-token:
+ code: 118
+ message: totp token not provided
+ overlapping-tenant-configuration-notifier-list:
+ code: 119
+ message: Overlapping Tenant Configuration Notifier List
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/formatting.yml b/dmp-backend/notification-service/notification-web/target/classes/config/formatting.yml
new file mode 100644
index 000000000..abdc31184
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/formatting.yml
@@ -0,0 +1,6 @@
+formatting:
+ options:
+ integer-format: "%,d"
+ decimal-digits-round: 2
+ decimal-format: "#0.00"
+ date-time-format: "YYYY-MM-dd'T'HH:mm:ss"
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/idpclaims.yml b/dmp-backend/notification-service/notification-web/target/classes/config/idpclaims.yml
new file mode 100644
index 000000000..9848dc492
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/idpclaims.yml
@@ -0,0 +1,50 @@
+idpclient:
+ claims:
+ mapping:
+ Subject:
+ - type: sub
+ Name:
+ - type: name
+ Client:
+ - type: client_id
+ AuthenticationMethod:
+ - type: amr
+ NotBefore:
+ - type: nbf
+ AuthenticatedAt:
+ - type: auth_time
+ ExpiresAt:
+ - type: exp
+ Email:
+ - type: email
+ Roles:
+ - type: resource_access
+ path: intelcomp-sti-viewer-dev.roles
+ - type: authorities
+ filterBy: "(.*):::TenantCode::"
+ extractByExpression: "(.*):(.*)"
+ extractExpressionValue: "[[g1]]"
+ Scope:
+ - type: scope
+ AccessToken:
+ - type: x-access-token
+ visibility: SENSITIVE
+ Tenant:
+ - type: x-tenant
+ IssuedAt:
+ - type: iat
+ Issuer:
+ - type: iss
+ Audience:
+ - type: aud
+ TokenType:
+ - type: typ
+ AuthorizedParty:
+ - type: azp
+ Authorities:
+ - type: authorities
+ TenantCodes:
+ - type: authorities
+ filterBy: "(.*):(.*)"
+ extractByExpression: "(.*):(.*)"
+ extractExpressionValue: "[[g2]]"
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/locale.yml b/dmp-backend/notification-service/notification-web/target/classes/config/locale.yml
new file mode 100644
index 000000000..b09c59e53
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/locale.yml
@@ -0,0 +1,4 @@
+locale:
+ timezone: UTC
+ language: en
+ culture: en-US
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/logging-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/logging-devel.yml
new file mode 100644
index 000000000..2f565c0d7
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/logging-devel.yml
@@ -0,0 +1,2 @@
+logging:
+ config: classpath:logging/logback-dev.xml
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/logging.yml b/dmp-backend/notification-service/notification-web/target/classes/config/logging.yml
new file mode 100644
index 000000000..56e152d3f
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/logging.yml
@@ -0,0 +1,35 @@
+logging:
+ context:
+ request:
+ requestIdKey: req.id
+ requestRemoteHostKey: req.remoteHost
+ requestUriKey: req.requestURI
+ requestQueryStringKey: req.queryString
+ requestUrlKey : req.requestURL
+ requestMethodKey: req.method
+ requestUserAgentKey: req.userAgent
+ requestForwardedForKey: req.xForwardedFor
+ requestSchemeKey: req.scheme
+ requestRemoteAddressKey: req.remoteAddr
+ requestRemotePortKey: req.remotePort
+ requestRemoteUserKey: req.remoteUser
+ principal:
+ subjectKey: usr.subject
+ nameKey: usr.name
+ clientKey: usr.client
+audit:
+ enable: true
+ requestRemoteHostKey: req.remoteHost
+ requestUriKey: req.requestURI
+ requestQueryStringKey: req.queryString
+ requestUrlKey : req.requestURL
+ requestMethodKey: req.method
+ requestUserAgentKey: req.userAgent
+ requestForwardedForKey: req.xForwardedFor
+ requestSchemeKey: req.scheme
+ requestRemoteAddressKey: req.remoteAddr
+ requestRemotePortKey: req.remotePort
+ requestRemoteUserKey: req.remoteUser
+ principalSubjectKey: usr.subject
+ principalNameKey: usr.name
+ principalClientKey: usr.client
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/notification-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/notification-devel.yml
new file mode 100644
index 000000000..fff9c2a54
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/notification-devel.yml
@@ -0,0 +1,6 @@
+notification:
+ staticFields:
+ fields:
+ - key: "{installation-url}"
+ type: "String"
+ value: "http://localhost:42000"
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/notification.yml b/dmp-backend/notification-service/notification-web/target/classes/config/notification.yml
new file mode 100644
index 000000000..69a28861d
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/notification.yml
@@ -0,0 +1,246 @@
+notification:
+ task:
+ processor:
+ enable: true
+ interval-seconds: 30
+ options:
+ retry-threshold: 300
+ max-retry-delay-seconds: 10800
+ too-old-to-send-seconds: 36000
+ too-old-to-track-seconds: 604800
+ overrides: []
+ resolver:
+ global-policies:
+ - #Confirmation
+ type: 4FDBFA80-7A71-4A69-B854-67CBB70648F1
+ contacts: [ email ]
+ - #DataManagementPlan
+ type: 065DEECD-21BB-44AF-9983-E660FDF24BC4
+ contacts: [ email ]
+ - #Finalised
+ type: 90DB0B46-42DE-BD89-AEBF-6F27EFEB256E
+ contacts: [ email ]
+ - #MergeConfirmation
+ type: BFE68845-CB05-4C5A-A03D-29161A7C9660
+ contacts: [ email ]
+ - #Modified
+ type: 4542262A-22F8-4BAA-9DB6-1C8E70AC1DBB
+ contacts: [ email ]
+ - #ModifiedFinalised
+ type: D3CD55FE-8DA2-42E7-A501-3795EE4F16D3
+ contacts: [ email ]
+ - #Publish
+ type: 55736F7A-83AB-4190-AF43-9D031A6F9612
+ contacts: [ email ]
+ - #Template
+ type: 223BB607-EFA1-4CE7-99EC-4BEABFEF9A8B
+ contacts: [ email ]
+ - #UnlinkConfirmation
+ type: C9BC3F16-057E-4BBA-8A5F-36BD835E5604
+ contacts: [ email ]
+ ad-hoc-config:
+ ad-hoc-notification-type: null
+ message:
+ email:
+ flows:
+ - #Confirmation
+ key: 4FDBFA80-7A71-4A69-B854-67CBB70648F1
+ subject-path: classpath:notification_templates/Confirmation/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+
+ body-path: classpath:notification_templates/Confirmation/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ ]
+ optional:
+ - key: "{expiration_time}"
+ value: --
+ formatting:
+ '[{expiration_time}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #DataManagementPlan
+ key: 065DEECD-21BB-44AF-9983-E660FDF24BC4
+ subject-path: classpath:notification_templates/DataManagementPlan/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/DataManagementPlan/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{dmpname}", "{dmprole}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{dmpname}]': null
+ '[{dmprole}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #Finalised
+ key: 90DB0B46-42DE-BD89-AEBF-6F27EFEB256E
+ subject-path: classpath:notification_templates/Finalised/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/Finalised/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{reasonName}", "{name}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{reasonName}]': null
+ '[{name}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #MergeConfirmation
+ key: BFE68845-CB05-4C5A-A03D-29161A7C9660
+ subject-path: classpath:notification_templates/MergeConfirmation/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/MergeConfirmation/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{userName}", "{host}" ]
+ optional:
+ - key: "{expiration_time}"
+ value: ---
+ formatting:
+ '[{userName}]': null
+ '[{host}]': null
+ '[{expiration_time}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #Modified
+ key: 4542262A-22F8-4BAA-9DB6-1C8E70AC1DBB
+ subject-path: classpath:notification_templates/Modified/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/Modified/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{reasonName}", "{name}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{reasonName}]': null
+ '[{name}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #ModifiedFinalised
+ key: D3CD55FE-8DA2-42E7-A501-3795EE4F16D3
+ subject-path: classpath:notification_templates/ModifiedFinalised/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/ModifiedFinalised/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{reasonName}", "{name}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{reasonName}]': null
+ '[{name}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #Publish
+ key: 55736F7A-83AB-4190-AF43-9D031A6F9612
+ subject-path: classpath:notification_templates/Publish/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/Publish/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{reasonName}", "{name}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{reasonName}]': null
+ '[{name}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #Template
+ key: 223BB607-EFA1-4CE7-99EC-4BEABFEF9A8B
+ subject-path: classpath:notification_templates/Template/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/Template/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ "{templateName}" ]
+ optional:
+ - key: "{recipient}"
+ value:
+ formatting:
+ '[{templateName}]': null
+ '[{recipient}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ - #UnlinkConfirmation
+ key: C9BC3F16-057E-4BBA-8A5F-36BD835E5604
+ subject-path: classpath:notification_templates/UnlinkConfirmation/Email/subject.{language}.txt
+ subject-field-options:
+ mandatory: [ ]
+ optional: [ ]
+ body-path: classpath:notification_templates/UnlinkConfirmation/Email/body.{language}.html
+ body-field-options:
+ mandatory: [ ]
+ optional:
+ - key: "{email}"
+ value:
+ formatting:
+ '[{email}]': null
+ cc: [ ]
+ cc-mode: 0
+ bcc: [ ]
+ bcc-mode: 0
+ allow-attachments: false
+ cipher-fields: [ ]
+ template-cache:
+ prefix: ${CACHE_DISAMBIGUATION:}
+ key-pattern: "{prefix}:Notification_Message_Email_Template:{key}:v0"
+ override-cache:
+ template-cache:
+ prefix: ${CACHE_DISAMBIGUATION:}
+ key-pattern: "{prefix}:Notification_Override_Template:{tenant}:{type}:{channel}:{{language}}:v0"
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/permissions.yml b/dmp-backend/notification-service/notification-web/target/classes/config/permissions.yml
new file mode 100644
index 000000000..2f8484c6b
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/permissions.yml
@@ -0,0 +1,143 @@
+permissions:
+ extendedClaims: [ ]
+ policies:
+
+ # Tenants
+ BrowseTenant:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ EditTenant:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ DeleteTenant:
+ roles:
+ - ic-sti-superuser
+ claims: [ ]
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ AllowNoTenant:
+ roles:
+ - ic-sti-superuser
+ claims: [ ]
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ # Users
+ BrowseUser:
+ roles:
+ - ic-sti-superuser
+ - tenantadmin
+ clients: [ ]
+ allowAnonymous: true
+ allowAuthenticated: false
+ EditUser:
+ roles:
+ - admin
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ DeleteUser:
+ roles:
+ - ic-sti-superuser
+ claims: [ ]
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ # UserContactInfo
+ BrowseUserContactInfo:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: true
+ allowAuthenticated: false
+ EditUserContactInfo:
+ roles:
+ - ic-sti-superuser
+ - user
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ DeleteUserContactInfo:
+ roles:
+ - ic-sti-superuser
+ claims: [ ]
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ #Notification
+ BrowseNotification:
+ roles:
+ - ic-sti-superuser
+ - user
+ clients: [ ]
+ allowAnonymous: true
+ allowAuthenticated: false
+ EditNotification:
+ roles:
+ - ic-sti-superuser
+ - user
+ clients: [ ]
+ allowAnonymous: true
+ allowAuthenticated: false
+ #Tenant Configuration
+ BrowseTenantConfiguration:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ EditTenantConfiguration:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ #User Notification Preference
+ BrowseUserNotificationPreference:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: true
+ allowAuthenticated: false
+ EditUserNotificationPreference:
+ roles:
+ - ic-sti-superuser
+ - user
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+
+ # ViewPage Permissions
+ ViewNotificationPage:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ ViewNotificationEventRulePage:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ ViewInAppNotificationPage:
+ roles:
+ - ic-sti-superuser
+ - tenantadmin
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
+ ViewNotificationTemplatePage:
+ roles:
+ - ic-sti-superuser
+ clients: [ ]
+ allowAnonymous: false
+ allowAuthenticated: false
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/queue-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/queue-devel.yml
new file mode 100644
index 000000000..f0e31766d
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/queue-devel.yml
@@ -0,0 +1,18 @@
+queue:
+ rabbitmq:
+ durable: true
+ queue: cite_dmp_devel_notification_inbox_queue
+ exchange: cite_dmp_devel_queue
+ listenerEnabled: true
+ publisherEnabled: true
+ task:
+ publisher:
+ options:
+ exchange: cite_dmp_devel_queue
+ rabbitmq:
+ enable: true
+ listener:
+ options:
+ exchange: cite_dmp_devel_queue
+ rabbitmq:
+ enable: false
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/queue.yml b/dmp-backend/notification-service/notification-web/target/classes/config/queue.yml
new file mode 100644
index 000000000..2886f369a
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/queue.yml
@@ -0,0 +1,58 @@
+spring:
+ rabbitmq:
+ host: ${RABBIT_HOST}
+ port: ${RABBIT_PORT}
+ username: ${RABBIT_USER}
+ password: ${RABBIT_PASS}
+ ssl:
+ enabled: false
+queue:
+ rabbitmq:
+ enable: false
+ app-id: ${THE_API_ID}
+ durable: null
+ queue: null
+ exchange: null
+ listenerEnabled: true
+ publisherEnabled: true
+ #TODO
+ connection-recovery:
+ enable: true
+ network-recovery-interval: 5000
+ unreachable-recovery-interval: 5000
+ task:
+ publisher:
+ enable: false
+ options:
+ exchange: null
+ forget-me-completed-topic: forgetme.completed
+ notify-topic: notification.notify
+ tenant-reactivation-topic: tenant.reactivated
+ tenant-removal-topic: tenant.remove
+ tenant-touch-topic: tenant.touch
+ tenant-user-invite-topic: tenant.invite
+ what-you-know-about-me-completed-topic: whatyouknowaboutme.completed
+ generate-file-topic: generate.file
+ rabbitmq:
+ enable: false
+ interval-seconds: 30
+ options:
+ retry-threashold: 100
+ retry-delay-step-seconds: 300
+ max-retry-delay-seconds: 10800
+ too-old-to-send-seconds: 604800
+ confirm-timeout-seconds: 30
+ listener:
+ enable: false
+ options:
+ exchange: null
+ user-removal-topic: [ "user.remove" ]
+ user-touched-topic: [ "user.touch" ]
+ rabbitmq:
+ enable: false
+ interval-seconds: 30
+ options:
+ retry-threashold: 100
+ retry-delay-step-seconds: 300
+ max-retry-delay-seconds: 10800
+ too-old-to-send-seconds: 604800
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/security.yml b/dmp-backend/notification-service/notification-web/target/classes/config/security.yml
new file mode 100644
index 000000000..3024921aa
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/security.yml
@@ -0,0 +1,20 @@
+web:
+ security:
+ enabled: true
+ authorized-endpoints: [ api ]
+ allowed-endpoints: [ public, dataset, master-item, test ]
+ idp:
+ api-key:
+ enabled: true
+ authorization-header: Authorization
+ client-id: ${IDP_APIKEY_CLIENT_ID}
+ client-secret: ${IDP_APIKEY_CLIENT_SECRET}
+ scope: ${IDP_APIKEY_SCOPE}
+ resource:
+ token-type: JWT
+ opaque:
+ client-id: ${IDP_OPAQUE_CLIENT_ID}
+ client-secret: ${IDP_OPAQUE_CLIENT_SECRET}
+ jwt:
+ claims: [ role, x-role ]
+ issuer-uri: ${IDP_ISSUER_URI:}
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/server-devel.yml b/dmp-backend/notification-service/notification-web/target/classes/config/server-devel.yml
new file mode 100644
index 000000000..2a628f82f
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/server-devel.yml
@@ -0,0 +1,2 @@
+server:
+ forward-headers-strategy: FRAMEWORK
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/server.yml b/dmp-backend/notification-service/notification-web/target/classes/config/server.yml
new file mode 100644
index 000000000..bc9a15d9f
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/server.yml
@@ -0,0 +1,3 @@
+server:
+ port: ${WEB_PORT}
+ forward-headers-strategy: NONE
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/config/tenant.yml b/dmp-backend/notification-service/notification-web/target/classes/config/tenant.yml
new file mode 100644
index 000000000..7fbc2f91c
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/config/tenant.yml
@@ -0,0 +1,8 @@
+tenant:
+ multitenancy:
+ is-multitenant: false
+ interceptor:
+ client-claims-prefix: client_
+ white-listed-clients: [ ]
+ enforce-trusted-tenant: false
+ white-listed-endpoints: [ '/api/principal/my-tenants', '/api/principal/me','/api/user/user-settings', '/error', '/api/tenant-request' ]
diff --git a/dmp-backend/notification-service/notification-web/target/classes/logging/logback-dev.xml b/dmp-backend/notification-service/notification-web/target/classes/logging/logback-dev.xml
new file mode 100644
index 000000000..0aaad5f31
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/logging/logback-dev.xml
@@ -0,0 +1,61 @@
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Thank you for joining OpenDMP!
+ Please confirm that your email address is correct to continue.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Confirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Confirmation/Email/subject.en.txt
new file mode 100644
index 000000000..b6107c108
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Confirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Email Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/body.en.html
new file mode 100644
index 000000000..e85ecdd4c
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/body.en.html
@@ -0,0 +1,305 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ You have been invited to collaborate to Data Management plan {dmpname} with role {dmprole}.
+ Click the button to redirect to {dmpname}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/subject.en.txt
new file mode 100644
index 000000000..2c36d1524
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/DataManagementPlan/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Data Management Plan Invite
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/body.en.html
new file mode 100644
index 000000000..7316beb27
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just finalised the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/subject.en.txt
new file mode 100644
index 000000000..a53f1a7bc
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Finalised/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Finalised
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/body.en.html
new file mode 100644
index 000000000..01f0536d6
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ User {userName} have sent you a merge Request.
+ Please confirm that you want to merge your {host} account with that account.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/subject.en.txt
new file mode 100644
index 000000000..5621c2292
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/MergeConfirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Merge Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/body.en.html
new file mode 100644
index 000000000..87460d2da
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just made changes to the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/subject.en.txt
new file mode 100644
index 000000000..ff3f31c75
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Modified/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Modified
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/body.en.html
new file mode 100644
index 000000000..1cfb61e82
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just made changes and finalised the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/subject.en.txt
new file mode 100644
index 000000000..a7ea51cb5
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/ModifiedFinalised/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Modified Finalised
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/body.en.html
new file mode 100644
index 000000000..d23a1d6d8
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ {reasonName} just publish the {name}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/subject.en.txt
new file mode 100644
index 000000000..8576f2649
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Publish/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Publish
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/body.en.html
new file mode 100644
index 000000000..7214de36b
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/body.en.html
@@ -0,0 +1,305 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Dear {recipient},
+ You have been invited to co-develop the Template {templateName}.
+ Click the button to redirect to {templateName}.
+
+
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/subject.en.txt
new file mode 100644
index 000000000..ad592424e
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/Template/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Template Invite
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/body.en.html b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/body.en.html
new file mode 100644
index 000000000..ee547f813
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/body.en.html
@@ -0,0 +1,304 @@
+
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ You have made a request to unlink your email account in ARGOS.
+ Please confirm that you want to unlink your {email} account.
+ The link will expire in {expiration_time}.
+
+ |
+
+
+ |
+
+
+
+
+
+
+
+
+
+
+
+ |
+ |
+
+
+
+
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/subject.en.txt b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/subject.en.txt
new file mode 100644
index 000000000..e957d468f
--- /dev/null
+++ b/dmp-backend/notification-service/notification-web/target/classes/notification_templates/UnlinkConfirmation/Email/subject.en.txt
@@ -0,0 +1 @@
+ARGOS - Unlink Email Confirmation
\ No newline at end of file
diff --git a/dmp-backend/notification-service/notification/.gitignore b/dmp-backend/notification-service/notification/.gitignore
new file mode 100644
index 000000000..549e00a2a
--- /dev/null
+++ b/dmp-backend/notification-service/notification/.gitignore
@@ -0,0 +1,33 @@
+HELP.md
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### STS ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### IntelliJ IDEA ###
+.idea
+*.iws
+*.iml
+*.ipr
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
diff --git a/dmp-backend/notification-service/notification/pom.xml b/dmp-backend/notification-service/notification/pom.xml
new file mode 100644
index 000000000..b5e71bb6a
--- /dev/null
+++ b/dmp-backend/notification-service/notification/pom.xml
@@ -0,0 +1,105 @@
+
+