diff --git a/pom.xml b/pom.xml index 295f587..183041e 100644 --- a/pom.xml +++ b/pom.xml @@ -98,37 +98,31 @@ io.netty netty-buffer 4.0.13.Final - bundle io.netty netty-common 4.0.13.Final - bundle io.netty netty-transport 4.0.13.Final - bundle io.netty netty-handler 4.0.13.Final - bundle io.netty netty-codec-http 4.0.13.Final - bundle io.netty netty-codec 4.0.13.Final - bundle @@ -160,10 +154,10 @@ 2.2.3 - org.apache.servicemix.bundles - org.apache.servicemix.bundles.jedis - 2.2.1_1 - bundle + redis.clients + jedis + 2.2.1 + provided @@ -272,15 +266,9 @@ netty-socketio;scope=compile com.corundumstudio.socketio;version="${project.version}", - com.corundumstudio.socketio.ack;version="${project.version}", com.corundumstudio.socketio.annotation;version="${project.version}", - com.corundumstudio.socketio.handler;version="${project.version}", com.corundumstudio.socketio.listener;version="${project.version}", - com.corundumstudio.socketio.messages;version="${project.version}", - com.corundumstudio.socketio.misc;version="${project.version}", - com.corundumstudio.socketio.namespace;version="${project.version}", - com.corundumstudio.socketio.parser;version="${project.version}", - com.corundumstudio.socketio.scheduler;version="${project.version}", + com.corundumstudio.socketio.store;version="${project.version}", diff --git a/src/main/java/com/corundumstudio/socketio/BroadcastOperations.java b/src/main/java/com/corundumstudio/socketio/BroadcastOperations.java index 2dc1220..84d58fd 100644 --- a/src/main/java/com/corundumstudio/socketio/BroadcastOperations.java +++ b/src/main/java/com/corundumstudio/socketio/BroadcastOperations.java @@ -25,6 +25,7 @@ import com.corundumstudio.socketio.misc.IterableCollection; import com.corundumstudio.socketio.namespace.Namespace; import com.corundumstudio.socketio.parser.Packet; import com.corundumstudio.socketio.parser.PacketType; +import com.corundumstudio.socketio.store.StoreFactory; import com.corundumstudio.socketio.store.pubsub.DispatchMessage; import com.corundumstudio.socketio.store.pubsub.PubSubStore; diff --git a/src/main/java/com/corundumstudio/socketio/Configuration.java b/src/main/java/com/corundumstudio/socketio/Configuration.java index e13b481..b2bf342 100644 --- a/src/main/java/com/corundumstudio/socketio/Configuration.java +++ b/src/main/java/com/corundumstudio/socketio/Configuration.java @@ -22,6 +22,7 @@ import java.io.InputStream; import com.corundumstudio.socketio.parser.JacksonJsonSupport; import com.corundumstudio.socketio.parser.JsonSupport; import com.corundumstudio.socketio.store.MemoryStoreFactory; +import com.corundumstudio.socketio.store.StoreFactory; public class Configuration { diff --git a/src/main/java/com/corundumstudio/socketio/SocketIOChannelInitializer.java b/src/main/java/com/corundumstudio/socketio/SocketIOChannelInitializer.java index 861d34a..3218485 100644 --- a/src/main/java/com/corundumstudio/socketio/SocketIOChannelInitializer.java +++ b/src/main/java/com/corundumstudio/socketio/SocketIOChannelInitializer.java @@ -40,6 +40,7 @@ import com.corundumstudio.socketio.handler.AuthorizeHandler; import com.corundumstudio.socketio.handler.EncoderHandler; import com.corundumstudio.socketio.handler.HeartbeatHandler; import com.corundumstudio.socketio.handler.PacketHandler; +import com.corundumstudio.socketio.handler.PacketListener; import com.corundumstudio.socketio.handler.ResourceHandler; import com.corundumstudio.socketio.handler.WrongUrlHandler; import com.corundumstudio.socketio.misc.CompositeIterable; @@ -49,6 +50,7 @@ import com.corundumstudio.socketio.parser.Decoder; import com.corundumstudio.socketio.parser.Encoder; import com.corundumstudio.socketio.parser.JsonSupport; import com.corundumstudio.socketio.scheduler.CancelableScheduler; +import com.corundumstudio.socketio.store.StoreFactory; import com.corundumstudio.socketio.transport.FlashPolicyHandler; import com.corundumstudio.socketio.transport.FlashSocketTransport; import com.corundumstudio.socketio.transport.MainBaseClient; diff --git a/src/main/java/com/corundumstudio/socketio/SocketIOClient.java b/src/main/java/com/corundumstudio/socketio/SocketIOClient.java index 9a465ca..dca56ae 100644 --- a/src/main/java/com/corundumstudio/socketio/SocketIOClient.java +++ b/src/main/java/com/corundumstudio/socketio/SocketIOClient.java @@ -21,6 +21,7 @@ import java.util.List; import java.util.UUID; import com.corundumstudio.socketio.parser.Packet; +import com.corundumstudio.socketio.store.Store; /** diff --git a/src/main/java/com/corundumstudio/socketio/handler/PacketHandler.java b/src/main/java/com/corundumstudio/socketio/handler/PacketHandler.java index f8d8d7d..dccec8d 100644 --- a/src/main/java/com/corundumstudio/socketio/handler/PacketHandler.java +++ b/src/main/java/com/corundumstudio/socketio/handler/PacketHandler.java @@ -24,7 +24,6 @@ import io.netty.util.CharsetUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.corundumstudio.socketio.PacketListener; import com.corundumstudio.socketio.messages.PacketsMessage; import com.corundumstudio.socketio.namespace.Namespace; import com.corundumstudio.socketio.namespace.NamespacesHub; diff --git a/src/main/java/com/corundumstudio/socketio/PacketListener.java b/src/main/java/com/corundumstudio/socketio/handler/PacketListener.java similarity index 95% rename from src/main/java/com/corundumstudio/socketio/PacketListener.java rename to src/main/java/com/corundumstudio/socketio/handler/PacketListener.java index 37fd05f..a20d848 100644 --- a/src/main/java/com/corundumstudio/socketio/PacketListener.java +++ b/src/main/java/com/corundumstudio/socketio/handler/PacketListener.java @@ -13,16 +13,15 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.corundumstudio.socketio; +package com.corundumstudio.socketio.handler; import java.util.Collections; +import com.corundumstudio.socketio.AckRequest; import com.corundumstudio.socketio.ack.AckManager; -import com.corundumstudio.socketio.handler.HeartbeatHandler; import com.corundumstudio.socketio.namespace.Namespace; import com.corundumstudio.socketio.namespace.NamespacesHub; import com.corundumstudio.socketio.parser.Packet; -import com.corundumstudio.socketio.store.pubsub.PubSubStore; import com.corundumstudio.socketio.transport.NamespaceClient; public class PacketListener { diff --git a/src/main/java/com/corundumstudio/socketio/namespace/Namespace.java b/src/main/java/com/corundumstudio/socketio/namespace/Namespace.java index 83de8b3..7ea7cd0 100644 --- a/src/main/java/com/corundumstudio/socketio/namespace/Namespace.java +++ b/src/main/java/com/corundumstudio/socketio/namespace/Namespace.java @@ -30,13 +30,13 @@ import com.corundumstudio.socketio.AckRequest; import com.corundumstudio.socketio.BroadcastOperations; import com.corundumstudio.socketio.SocketIOClient; import com.corundumstudio.socketio.SocketIONamespace; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.annotation.ScannerEngine; import com.corundumstudio.socketio.listener.ConnectListener; import com.corundumstudio.socketio.listener.DataListener; import com.corundumstudio.socketio.listener.DisconnectListener; import com.corundumstudio.socketio.parser.JsonSupport; import com.corundumstudio.socketio.parser.Packet; +import com.corundumstudio.socketio.store.StoreFactory; import com.corundumstudio.socketio.store.pubsub.DispatchMessage; import com.corundumstudio.socketio.store.pubsub.JoinLeaveMessage; import com.corundumstudio.socketio.store.pubsub.PubSubStore; diff --git a/src/main/java/com/corundumstudio/socketio/namespace/NamespacesHub.java b/src/main/java/com/corundumstudio/socketio/namespace/NamespacesHub.java index f8a711b..fc2b56b 100644 --- a/src/main/java/com/corundumstudio/socketio/namespace/NamespacesHub.java +++ b/src/main/java/com/corundumstudio/socketio/namespace/NamespacesHub.java @@ -21,9 +21,9 @@ import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; import com.corundumstudio.socketio.SocketIOClient; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.misc.CompositeIterable; import com.corundumstudio.socketio.parser.JsonSupport; +import com.corundumstudio.socketio.store.StoreFactory; public class NamespacesHub { diff --git a/src/main/java/com/corundumstudio/socketio/store/MemoryStore.java b/src/main/java/com/corundumstudio/socketio/store/MemoryStore.java index 581725d..b71c11b 100644 --- a/src/main/java/com/corundumstudio/socketio/store/MemoryStore.java +++ b/src/main/java/com/corundumstudio/socketio/store/MemoryStore.java @@ -18,8 +18,6 @@ package com.corundumstudio.socketio.store; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; -import com.corundumstudio.socketio.Store; - public class MemoryStore implements Store { private final Map store = new ConcurrentHashMap(); diff --git a/src/main/java/com/corundumstudio/socketio/store/MemoryStoreFactory.java b/src/main/java/com/corundumstudio/socketio/store/MemoryStoreFactory.java index 7abae7e..606fff1 100644 --- a/src/main/java/com/corundumstudio/socketio/store/MemoryStoreFactory.java +++ b/src/main/java/com/corundumstudio/socketio/store/MemoryStoreFactory.java @@ -17,7 +17,6 @@ package com.corundumstudio.socketio.store; import java.util.UUID; -import com.corundumstudio.socketio.Store; import com.corundumstudio.socketio.store.pubsub.BaseStoreFactory; import com.corundumstudio.socketio.store.pubsub.PubSubStore; diff --git a/src/main/java/com/corundumstudio/socketio/store/RedisStore.java b/src/main/java/com/corundumstudio/socketio/store/RedisStore.java index ee42789..3513b27 100644 --- a/src/main/java/com/corundumstudio/socketio/store/RedisStore.java +++ b/src/main/java/com/corundumstudio/socketio/store/RedisStore.java @@ -19,19 +19,13 @@ import java.util.UUID; import redis.clients.jedis.Jedis; -import com.corundumstudio.socketio.Store; - public class RedisStore implements Store { - private Jedis client; - + private final Jedis client; private final String sessionId; - public RedisStore(UUID sessionId) { + public RedisStore(UUID sessionId, Jedis client) { this.sessionId = sessionId.toString(); - } - - public void setClient(Jedis client) { this.client = client; } diff --git a/src/main/java/com/corundumstudio/socketio/store/RedisStoreFactory.java b/src/main/java/com/corundumstudio/socketio/store/RedisStoreFactory.java index ceff87e..67966c6 100644 --- a/src/main/java/com/corundumstudio/socketio/store/RedisStoreFactory.java +++ b/src/main/java/com/corundumstudio/socketio/store/RedisStoreFactory.java @@ -19,7 +19,6 @@ import java.util.UUID; import redis.clients.jedis.Jedis; -import com.corundumstudio.socketio.Store; import com.corundumstudio.socketio.namespace.NamespacesHub; import com.corundumstudio.socketio.parser.JsonSupport; import com.corundumstudio.socketio.store.pubsub.BaseStoreFactory; @@ -59,9 +58,7 @@ public class RedisStoreFactory extends BaseStoreFactory { @Override public Store create(UUID sessionId) { - RedisStore store = new RedisStore(sessionId); - store.setClient(redisClient); - return store; + return new RedisStore(sessionId, redisClient); } public PubSubStore getPubSubStore() { diff --git a/src/main/java/com/corundumstudio/socketio/Store.java b/src/main/java/com/corundumstudio/socketio/store/Store.java similarity index 94% rename from src/main/java/com/corundumstudio/socketio/Store.java rename to src/main/java/com/corundumstudio/socketio/store/Store.java index 856fd00..c603be3 100644 --- a/src/main/java/com/corundumstudio/socketio/Store.java +++ b/src/main/java/com/corundumstudio/socketio/store/Store.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.corundumstudio.socketio; +package com.corundumstudio.socketio.store; public interface Store { diff --git a/src/main/java/com/corundumstudio/socketio/StoreFactory.java b/src/main/java/com/corundumstudio/socketio/store/StoreFactory.java similarity index 91% rename from src/main/java/com/corundumstudio/socketio/StoreFactory.java rename to src/main/java/com/corundumstudio/socketio/store/StoreFactory.java index ee9c991..8f25f7d 100644 --- a/src/main/java/com/corundumstudio/socketio/StoreFactory.java +++ b/src/main/java/com/corundumstudio/socketio/store/StoreFactory.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.corundumstudio.socketio; +package com.corundumstudio.socketio.store; import java.util.UUID; +import com.corundumstudio.socketio.Disconnectable; import com.corundumstudio.socketio.namespace.NamespacesHub; import com.corundumstudio.socketio.parser.JsonSupport; import com.corundumstudio.socketio.store.pubsub.PubSubStore; diff --git a/src/main/java/com/corundumstudio/socketio/store/pubsub/BaseStoreFactory.java b/src/main/java/com/corundumstudio/socketio/store/pubsub/BaseStoreFactory.java index ee0d4ba..19aeeac 100644 --- a/src/main/java/com/corundumstudio/socketio/store/pubsub/BaseStoreFactory.java +++ b/src/main/java/com/corundumstudio/socketio/store/pubsub/BaseStoreFactory.java @@ -15,9 +15,9 @@ */ package com.corundumstudio.socketio.store.pubsub; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.namespace.NamespacesHub; import com.corundumstudio.socketio.parser.JsonSupport; +import com.corundumstudio.socketio.store.StoreFactory; import com.corundumstudio.socketio.transport.MainBaseClient; public abstract class BaseStoreFactory implements StoreFactory { diff --git a/src/main/java/com/corundumstudio/socketio/transport/FlashSocketTransport.java b/src/main/java/com/corundumstudio/socketio/transport/FlashSocketTransport.java index 662a0e4..37852a7 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/FlashSocketTransport.java +++ b/src/main/java/com/corundumstudio/socketio/transport/FlashSocketTransport.java @@ -20,11 +20,11 @@ import io.netty.channel.ChannelHandler.Sharable; import com.corundumstudio.socketio.DisconnectableHub; import com.corundumstudio.socketio.SocketIOChannelInitializer; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.Transport; import com.corundumstudio.socketio.ack.AckManager; import com.corundumstudio.socketio.handler.AuthorizeHandler; import com.corundumstudio.socketio.handler.HeartbeatHandler; +import com.corundumstudio.socketio.store.StoreFactory; @Sharable public class FlashSocketTransport extends WebSocketTransport { diff --git a/src/main/java/com/corundumstudio/socketio/transport/MainBaseClient.java b/src/main/java/com/corundumstudio/socketio/transport/MainBaseClient.java index ee176b9..4cc6ebe 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/MainBaseClient.java +++ b/src/main/java/com/corundumstudio/socketio/transport/MainBaseClient.java @@ -25,15 +25,15 @@ import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; -import com.corundumstudio.socketio.Store; import com.corundumstudio.socketio.DisconnectableHub; import com.corundumstudio.socketio.SocketIOClient; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.Transport; import com.corundumstudio.socketio.ack.AckManager; import com.corundumstudio.socketio.namespace.Namespace; import com.corundumstudio.socketio.parser.Packet; import com.corundumstudio.socketio.parser.PacketType; +import com.corundumstudio.socketio.store.Store; +import com.corundumstudio.socketio.store.StoreFactory; /** * Base class for main client. diff --git a/src/main/java/com/corundumstudio/socketio/transport/WebSocketClient.java b/src/main/java/com/corundumstudio/socketio/transport/WebSocketClient.java index 1d7e935..a9ffc11 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/WebSocketClient.java +++ b/src/main/java/com/corundumstudio/socketio/transport/WebSocketClient.java @@ -21,11 +21,11 @@ import io.netty.channel.ChannelFuture; import java.util.UUID; import com.corundumstudio.socketio.DisconnectableHub; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.Transport; import com.corundumstudio.socketio.ack.AckManager; import com.corundumstudio.socketio.messages.WebSocketPacketMessage; import com.corundumstudio.socketio.parser.Packet; +import com.corundumstudio.socketio.store.StoreFactory; public class WebSocketClient extends MainBaseClient { diff --git a/src/main/java/com/corundumstudio/socketio/transport/WebSocketTransport.java b/src/main/java/com/corundumstudio/socketio/transport/WebSocketTransport.java index aff82b0..4135ff2 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/WebSocketTransport.java +++ b/src/main/java/com/corundumstudio/socketio/transport/WebSocketTransport.java @@ -41,12 +41,12 @@ import org.slf4j.LoggerFactory; import com.corundumstudio.socketio.DisconnectableHub; import com.corundumstudio.socketio.SocketIOClient; import com.corundumstudio.socketio.SocketIOChannelInitializer; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.Transport; import com.corundumstudio.socketio.ack.AckManager; import com.corundumstudio.socketio.handler.AuthorizeHandler; import com.corundumstudio.socketio.handler.HeartbeatHandler; import com.corundumstudio.socketio.messages.PacketsMessage; +import com.corundumstudio.socketio.store.StoreFactory; @Sharable public class WebSocketTransport extends BaseTransport { diff --git a/src/main/java/com/corundumstudio/socketio/transport/XHRPollingClient.java b/src/main/java/com/corundumstudio/socketio/transport/XHRPollingClient.java index ea5d3dc..58d4a68 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/XHRPollingClient.java +++ b/src/main/java/com/corundumstudio/socketio/transport/XHRPollingClient.java @@ -24,11 +24,11 @@ import java.util.UUID; import java.util.concurrent.ConcurrentLinkedQueue; import com.corundumstudio.socketio.DisconnectableHub; -import com.corundumstudio.socketio.StoreFactory; import com.corundumstudio.socketio.Transport; import com.corundumstudio.socketio.ack.AckManager; import com.corundumstudio.socketio.messages.XHRSendPacketsMessage; import com.corundumstudio.socketio.parser.Packet; +import com.corundumstudio.socketio.store.StoreFactory; public class XHRPollingClient extends MainBaseClient { diff --git a/src/test/java/com/corundumstudio/socketio/handler/PacketHandlerTest.java b/src/test/java/com/corundumstudio/socketio/handler/PacketHandlerTest.java index c46711a..b805b83 100644 --- a/src/test/java/com/corundumstudio/socketio/handler/PacketHandlerTest.java +++ b/src/test/java/com/corundumstudio/socketio/handler/PacketHandlerTest.java @@ -26,7 +26,6 @@ import junit.framework.Assert; import mockit.Mocked; import com.corundumstudio.socketio.Configuration; -import com.corundumstudio.socketio.PacketListener; import com.corundumstudio.socketio.transport.NamespaceClient; import io.netty.buffer.ByteBuf;