package com.juick.api.configuration; import com.juick.api.ApiServer; import com.juick.api.MessengerBot; import com.juick.api.TGBot; import com.pengrad.telegrambot.TelegramBot; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.core.env.Environment; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.web.socket.client.WebSocketConnectionManager; import org.springframework.web.socket.client.standard.StandardWebSocketClient; import javax.inject.Inject; /** * Created by aalexeev on 11/12/16. */ @Configuration @EnableScheduling @PropertySource("classpath:juick.conf") public class ApiAppConfiguration { @Inject TGBot tgBot; @Bean public ApiServer apiServer() { return new ApiServer(); } private static final String WS_URI = "wss://ws.juick.com/"; @Bean public WebSocketConnectionManager connectionManager() { WebSocketConnectionManager manager = new WebSocketConnectionManager(client(), tgBot, WS_URI); manager.setAutoStartup(true); return manager; } @Bean public StandardWebSocketClient client() { return new StandardWebSocketClient(); } }