Updated Branches:
  refs/heads/master 57a16f1a7 -> cb5da57c8

WICKET-5410 Remove setting interfaces

Remove IWebSocketSettings interface


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/cb5da57c
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/cb5da57c
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/cb5da57c

Branch: refs/heads/master
Commit: cb5da57c846bb24a291df2d864fa0ea7d3298015
Parents: 57a16f1
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Sun Nov 24 12:21:44 2013 +0100
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Sun Nov 24 12:21:44 2013 +0100

----------------------------------------------------------------------
 .../wicket/protocol/ws/IWebSocketSettings.java  | 88 --------------------
 .../wicket/protocol/ws/WebSocketSettings.java   | 61 ++++++++++++--
 .../ws/api/AbstractWebSocketProcessor.java      |  4 +-
 .../ws/api/WebSocketPushBroadcaster.java        |  8 +-
 .../tester/WebSocketTesterBehaviorTest.java     |  4 +-
 .../ws/javax/app/charts/ChartUpdater.java       |  4 +-
 6 files changed, 64 insertions(+), 105 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/IWebSocketSettings.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/IWebSocketSettings.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/IWebSocketSettings.java
deleted file mode 100644
index bcc35ea..0000000
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/IWebSocketSettings.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.wicket.protocol.ws;
-
-
-import org.apache.wicket.Application;
-import org.apache.wicket.MetaDataKey;
-import org.apache.wicket.protocol.ws.api.registry.IWebSocketConnectionRegistry;
-import org.apache.wicket.protocol.ws.concurrent.Executor;
-
-/**
- * Interface for websocket related settings.
- * <p>
- * More documentation is available about each setting in the setter method for 
the property.
- *
- * @since 6.4
- */
-public interface IWebSocketSettings
-{
-       public static final MetaDataKey<IWebSocketSettings> KEY = new 
MetaDataKey<IWebSocketSettings>()
-       {
-       };
-
-       /**
-        * Holds this IWebSocketSettings in the Application's metadata.
-        * This way wicket-core module doesn't have reference to 
wicket-native-websocket.
-        */
-       public static final class Holder
-       {
-               public static IWebSocketSettings get(Application application)
-               {
-                       IWebSocketSettings settings = 
application.getMetaData(KEY);
-                       if (settings == null)
-                       {
-                               synchronized (application)
-                               {
-                                       if (settings == null)
-                                       {
-                                               settings = new 
WebSocketSettings();
-                                               set(application, settings);
-                                       }
-                               }
-                       }
-                       return settings;
-               }
-
-               public static void set(Application application, 
IWebSocketSettings settings)
-               {
-                       application.setMetaData(KEY, settings);
-               }
-       }
-
-       /**
-        * The executor for processing websocket push messages broadcasted to 
all sessions.
-        *
-        * @return
-        *            The executor used for processing push messages.
-        */
-       Executor getWebSocketPushMessageExecutor();
-
-       /**
-        * Set the executor for processing websocket push messages broadcasted 
to all sessions.
-        * Default executor does all the processing in the caller thread. Using 
a proper thread pool is adviced
-        * for applications that send push events from ajax calls to avoid page 
level deadlocks.
-        *
-        * @param executorService
-        *            The executor used for processing push messages.
-        */
-       IWebSocketSettings setWebSocketPushMessageExecutor(Executor 
executorService);
-
-       IWebSocketConnectionRegistry getConnectionRegistry();
-
-       IWebSocketSettings setConnectionRegistry(IWebSocketConnectionRegistry 
connectionRegistry);
-}

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/WebSocketSettings.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/WebSocketSettings.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/WebSocketSettings.java
index 1b5ea56..937548b 100644
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/WebSocketSettings.java
+++ 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/WebSocketSettings.java
@@ -18,16 +18,53 @@ package org.apache.wicket.protocol.ws;
 
 import java.util.concurrent.Callable;
 
+import org.apache.wicket.Application;
+import org.apache.wicket.MetaDataKey;
 import org.apache.wicket.protocol.ws.api.registry.IWebSocketConnectionRegistry;
 import 
org.apache.wicket.protocol.ws.api.registry.SimpleWebSocketConnectionRegistry;
 import org.apache.wicket.protocol.ws.concurrent.Executor;
 import org.apache.wicket.util.lang.Args;
 
 /**
+ * Web Socket related settings.
  *
+ * More documentation is available about each setting in the setter method for 
the property.
  */
-public class WebSocketSettings implements IWebSocketSettings
+public class WebSocketSettings
 {
+       private static final MetaDataKey<WebSocketSettings> KEY = new 
MetaDataKey<WebSocketSettings>()
+       {
+       };
+
+       /**
+        * Holds this IWebSocketSettings in the Application's metadata.
+        * This way wicket-core module doesn't have reference to 
wicket-native-websocket.
+        */
+       public static final class Holder
+       {
+               public static WebSocketSettings get(Application application)
+               {
+                       WebSocketSettings settings = 
application.getMetaData(KEY);
+                       if (settings == null)
+                       {
+                               synchronized (application)
+                               {
+                                       if (settings == null)
+                                       {
+                                               settings = new 
WebSocketSettings();
+                                               set(application, settings);
+                                       }
+                               }
+                       }
+                       return settings;
+               }
+
+               public static void set(Application application, 
WebSocketSettings settings)
+               {
+                       application.setMetaData(KEY, settings);
+               }
+       }
+
        /**
         * The executor that handles the processing of Web Socket push message 
broadcasts.
         */
@@ -38,29 +75,39 @@ public class WebSocketSettings implements IWebSocketSettings
         */
        private IWebSocketConnectionRegistry connectionRegistry = new 
SimpleWebSocketConnectionRegistry();
 
-       @Override
-       public IWebSocketSettings setWebSocketPushMessageExecutor(Executor 
executor)
+       /**
+        * Set the executor for processing websocket push messages broadcasted 
to all sessions.
+        * Default executor does all the processing in the caller thread. Using 
a proper thread pool is adviced
+        * for applications that send push events from ajax calls to avoid page 
level deadlocks.
+        *
+        * @param executor
+        *            The executor used for processing push messages.
+        */
+       public WebSocketSettings setWebSocketPushMessageExecutor(Executor 
executor)
        {
                Args.notNull(executor, "executor");
                this.webSocketPushMessageExecutor = executor;
                return this;
        }
 
-       @Override
+       /**
+        * The executor for processing websocket push messages broadcasted to 
all sessions.
+        *
+        * @return
+        *            The executor used for processing push messages.
+        */
        public IWebSocketConnectionRegistry getConnectionRegistry()
        {
                return connectionRegistry;
        }
 
-       @Override
-       public IWebSocketSettings 
setConnectionRegistry(IWebSocketConnectionRegistry connectionRegistry)
+       public WebSocketSettings 
setConnectionRegistry(IWebSocketConnectionRegistry connectionRegistry)
        {
                Args.notNull(connectionRegistry, "connectionRegistry");
                this.connectionRegistry = connectionRegistry;
                return this;
        }
 
-       @Override
        public Executor getWebSocketPushMessageExecutor()
        {
                return webSocketPushMessageExecutor;

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/AbstractWebSocketProcessor.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/AbstractWebSocketProcessor.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/AbstractWebSocketProcessor.java
index b704303..3359f70 100644
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/AbstractWebSocketProcessor.java
+++ 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/AbstractWebSocketProcessor.java
@@ -31,7 +31,7 @@ import org.apache.wicket.markup.html.WebPage;
 import org.apache.wicket.page.IPageManager;
 import org.apache.wicket.protocol.http.WebApplication;
 import org.apache.wicket.protocol.http.WicketFilter;
-import org.apache.wicket.protocol.ws.IWebSocketSettings;
+import org.apache.wicket.protocol.ws.WebSocketSettings;
 import org.apache.wicket.protocol.ws.api.event.WebSocketBinaryPayload;
 import org.apache.wicket.protocol.ws.api.event.WebSocketClosedPayload;
 import org.apache.wicket.protocol.ws.api.event.WebSocketConnectedPayload;
@@ -136,7 +136,7 @@ public abstract class AbstractWebSocketProcessor implements 
IWebSocketProcessor
                this.webRequest = new WebSocketRequest(new 
ServletRequestCopy(request), getFilterPath(wicketFilter));
 
                this.application = Args.notNull(application, "application");
-               IWebSocketSettings webSocketSettings = 
IWebSocketSettings.Holder.get(application);
+               WebSocketSettings webSocketSettings = 
WebSocketSettings.Holder.get(application);
                this.connectionRegistry = 
webSocketSettings.getConnectionRegistry();
        }
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketPushBroadcaster.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketPushBroadcaster.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketPushBroadcaster.java
index cbe2daf..db653d2 100644
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketPushBroadcaster.java
+++ 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketPushBroadcaster.java
@@ -21,7 +21,7 @@ import static java.util.Collections.singletonList;
 import java.util.Collection;
 
 import org.apache.wicket.Application;
-import org.apache.wicket.protocol.ws.IWebSocketSettings;
+import org.apache.wicket.protocol.ws.WebSocketSettings;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
 import org.apache.wicket.protocol.ws.api.message.IWebSocketPushMessage;
 import org.apache.wicket.protocol.ws.api.registry.IKey;
@@ -53,7 +53,7 @@ public class WebSocketPushBroadcaster
         *
         * This method can be invoked from any thread, even a non-wicket 
thread. By default all processing
         * is done in the caller thread. Use
-        * {@link 
IWebSocketSettings#setWebSocketPushMessageExecutor(org.apache.wicket.protocol.ws.concurrent.Executor)}
+        * {@link 
WebSocketSettings#setWebSocketPushMessageExecutor(org.apache.wicket.protocol.ws.concurrent.Executor)}
         * to move processing to background threads.
         *
         * If the given connection is no longer open then the broadcast is 
silently ignored.
@@ -86,7 +86,7 @@ public class WebSocketPushBroadcaster
         *
         * This method can be invoked from any thread, even a non-wicket 
thread. By default all processing
         * is done in the caller thread. Use
-        * {@link 
IWebSocketSettings#setWebSocketPushMessageExecutor(org.apache.wicket.protocol.ws.concurrent.Executor)}
+        * {@link 
WebSocketSettings#setWebSocketPushMessageExecutor(org.apache.wicket.protocol.ws.concurrent.Executor)}
         * to move processing to background threads.
         *
         * If some connections are not in valid state they are silently ignored.
@@ -112,7 +112,7 @@ public class WebSocketPushBroadcaster
        private void process(final Application application, final 
Collection<IWebSocketConnection> wsConnections,
                             final IWebSocketPushMessage message)
        {
-               IWebSocketSettings webSocketSettings = 
IWebSocketSettings.Holder.get(application);
+               WebSocketSettings webSocketSettings = 
WebSocketSettings.Holder.get(application);
                Executor executor = 
webSocketSettings.getWebSocketPushMessageExecutor();
                for (final IWebSocketConnection wsConnection : wsConnections)
                {

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/test/java/org/apache/wicket/protocol/ws/util/tester/WebSocketTesterBehaviorTest.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/test/java/org/apache/wicket/protocol/ws/util/tester/WebSocketTesterBehaviorTest.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/test/java/org/apache/wicket/protocol/ws/util/tester/WebSocketTesterBehaviorTest.java
index ce123cb..64ca565 100644
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/test/java/org/apache/wicket/protocol/ws/util/tester/WebSocketTesterBehaviorTest.java
+++ 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-core/src/test/java/org/apache/wicket/protocol/ws/util/tester/WebSocketTesterBehaviorTest.java
@@ -20,7 +20,7 @@ import java.io.UnsupportedEncodingException;
 import java.util.concurrent.atomic.AtomicBoolean;
 
 import org.apache.wicket.event.IEvent;
-import org.apache.wicket.protocol.ws.IWebSocketSettings;
+import org.apache.wicket.protocol.ws.WebSocketSettings;
 import org.apache.wicket.protocol.ws.api.WebSocketPushBroadcaster;
 import org.apache.wicket.protocol.ws.api.event.WebSocketPushPayload;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
@@ -152,7 +152,7 @@ public class WebSocketTesterBehaviorTest extends Assert
                tester.getSession().bind();
 
                new WebSocketTester(tester, page);
-               IWebSocketSettings webSocketSettings = 
IWebSocketSettings.Holder.get(tester.getApplication());
+               WebSocketSettings webSocketSettings = 
WebSocketSettings.Holder.get(tester.getApplication());
                WebSocketPushBroadcaster broadcaster = new 
WebSocketPushBroadcaster(webSocketSettings.getConnectionRegistry());
                ConnectedMessage wsMessage = new 
ConnectedMessage(tester.getApplication(),
                                tester.getHttpSession().getId(), new 
PageIdKey(page.getPageId()));

http://git-wip-us.apache.org/repos/asf/wicket/blob/cb5da57c/wicket-experimental/wicket-native-websocket/wicket-native-websocket-javax/src/test/java/org/apache/wicket/protocol/ws/javax/app/charts/ChartUpdater.java
----------------------------------------------------------------------
diff --git 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-javax/src/test/java/org/apache/wicket/protocol/ws/javax/app/charts/ChartUpdater.java
 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-javax/src/test/java/org/apache/wicket/protocol/ws/javax/app/charts/ChartUpdater.java
index 86a8bb0..d83f72d 100644
--- 
a/wicket-experimental/wicket-native-websocket/wicket-native-websocket-javax/src/test/java/org/apache/wicket/protocol/ws/javax/app/charts/ChartUpdater.java
+++ 
b/wicket-experimental/wicket-native-websocket/wicket-native-websocket-javax/src/test/java/org/apache/wicket/protocol/ws/javax/app/charts/ChartUpdater.java
@@ -21,7 +21,7 @@ import java.util.concurrent.Executors;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.wicket.Application;
-import org.apache.wicket.protocol.ws.IWebSocketSettings;
+import org.apache.wicket.protocol.ws.WebSocketSettings;
 import org.apache.wicket.protocol.ws.api.IWebSocketConnection;
 import org.apache.wicket.protocol.ws.api.registry.IWebSocketConnectionRegistry;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
@@ -96,7 +96,7 @@ public class ChartUpdater
                public void run()
                {
                        Application application = 
Application.get(applicationName);
-                       IWebSocketSettings webSocketSettings = 
IWebSocketSettings.Holder.get(application);
+                       WebSocketSettings webSocketSettings = 
WebSocketSettings.Holder.get(application);
                        IWebSocketConnectionRegistry 
webSocketConnectionRegistry = webSocketSettings.getConnectionRegistry();
                        IWebSocketConnection connection = 
webSocketConnectionRegistry.getConnection(application, sessionId, key);
 

Reply via email to