All Downloads are FREE. Search and download functionalities are using the official Maven repository.

la.renzhen.rtpt.admin.controller.AdminAPIController Maven / Gradle / Ivy

There is a newer version: 1.1.10
Show newest version
package la.renzhen.rtpt.admin.controller;

import la.renzhen.rtpt.admin.boot.starter.CenterServerProperties;
import la.renzhen.rtpt.admin.source.CenterConfigurationSource;
import la.renzhen.rtpt.admin.source.ConfigElement;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;

import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;

/**
 * 管理

* * @author haiker * @version 14/05/2018 7:48 PM */ @RestController @RequestMapping(value = "${rtpt.admin.context-path:/rtpt}/api", produces = MediaType.APPLICATION_JSON_UTF8_VALUE) public class AdminAPIController { @Autowired CenterConfigurationSource centerConfigurationSource; @Autowired CenterServerProperties centerServerProperties; @GetMapping(value = "/properties") public Map allProperties( @RequestParam(value = "prefix", required = false) String prefix, @RequestParam(value = "env", required = false) String environment) { String env = Optional.ofNullable(environment).orElse(centerServerProperties.getDefaultEnvironment()); String pre = Optional.ofNullable(prefix).orElse(""); return centerConfigurationSource.loadAll(pre, env).stream() .collect(Collectors.toMap(ConfigElement::getKey, ConfigElement::getValue)); } @GetMapping("/property/{key}/") public String get( @PathVariable("key") String key, @RequestParam(value = "env", required = false) String environment ) { String env = Optional.ofNullable(environment).orElse(centerServerProperties.getDefaultEnvironment()); ConfigElement element = centerConfigurationSource.get(env, key); if (element == null) { return null; } return element.getValue(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy