Project

General

Profile

1
package eu.dnetlib.uoaadmintoolslibrary.controllers;
2

    
3
import com.mongodb.BasicDBObject;
4
import com.mongodb.CommandResult;
5
import com.mongodb.DBObject;
6
import eu.dnetlib.uoaadmintoolslibrary.configuration.properties.GoogleConfig;
7
import eu.dnetlib.uoaadmintoolslibrary.configuration.properties.MailConfig;
8
import org.apache.log4j.Logger;
9
import org.springframework.beans.factory.annotation.Autowired;
10
import org.springframework.security.access.prepost.PreAuthorize;
11
import org.springframework.web.bind.annotation.CrossOrigin;
12
import org.springframework.web.bind.annotation.RequestMapping;
13
import org.springframework.web.bind.annotation.RequestMethod;
14
import org.springframework.web.bind.annotation.RestController;
15

    
16
import java.util.HashMap;
17
import java.util.Map;
18

    
19
@RestController
20
@CrossOrigin(origins = "*")
21
@RequestMapping("/admin-tools-library")
22
public class AdminToolsLibraryCheckDeployController {
23
    @Autowired
24
    private MailConfig mailConfig;
25

    
26
    @Autowired
27
    private GoogleConfig googleConfig;
28

    
29
    private final Logger log = Logger.getLogger(this.getClass());
30

    
31
    @RequestMapping(value = {"", "/health_check"}, method = RequestMethod.GET)
32
    public String hello() {
33
        log.debug("Hello from uoa-admin-tools-library!");
34
        return "Hello from uoa-admin-tools-library!";
35
    }
36

    
37
    @PreAuthorize("hasAnyAuthority(@AuthorizationService.PORTAL_ADMIN)")
38
    @RequestMapping(value = "/health_check/advanced", method = RequestMethod.GET)
39
    public Map<String, String> checkEverything() {
40
        Map<String, String> response = new HashMap<>();
41
        response.put("admintoolslibrary.mail.auth",mailConfig.getAuth());
42
        response.put("admintoolslibrary.mail.from", mailConfig.getAuth());
43
        response.put("admintoolslibrary.mail.host", mailConfig.getHost());
44
        response.put("admintoolslibrary.mail.port", mailConfig.getPort());
45
        response.put("admintoolslibrary.mail.username", mailConfig.getUsername() == null ? null : "[unexposed value]");
46
        response.put("admintoolslibrary.mail.password", mailConfig.getPassword() == null ? null : "[unexposed value]");
47
        response.put("admintoolslibrary.google.secret", googleConfig.getSecret() == null ? null : "[unexposed value]");
48

    
49
//        response.put("Define also", "admintoolslibrary.mail.username, " +
50
//                "admintoolslibrary.mail.password, admintoolslibrary.google.secret");
51
        return response;
52
    }
53
}
54

    
(2-2/10)