diff --git a/pom.xml b/pom.xml
index 4726281..76ce55f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,8 +3,8 @@
4.0.0
eu.dnetlib
- dnet45-parent
- 1.0.0
+ uoa-global-parent
+ 1.0.1
dnet-role-management
1.0.3-SNAPSHOT
@@ -36,6 +36,12 @@
org.springframework.boot
spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
org.springframework.boot
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/RedisConfig.java b/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/RedisConfig.java
index 3d113e4..e99cb6b 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/RedisConfig.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/RedisConfig.java
@@ -1,7 +1,8 @@
package eu.dnetlib.dnetrolemanagement.config.security;
import eu.dnetlib.dnetrolemanagement.config.properties.RedisProperties;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -14,7 +15,7 @@ import org.springframework.session.web.http.HttpSessionStrategy;
@Configuration
public class RedisConfig {
- private static final Logger logger = Logger.getLogger(RedisConfig.class);
+ private static final Logger logger = LogManager.getLogger(RedisConfig.class);
private final RedisProperties redisProperties;
@Autowired
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/SwaggerConfig.java b/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/SwaggerConfig.java
index f9cccae..fe6fa0e 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/SwaggerConfig.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/config/security/SwaggerConfig.java
@@ -1,8 +1,6 @@
package eu.dnetlib.dnetrolemanagement.config.security;
import eu.dnetlib.dnetrolemanagement.config.properties.APIProperties;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -29,7 +27,6 @@ import java.util.List;
@EnableSwagger2
public class SwaggerConfig {
- private final Logger logger = LoggerFactory.getLogger(SwaggerConfig.class);
private final APIProperties apiProperties;
@Autowired
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/controllers/HealthController.java b/src/main/java/eu/dnetlib/dnetrolemanagement/controllers/HealthController.java
index 5f38610..571f152 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/controllers/HealthController.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/controllers/HealthController.java
@@ -3,7 +3,8 @@ package eu.dnetlib.dnetrolemanagement.controllers;
import eu.dnetlib.dnetrolemanagement.config.properties.APIProperties;
import eu.dnetlib.dnetrolemanagement.config.properties.RedisProperties;
import eu.dnetlib.dnetrolemanagement.config.properties.RegistryProperties;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -15,7 +16,7 @@ import java.util.Map;
@RestController
public class HealthController {
- private final Logger log = Logger.getLogger(this.getClass());
+ private final Logger log = LogManager.getLogger(this.getClass());
private final APIProperties apiProperties;
private final RedisProperties redisProperties;
private final RegistryProperties registryProperties;
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/scripts/TypeManagersExport.java b/src/main/java/eu/dnetlib/dnetrolemanagement/scripts/TypeManagersExport.java
index bb7f900..c7af55d 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/scripts/TypeManagersExport.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/scripts/TypeManagersExport.java
@@ -4,15 +4,19 @@ import com.google.gson.Gson;
import com.google.gson.JsonArray;
import eu.dnetlib.dnetrolemanagement.entities.User;
import eu.dnetlib.dnetrolemanagement.services.RegistryService;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Component;
+import org.springframework.web.client.RestTemplate;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
@Component
@@ -33,21 +37,43 @@ public class TypeManagersExport implements CommandLineRunner {
}
}
+ private static class Community {
+ String id;
+
+ public Community(String id) {
+ this.id = id;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+ }
+
@Autowired
RegistryService registryService;
+ private final Logger logger = LogManager.getLogger(TypeManagersExport.class);
private final static String TYPE = "community";
+ private final static String COMMUNITIES_API = "https://services.openaire.eu/openaire/community/communities";
@Override
public void run(String... args) throws Exception {
+ RestTemplate restTemplate = new RestTemplate();
File file = new File(TYPE + "-managers.csv");
List managers = new ArrayList<>();
JsonArray cous = registryService.getCous(TYPE + ".");
+ Community[] communities = new Gson().fromJson(restTemplate.getForEntity(COMMUNITIES_API, String.class).getBody(), Community[].class);
cous.forEach(cou -> {
String entity = cou.getAsJsonObject().get("Name").getAsString().replace(TYPE + ".", "");
- Integer couId = cou.getAsJsonObject().get("Id").getAsInt();
- User[] emails = new Gson().fromJson(registryService.getUserEmailByCouId(couId, true), User[].class);
- for(User email:emails) {
- managers.add(new Manager(entity, email.getEmail()));
+ if(Arrays.stream(communities).anyMatch(community -> community.getId().equals(entity))) {
+ Integer couId = cou.getAsJsonObject().get("Id").getAsInt();
+ User[] emails = new Gson().fromJson(registryService.getUserEmailByCouId(couId, true), User[].class);
+ for(User email:emails) {
+ managers.add(new Manager(entity, email.getEmail()));
+ }
}
});
try (PrintWriter pw = new PrintWriter(file)) {
@@ -55,6 +81,7 @@ public class TypeManagersExport implements CommandLineRunner {
managers.stream()
.map(Manager::toCSV)
.forEach(pw::println);
+ logger.info("Export has been finished");
} catch (FileNotFoundException e) {
e.printStackTrace();
}
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/services/RegistryService.java b/src/main/java/eu/dnetlib/dnetrolemanagement/services/RegistryService.java
index dde4dae..9d9678f 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/services/RegistryService.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/services/RegistryService.java
@@ -6,7 +6,8 @@ import com.google.gson.JsonObject;
import eu.dnetlib.dnetrolemanagement.config.properties.RegistryProperties;
import eu.dnetlib.dnetrolemanagement.utils.HttpUtils;
import eu.dnetlib.dnetrolemanagement.utils.JsonUtils;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.mitre.openid.connect.model.OIDCAuthenticationToken;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.context.SecurityContextHolder;
@@ -17,7 +18,7 @@ import java.util.*;
@Service
public class RegistryService {
- private static final Logger logger = Logger.getLogger(RegistryService.class);
+ private static final Logger logger = LogManager.getLogger(RegistryService.class);
private final String coid;
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/utils/AuthoritiesUpdater.java b/src/main/java/eu/dnetlib/dnetrolemanagement/utils/AuthoritiesUpdater.java
index 8e7dc32..129bbe7 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/utils/AuthoritiesUpdater.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/utils/AuthoritiesUpdater.java
@@ -1,6 +1,7 @@
package eu.dnetlib.dnetrolemanagement.utils;
-import org.apache.log4j.Logger;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.mitre.openid.connect.model.OIDCAuthenticationToken;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.Authentication;
@@ -21,7 +22,7 @@ import java.util.Map;
@Service
public class AuthoritiesUpdater extends HttpSessionSecurityContextRepository {
- private static final Logger logger = Logger.getLogger(AuthoritiesUpdater.class);
+ private final Logger logger = LogManager.getLogger(AuthoritiesUpdater.class);
@Autowired
FindByIndexNameSessionRepository sessions;
diff --git a/src/main/java/eu/dnetlib/dnetrolemanagement/utils/HttpUtils.java b/src/main/java/eu/dnetlib/dnetrolemanagement/utils/HttpUtils.java
index 58bc233..2ad91af 100644
--- a/src/main/java/eu/dnetlib/dnetrolemanagement/utils/HttpUtils.java
+++ b/src/main/java/eu/dnetlib/dnetrolemanagement/utils/HttpUtils.java
@@ -4,7 +4,6 @@ import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import eu.dnetlib.dnetrolemanagement.config.properties.RegistryProperties;
-import org.apache.log4j.Logger;
import org.apache.tomcat.util.codec.binary.Base64;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.*;
@@ -17,8 +16,6 @@ import java.util.Map;
@Component
public class HttpUtils {
- private static final Logger logger = Logger.getLogger(HttpUtils.class);
-
private final RegistryProperties registryProperties;
@Autowired
diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties
deleted file mode 100644
index 95a0de2..0000000
--- a/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-log4j.rootLogger = DEBUG, R
-
-log4j.logger.eu.dnetlib = DEBUG
-log4j.logger.org.springframework = DEBUG, S
-
-log4j.additivity.org.springframework = false
-
-log4j.appender.R=org.apache.log4j.RollingFileAppender
-log4j.appender.R.File=/var/log/dnet/dnet-role-management/dnet-role-management.log
-log4j.appender.R.MaxFileSize=10MB
-log4j.appender.R.MaxBackupIndex=10
-log4j.appender.R.layout=org.apache.log4j.PatternLayout
-log4j.appender.R.layout.ConversionPattern= %d %p %t [%c] - %m%n
-
-log4j.appender.S=org.apache.log4j.RollingFileAppender
-log4j.appender.S.File=/var/log/dnet/dnet-role-management/dnet-role-management-spring.log
-log4j.appender.S.MaxFileSize=10MB
-log4j.appender.S.MaxBackupIndex=10
-log4j.appender.S.layout=org.apache.log4j.PatternLayout
-log4j.appender.S.layout.ConversionPattern= %d %p %t [%c] - %m%n
\ No newline at end of file
diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml
new file mode 100644
index 0000000..7d73123
--- /dev/null
+++ b/src/main/resources/log4j2.xml
@@ -0,0 +1,39 @@
+
+
+
+
+ %d %p %t [%c] - %m%n
+
+
+
+
+
+
+ ${LOG_PATTERN}
+
+
+
+
+
+
+
+
+ ${LOG_PATTERN}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file