aboutsummaryrefslogtreecommitdiff
path: root/juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2018-02-06 17:54:49 +0300
committerGravatar Vitaly Takmazov2018-02-08 14:29:08 +0300
commit7ed3795da542bab397ee7ed8978bde896abf5cf4 (patch)
tree0531bf226f31b7d4f428248b1f176f5ecbab0874 /juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java
parent089f00eaf912781cebd4dc87e9c445051d0cc532 (diff)
server: merge api and ws
Diffstat (limited to 'juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java')
-rw-r--r--juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java101
1 files changed, 0 insertions, 101 deletions
diff --git a/juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java b/juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java
deleted file mode 100644
index a475ca6f..00000000
--- a/juick-api/src/main/java/com/juick/api/configuration/ApiAppConfiguration.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (C) 2008-2017, Juick
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-package com.juick.api.configuration;
-
-import com.juick.api.ApiServer;
-import com.juick.server.component.JuickServerComponent;
-import com.juick.server.component.JuickServerReconnectManager;
-import com.juick.server.configuration.BaseWebConfiguration;
-import com.juick.service.UserService;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.*;
-import org.springframework.scheduling.annotation.EnableAsync;
-import org.springframework.web.servlet.config.annotation.EnableWebMvc;
-import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
-import org.springframework.web.socket.client.WebSocketConnectionManager;
-import org.springframework.web.socket.client.standard.StandardWebSocketClient;
-import org.springframework.web.util.UriComponentsBuilder;
-import springfox.documentation.builders.PathSelectors;
-import springfox.documentation.builders.RequestHandlerSelectors;
-import springfox.documentation.service.ApiInfo;
-import springfox.documentation.spi.DocumentationType;
-import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
-
-import javax.inject.Inject;
-import java.util.Collections;
-
-/**
- * Created by aalexeev on 11/12/16.
- */
-@Configuration
-@EnableAsync
-@EnableWebMvc
-@EnableSwagger2
-@PropertySource("classpath:juick.conf")
-@ComponentScan(basePackages = "com.juick")
-public class ApiAppConfiguration extends BaseWebConfiguration {
- @Inject
- UserService userService;
- @Value("${api_user:juick}")
- private String serviceUser;
- @Value("${websocket_url:ws://localhost:8080/}")
- private String baseUri;
- @Lazy
- @Bean
- public JuickServerComponent juickServerComponent() {
- return new JuickServerComponent();
- }
- @Lazy
- @Bean
- public JuickServerReconnectManager juickServerReconnectManager() {
- return new JuickServerReconnectManager();
- }
- @Bean
- public WebSocketConnectionManager connectionManager() {
- String websocketURI = UriComponentsBuilder.fromUriString(baseUri)
- .queryParam("hash", userService.getHashByUID(userService.getUIDbyName(serviceUser))).build().toUriString();
- return new WebSocketConnectionManager(client(), juickServerComponent(), websocketURI);
- }
- @Bean
- public StandardWebSocketClient client() {
- return new StandardWebSocketClient();
- }
- @Bean
- public ApiServer apiServer() {
- return new ApiServer();
- }
- @Bean
- public Docket api() {
- return new Docket(DocumentationType.SWAGGER_2)
- .select()
- .apis(RequestHandlerSelectors.any())
- .paths(PathSelectors.any()).build().apiInfo(new ApiInfo("Juick API", "Juick REST API Documentation",
- "2.0", "https://juick.com/help/tos", null,
- "AGPLv3", "https://www.gnu.org/licenses/agpl-3.0.html", Collections.emptyList()));
- }
- @Override
- public void addResourceHandlers(ResourceHandlerRegistry registry) {
- registry.addResourceHandler("/swagger-ui.html")
- .addResourceLocations("classpath:/META-INF/resources/");
-
- registry.addResourceHandler("/webjars/**")
- .addResourceLocations("classpath:/META-INF/resources/webjars/");
- }
-
-}