forked from Archives/Athou_commafeed
remove websocket bundle because it doesn't add much, use jetty directly
This commit is contained in:
@@ -263,16 +263,15 @@
|
|||||||
<groupId>io.dropwizard.metrics</groupId>
|
<groupId>io.dropwizard.metrics</groupId>
|
||||||
<artifactId>metrics-json</artifactId>
|
<artifactId>metrics-json</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>be.tomcools</groupId>
|
|
||||||
<artifactId>dropwizard-websocket-jsr356-bundle</artifactId>
|
|
||||||
<version>4.0.0</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.whitfin</groupId>
|
<groupId>io.whitfin</groupId>
|
||||||
<artifactId>dropwizard-environment-substitutor</artifactId>
|
<artifactId>dropwizard-environment-substitutor</artifactId>
|
||||||
<version>1.1.1</version>
|
<version>1.1.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||||
|
<artifactId>websocket-jakarta-server</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>io.swagger.core.v3</groupId>
|
<groupId>io.swagger.core.v3</groupId>
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import java.util.Set;
|
|||||||
import java.util.concurrent.ScheduledExecutorService;
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
import org.eclipse.jetty.websocket.jakarta.server.config.JakartaWebSocketServletContainerInitializer;
|
||||||
import org.hibernate.cfg.AvailableSettings;
|
import org.hibernate.cfg.AvailableSettings;
|
||||||
|
|
||||||
import com.codahale.metrics.json.MetricsModule;
|
import com.codahale.metrics.json.MetricsModule;
|
||||||
@@ -52,7 +53,6 @@ import com.google.inject.Injector;
|
|||||||
import com.google.inject.Key;
|
import com.google.inject.Key;
|
||||||
import com.google.inject.TypeLiteral;
|
import com.google.inject.TypeLiteral;
|
||||||
|
|
||||||
import be.tomcools.dropwizard.websocket.WebsocketBundle;
|
|
||||||
import io.dropwizard.assets.AssetsBundle;
|
import io.dropwizard.assets.AssetsBundle;
|
||||||
import io.dropwizard.configuration.DefaultConfigurationFactoryFactory;
|
import io.dropwizard.configuration.DefaultConfigurationFactoryFactory;
|
||||||
import io.dropwizard.configuration.EnvironmentVariableSubstitutor;
|
import io.dropwizard.configuration.EnvironmentVariableSubstitutor;
|
||||||
@@ -82,7 +82,6 @@ public class CommaFeedApplication extends Application<CommaFeedConfiguration> {
|
|||||||
public static final Instant STARTUP_TIME = Instant.now();
|
public static final Instant STARTUP_TIME = Instant.now();
|
||||||
|
|
||||||
private HibernateBundle<CommaFeedConfiguration> hibernateBundle;
|
private HibernateBundle<CommaFeedConfiguration> hibernateBundle;
|
||||||
private WebsocketBundle<CommaFeedConfiguration> websocketBundle;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName() {
|
public String getName() {
|
||||||
@@ -94,7 +93,6 @@ public class CommaFeedApplication extends Application<CommaFeedConfiguration> {
|
|||||||
configureEnvironmentSubstitutor(bootstrap);
|
configureEnvironmentSubstitutor(bootstrap);
|
||||||
configureObjectMapper(bootstrap.getObjectMapper());
|
configureObjectMapper(bootstrap.getObjectMapper());
|
||||||
|
|
||||||
bootstrap.addBundle(websocketBundle = new WebsocketBundle<>());
|
|
||||||
bootstrap.addBundle(hibernateBundle = new HibernateBundle<>(AbstractModel.class, Feed.class, FeedCategory.class, FeedEntry.class,
|
bootstrap.addBundle(hibernateBundle = new HibernateBundle<>(AbstractModel.class, Feed.class, FeedCategory.class, FeedEntry.class,
|
||||||
FeedEntryContent.class, FeedEntryStatus.class, FeedEntryTag.class, FeedSubscription.class, User.class, UserRole.class,
|
FeedEntryContent.class, FeedEntryStatus.class, FeedEntryTag.class, FeedSubscription.class, User.class, UserRole.class,
|
||||||
UserSettings.class) {
|
UserSettings.class) {
|
||||||
@@ -195,10 +193,13 @@ public class CommaFeedApplication extends Application<CommaFeedConfiguration> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// WebSocket endpoint
|
// WebSocket endpoint
|
||||||
ServerEndpointConfig serverEndpointConfig = ServerEndpointConfig.Builder.create(WebSocketEndpoint.class, "/ws")
|
JakartaWebSocketServletContainerInitializer.configure(environment.getApplicationContext(), (context, container) -> {
|
||||||
.configurator(injector.getInstance(WebSocketConfigurator.class))
|
container.setDefaultMaxSessionIdleTimeout(config.getApplicationSettings().getWebsocketPingInterval().toMilliseconds() + 10000);
|
||||||
.build();
|
|
||||||
websocketBundle.addEndpoint(serverEndpointConfig);
|
container.addEndpoint(ServerEndpointConfig.Builder.create(WebSocketEndpoint.class, "/ws")
|
||||||
|
.configurator(injector.getInstance(WebSocketConfigurator.class))
|
||||||
|
.build());
|
||||||
|
});
|
||||||
|
|
||||||
// Scheduled tasks
|
// Scheduled tasks
|
||||||
Set<ScheduledTask> tasks = injector.getInstance(Key.get(new TypeLiteral<>() {
|
Set<ScheduledTask> tasks = injector.getInstance(Key.get(new TypeLiteral<>() {
|
||||||
|
|||||||
@@ -10,8 +10,6 @@ import com.commafeed.backend.cache.RedisPoolFactory;
|
|||||||
import com.commafeed.frontend.session.SessionHandlerFactory;
|
import com.commafeed.frontend.session.SessionHandlerFactory;
|
||||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||||
|
|
||||||
import be.tomcools.dropwizard.websocket.WebsocketBundleConfiguration;
|
|
||||||
import be.tomcools.dropwizard.websocket.WebsocketConfiguration;
|
|
||||||
import io.dropwizard.core.Configuration;
|
import io.dropwizard.core.Configuration;
|
||||||
import io.dropwizard.db.DataSourceFactory;
|
import io.dropwizard.db.DataSourceFactory;
|
||||||
import io.dropwizard.util.Duration;
|
import io.dropwizard.util.Duration;
|
||||||
@@ -25,7 +23,7 @@ import lombok.Setter;
|
|||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public class CommaFeedConfiguration extends Configuration implements WebsocketBundleConfiguration {
|
public class CommaFeedConfiguration extends Configuration {
|
||||||
|
|
||||||
public enum CacheType {
|
public enum CacheType {
|
||||||
NOOP, REDIS
|
NOOP, REDIS
|
||||||
@@ -68,13 +66,6 @@ public class CommaFeedConfiguration extends Configuration implements WebsocketBu
|
|||||||
this.gitCommit = properties.getProperty("git.commit.id.abbrev", "unknown");
|
this.gitCommit = properties.getProperty("git.commit.id.abbrev", "unknown");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public WebsocketConfiguration getWebsocketConfiguration() {
|
|
||||||
WebsocketConfiguration config = new WebsocketConfiguration();
|
|
||||||
config.setMaxSessionIdleTimeout(getApplicationSettings().getWebsocketPingInterval().toMilliseconds() + 10000);
|
|
||||||
return config;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
public static class ApplicationSettings {
|
public static class ApplicationSettings {
|
||||||
|
|||||||
Reference in New Issue
Block a user