From de2cc2db73a5de42d9bfaeb92604f28abe2a328a Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Tue, 24 Oct 2017 17:18:29 +0300 Subject: crosspost: refactoring * spring-social * get tokens via service api --- .../configuration/CrosspostAppConfiguration.java | 36 ++++++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) (limited to 'juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostAppConfiguration.java') diff --git a/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostAppConfiguration.java b/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostAppConfiguration.java index 6ceb976b..eae12e6c 100644 --- a/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostAppConfiguration.java +++ b/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostAppConfiguration.java @@ -17,37 +17,53 @@ package com.juick.components.configuration; -import com.juick.components.Crosspost; import com.juick.server.configuration.BaseWebConfiguration; -import com.juick.service.CrosspostService; +import com.juick.service.Crosspost; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; -import org.springframework.core.env.Environment; +import org.springframework.http.client.ClientHttpRequestInterceptor; +import org.springframework.http.client.InterceptingClientHttpRequestFactory; +import org.springframework.http.client.support.BasicAuthorizationInterceptor; +import org.springframework.web.client.RestTemplate; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.socket.client.WebSocketConnectionManager; import org.springframework.web.socket.client.standard.StandardWebSocketClient; -import javax.inject.Inject; +import java.util.Collections; +import java.util.List; /** * Created by aalexeev on 11/12/16. */ @Configuration +@ComponentScan(basePackages = "com.juick.service") @EnableWebMvc @PropertySource("classpath:juick.conf") public class CrosspostAppConfiguration extends BaseWebConfiguration { - @Inject - private Environment env; - @Inject - private CrosspostService crosspostService; + @Value("${api_user:juick}") + private String apiUser; + @Value("${api_password:secret}") + private String apiSecret; @Bean - public Crosspost crosspost() { - return new Crosspost(env, crosspostService); + public RestTemplate rest() { + RestTemplate rest = new RestTemplate(); + List interceptors = Collections.singletonList( + new BasicAuthorizationInterceptor(apiUser, apiSecret)); + + rest.setRequestFactory(new InterceptingClientHttpRequestFactory(rest.getRequestFactory(), interceptors)); + return rest; } private static final String WS_URI = "wss://ws.juick.com/"; + @Bean + public Crosspost crosspost() { + return new Crosspost(); + } + @Bean public WebSocketConnectionManager connectionManager() { WebSocketConnectionManager manager = new WebSocketConnectionManager(client(), crosspost(), WS_URI); -- cgit v1.2.3