Skip to content
Snippets Groups Projects
EnvironmentController.java 2.12 KiB
Newer Older
  • Learn to ignore specific revisions
  • /*
     * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
     * Ministerpräsidenten des Landes Schleswig-Holstein
     * Staatskanzlei
     * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
     *
     * Lizenziert unter der EUPL, Version 1.2 oder - sobald
     * diese von der Europäischen Kommission genehmigt wurden -
     * Folgeversionen der EUPL ("Lizenz");
     * Sie dürfen dieses Werk ausschließlich gemäß
     * dieser Lizenz nutzen.
     * Eine Kopie der Lizenz finden Sie hier:
     *
     * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
     *
     * Sofern nicht durch anwendbare Rechtsvorschriften
     * gefordert oder in schriftlicher Form vereinbart, wird
     * die unter der Lizenz verbreitete Software "so wie sie
     * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
     * ausdrücklich oder stillschweigend - verbreitet.
     * Die sprachspezifischen Genehmigungen und Beschränkungen
     * unter der Lizenz sind dem Lizenztext zu entnehmen.
     */
    
    package de.ozgcloud.alfa;
    
    import static org.springframework.hateoas.server.mvc.WebMvcLinkBuilder.*;
    
    import org.springframework.beans.factory.annotation.Autowired;
    
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    
    import de.ozgcloud.alfa.vorgang.VorgangProcessorProperties;
    
    
    OZGCloud's avatar
    OZGCloud committed
    @RequestMapping(EnvironmentController.BASE_PATH)
    
    public class EnvironmentController {
    
    OZGCloud's avatar
    OZGCloud committed
    	static final String BASE_PATH = "/api/environment"; 
    
    	private OAuth2Properties oAuth2Properties;
    
    	@Autowired
    	private GoofyProperties goofyProperties;
    	
    	@Autowired
    
    	private VorgangProcessorProperties vorgangProcessorProperties;
    
    
    	@GetMapping
    	public FrontendEnvironment getFrontendEnvironment() {
    
    		return FrontendEnvironment.builder()
    
    				.production(goofyProperties.isProduction())
    
    				.remoteHost(linkTo(RootController.class).toUri().toString())
    				.authServer(oAuth2Properties.getAuthServerUrl())
    				.clientId(oAuth2Properties.getResource())
    				.realm(oAuth2Properties.getRealm())
    
    				.processorNames(vorgangProcessorProperties.getProcessorNames())