[PPN-211113] Implement ConfigurationProperties
This commit is contained in:
@@ -2,6 +2,9 @@ package com.myoa.engineering.crawl.ppomppu.processor;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.context.annotation.Import;
|
||||
|
||||
import com.myoa.engineering.crawl.ppomppu.support.webclient.PpomppuNotifierWebClientConfiguration;
|
||||
|
||||
/**
|
||||
* ProcessorApplication
|
||||
@@ -9,6 +12,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
* @since 2021-08-20
|
||||
*
|
||||
*/
|
||||
@Import({ PpomppuNotifierWebClientConfiguration.class })
|
||||
@SpringBootApplication
|
||||
public class ProcessorApplication {
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.myoa.engineering.crawl.ppomppu.processor.dto.constant;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* WebClientPropertiesUnitName
|
||||
* @author Shin Woo-jin (woo-jin.shin@linecorp.com)
|
||||
* @since 2021-11-18
|
||||
*
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum WebClientPropertiesUnitName {
|
||||
PPOMPPU_NOTIFIER_SENDER_API("ppn-sender-api"),
|
||||
;
|
||||
|
||||
private String unitName;
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.myoa.engineering.crawl.ppomppu.processor.infrastructure.client;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.reactive.function.client.WebClient;
|
||||
|
||||
import com.myoa.engineering.crawl.ppomppu.processor.dto.constant.WebClientPropertiesUnitName;
|
||||
import com.myoa.engineering.crawl.ppomppu.support.webclient.factory.WebClientFilterFactory;
|
||||
import com.myoa.engineering.crawl.ppomppu.support.webclient.properties.WebClientProperties;
|
||||
import com.myoa.engineering.crawl.ppomppu.support.webclient.properties.WebClientProperties.WebClientPropertiesUnit;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* PpomppuNotifierSenderAPIClient
|
||||
* @author Shin Woo-jin (woo-jin.shin@linecorp.com)
|
||||
* @since 2021-11-17
|
||||
*
|
||||
*/
|
||||
@Slf4j
|
||||
@Component
|
||||
public class SenderAPIClient {
|
||||
|
||||
private final WebClient webClient;
|
||||
|
||||
public SenderAPIClient(WebClientProperties webClientProperties) {
|
||||
WebClientPropertiesUnit webClientPropertiesUnit =
|
||||
webClientProperties.find(WebClientPropertiesUnitName.PPOMPPU_NOTIFIER_SENDER_API.getUnitName());
|
||||
this.webClient = WebClient.builder()
|
||||
.baseUrl(webClientPropertiesUnit.getBaseUrl())
|
||||
.filter(WebClientFilterFactory.logRequest())
|
||||
.filter(WebClientFilterFactory.logResponse())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
||||
// TODO webclient properties
|
||||
@@ -1,5 +1,5 @@
|
||||
webclient:
|
||||
some: test
|
||||
init: true
|
||||
units:
|
||||
- unit-name: processor-api
|
||||
- unit-name: ppn-sender-api
|
||||
base-url: http://localhost:20081
|
||||
@@ -1,4 +1,5 @@
|
||||
webclient:
|
||||
init: true
|
||||
units:
|
||||
- unit-name: processor-api
|
||||
base-url: http://soundhoundfound-processor:20080
|
||||
- unit-name: ppn-sender-api
|
||||
base-url: http://ppn_sender:20081
|
||||
Reference in New Issue
Block a user