diff --git a/.gitignore b/.gitignore
index fc368f3..fab2364 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,7 @@
.idea/
*.iml
*.iws
+*.ipr
# Mac
.DS_Store
diff --git a/gossip-base/pom.xml b/gossip-base/pom.xml
new file mode 100644
index 0000000..3529bd1
--- /dev/null
+++ b/gossip-base/pom.xml
@@ -0,0 +1,91 @@
+
+
+ 4.0.0
+
+
+ org.apache.gossip
+ gossip-parent
+ 0.1.3-incubating-SNAPSHOT
+ ../pom.xml
+
+
+ Gossip Base
+ gossip-base
+ 0.1.3-incubating-SNAPSHOT
+
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+ ${jackson.version}
+
+
+ commons-math
+ commons-math
+ ${commons-math.version}
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ ${jackson.version}
+
+
+ io.dropwizard.metrics
+ metrics-core
+ ${metrics.version}
+
+ org.junit.jupiter
+ junit-jupiter-api
+ ${junit.jupiter.version}
+ test
+
+
+ org.junit.jupiter
+ junit-jupiter-engine
+ ${junit.jupiter.version}
+ test
+
+
+ org.junit.vintage
+ junit-vintage-engine
+ ${junit.vintage.version}
+ test
+
+
+ org.junit.platform
+ junit-platform-runner
+ ${junit.platform.version}
+ test
+
+
+ io.teknek
+ tunit
+ ${tunit.version}
+ test
+
+
+ log4j
+ log4j
+ ${log4j.version}
+ jar
+ compile
+
+
+ javax.jms
+ jms
+
+
+ com.sun.jdmk
+ jmxtools
+
+
+ com.sun.jmx
+ jmxri
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/apache/gossip/GossipSettings.java b/gossip-base/src/main/java/org/apache/gossip/GossipSettings.java
similarity index 100%
rename from src/main/java/org/apache/gossip/GossipSettings.java
rename to gossip-base/src/main/java/org/apache/gossip/GossipSettings.java
diff --git a/src/main/java/org/apache/gossip/LocalMember.java b/gossip-base/src/main/java/org/apache/gossip/LocalMember.java
similarity index 100%
rename from src/main/java/org/apache/gossip/LocalMember.java
rename to gossip-base/src/main/java/org/apache/gossip/LocalMember.java
diff --git a/src/main/java/org/apache/gossip/Member.java b/gossip-base/src/main/java/org/apache/gossip/Member.java
similarity index 100%
rename from src/main/java/org/apache/gossip/Member.java
rename to gossip-base/src/main/java/org/apache/gossip/Member.java
diff --git a/src/main/java/org/apache/gossip/RemoteMember.java b/gossip-base/src/main/java/org/apache/gossip/RemoteMember.java
similarity index 100%
rename from src/main/java/org/apache/gossip/RemoteMember.java
rename to gossip-base/src/main/java/org/apache/gossip/RemoteMember.java
diff --git a/src/main/java/org/apache/gossip/StartupSettings.java b/gossip-base/src/main/java/org/apache/gossip/StartupSettings.java
similarity index 100%
rename from src/main/java/org/apache/gossip/StartupSettings.java
rename to gossip-base/src/main/java/org/apache/gossip/StartupSettings.java
diff --git a/src/main/java/org/apache/gossip/accrual/FailureDetector.java b/gossip-base/src/main/java/org/apache/gossip/accrual/FailureDetector.java
similarity index 100%
rename from src/main/java/org/apache/gossip/accrual/FailureDetector.java
rename to gossip-base/src/main/java/org/apache/gossip/accrual/FailureDetector.java
diff --git a/src/main/java/org/apache/gossip/crdt/Crdt.java b/gossip-base/src/main/java/org/apache/gossip/crdt/Crdt.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/Crdt.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/Crdt.java
diff --git a/src/main/java/org/apache/gossip/crdt/CrdtBiFunctionMerge.java b/gossip-base/src/main/java/org/apache/gossip/crdt/CrdtBiFunctionMerge.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/CrdtBiFunctionMerge.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/CrdtBiFunctionMerge.java
diff --git a/src/main/java/org/apache/gossip/crdt/CrdtCounter.java b/gossip-base/src/main/java/org/apache/gossip/crdt/CrdtCounter.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/CrdtCounter.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/CrdtCounter.java
diff --git a/src/main/java/org/apache/gossip/crdt/CrdtModule.java b/gossip-base/src/main/java/org/apache/gossip/crdt/CrdtModule.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/CrdtModule.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/CrdtModule.java
diff --git a/src/main/java/org/apache/gossip/crdt/CrdtSet.java b/gossip-base/src/main/java/org/apache/gossip/crdt/CrdtSet.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/CrdtSet.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/CrdtSet.java
diff --git a/src/main/java/org/apache/gossip/crdt/GrowOnlyCounter.java b/gossip-base/src/main/java/org/apache/gossip/crdt/GrowOnlyCounter.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/GrowOnlyCounter.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/GrowOnlyCounter.java
diff --git a/src/main/java/org/apache/gossip/crdt/GrowOnlySet.java b/gossip-base/src/main/java/org/apache/gossip/crdt/GrowOnlySet.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/GrowOnlySet.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/GrowOnlySet.java
diff --git a/src/main/java/org/apache/gossip/crdt/OrSet.java b/gossip-base/src/main/java/org/apache/gossip/crdt/OrSet.java
similarity index 100%
rename from src/main/java/org/apache/gossip/crdt/OrSet.java
rename to gossip-base/src/main/java/org/apache/gossip/crdt/OrSet.java
diff --git a/src/main/java/org/apache/gossip/event/GossipListener.java b/gossip-base/src/main/java/org/apache/gossip/event/GossipListener.java
similarity index 100%
rename from src/main/java/org/apache/gossip/event/GossipListener.java
rename to gossip-base/src/main/java/org/apache/gossip/event/GossipListener.java
diff --git a/src/main/java/org/apache/gossip/event/GossipState.java b/gossip-base/src/main/java/org/apache/gossip/event/GossipState.java
similarity index 100%
rename from src/main/java/org/apache/gossip/event/GossipState.java
rename to gossip-base/src/main/java/org/apache/gossip/event/GossipState.java
diff --git a/src/main/java/org/apache/gossip/examples/StandAloneDatacenterAndRack.java b/gossip-base/src/main/java/org/apache/gossip/examples/StandAloneDatacenterAndRack.java
similarity index 100%
rename from src/main/java/org/apache/gossip/examples/StandAloneDatacenterAndRack.java
rename to gossip-base/src/main/java/org/apache/gossip/examples/StandAloneDatacenterAndRack.java
diff --git a/src/main/java/org/apache/gossip/examples/StandAloneNode.java b/gossip-base/src/main/java/org/apache/gossip/examples/StandAloneNode.java
similarity index 100%
rename from src/main/java/org/apache/gossip/examples/StandAloneNode.java
rename to gossip-base/src/main/java/org/apache/gossip/examples/StandAloneNode.java
diff --git a/src/main/java/org/apache/gossip/examples/StandAloneNodeCrdtOrSet.java b/gossip-base/src/main/java/org/apache/gossip/examples/StandAloneNodeCrdtOrSet.java
similarity index 100%
rename from src/main/java/org/apache/gossip/examples/StandAloneNodeCrdtOrSet.java
rename to gossip-base/src/main/java/org/apache/gossip/examples/StandAloneNodeCrdtOrSet.java
diff --git a/src/main/java/org/apache/gossip/manager/AbstractActiveGossiper.java b/gossip-base/src/main/java/org/apache/gossip/manager/AbstractActiveGossiper.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/AbstractActiveGossiper.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/AbstractActiveGossiper.java
diff --git a/src/main/java/org/apache/gossip/manager/Clock.java b/gossip-base/src/main/java/org/apache/gossip/manager/Clock.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/Clock.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/Clock.java
diff --git a/src/main/java/org/apache/gossip/manager/DataReaper.java b/gossip-base/src/main/java/org/apache/gossip/manager/DataReaper.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/DataReaper.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/DataReaper.java
diff --git a/src/main/java/org/apache/gossip/manager/DatacenterRackAwareActiveGossiper.java b/gossip-base/src/main/java/org/apache/gossip/manager/DatacenterRackAwareActiveGossiper.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/DatacenterRackAwareActiveGossiper.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/DatacenterRackAwareActiveGossiper.java
diff --git a/src/main/java/org/apache/gossip/manager/GossipCore.java b/gossip-base/src/main/java/org/apache/gossip/manager/GossipCore.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/GossipCore.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/GossipCore.java
diff --git a/src/main/java/org/apache/gossip/manager/GossipCoreConstants.java b/gossip-base/src/main/java/org/apache/gossip/manager/GossipCoreConstants.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/GossipCoreConstants.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/GossipCoreConstants.java
diff --git a/src/main/java/org/apache/gossip/manager/GossipManager.java b/gossip-base/src/main/java/org/apache/gossip/manager/GossipManager.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/GossipManager.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/GossipManager.java
diff --git a/src/main/java/org/apache/gossip/manager/GossipManagerBuilder.java b/gossip-base/src/main/java/org/apache/gossip/manager/GossipManagerBuilder.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/GossipManagerBuilder.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/GossipManagerBuilder.java
diff --git a/src/main/java/org/apache/gossip/manager/GossipMemberStateRefresher.java b/gossip-base/src/main/java/org/apache/gossip/manager/GossipMemberStateRefresher.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/GossipMemberStateRefresher.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/GossipMemberStateRefresher.java
diff --git a/src/main/java/org/apache/gossip/manager/PassiveGossipConstants.java b/gossip-base/src/main/java/org/apache/gossip/manager/PassiveGossipConstants.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/PassiveGossipConstants.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/PassiveGossipConstants.java
diff --git a/src/main/java/org/apache/gossip/manager/PassiveGossipThread.java b/gossip-base/src/main/java/org/apache/gossip/manager/PassiveGossipThread.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/PassiveGossipThread.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/PassiveGossipThread.java
diff --git a/src/main/java/org/apache/gossip/manager/RingStatePersister.java b/gossip-base/src/main/java/org/apache/gossip/manager/RingStatePersister.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/RingStatePersister.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/RingStatePersister.java
diff --git a/src/main/java/org/apache/gossip/manager/SimpleActiveGossipper.java b/gossip-base/src/main/java/org/apache/gossip/manager/SimpleActiveGossipper.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/SimpleActiveGossipper.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/SimpleActiveGossipper.java
diff --git a/src/main/java/org/apache/gossip/manager/SystemClock.java b/gossip-base/src/main/java/org/apache/gossip/manager/SystemClock.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/SystemClock.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/SystemClock.java
diff --git a/src/main/java/org/apache/gossip/manager/UserDataPersister.java b/gossip-base/src/main/java/org/apache/gossip/manager/UserDataPersister.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/UserDataPersister.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/UserDataPersister.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/ActiveGossipMessageHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/ActiveGossipMessageHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/ActiveGossipMessageHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/ActiveGossipMessageHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/DefaultMessageInvoker.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/DefaultMessageInvoker.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/DefaultMessageInvoker.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/DefaultMessageInvoker.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/MessageHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/MessageHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/MessageInvoker.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageInvoker.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/MessageInvoker.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageInvoker.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/MessageInvokerCombiner.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageInvokerCombiner.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/MessageInvokerCombiner.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/MessageInvokerCombiner.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/PerNodeDataMessageHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/PerNodeDataMessageHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/PerNodeDataMessageHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/PerNodeDataMessageHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/ResponseHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/ResponseHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/ResponseHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/ResponseHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/SharedDataMessageHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/SharedDataMessageHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/SharedDataMessageHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/SharedDataMessageHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/ShutdownMessageHandler.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/ShutdownMessageHandler.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/ShutdownMessageHandler.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/ShutdownMessageHandler.java
diff --git a/src/main/java/org/apache/gossip/manager/handlers/SimpleMessageInvoker.java b/gossip-base/src/main/java/org/apache/gossip/manager/handlers/SimpleMessageInvoker.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/handlers/SimpleMessageInvoker.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/handlers/SimpleMessageInvoker.java
diff --git a/src/main/java/org/apache/gossip/manager/impl/OnlyProcessReceivedPassiveGossipThread.java b/gossip-base/src/main/java/org/apache/gossip/manager/impl/OnlyProcessReceivedPassiveGossipThread.java
similarity index 100%
rename from src/main/java/org/apache/gossip/manager/impl/OnlyProcessReceivedPassiveGossipThread.java
rename to gossip-base/src/main/java/org/apache/gossip/manager/impl/OnlyProcessReceivedPassiveGossipThread.java
diff --git a/src/main/java/org/apache/gossip/model/ActiveGossipMessage.java b/gossip-base/src/main/java/org/apache/gossip/model/ActiveGossipMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/ActiveGossipMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/model/ActiveGossipMessage.java
diff --git a/src/main/java/org/apache/gossip/model/ActiveGossipOk.java b/gossip-base/src/main/java/org/apache/gossip/model/ActiveGossipOk.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/ActiveGossipOk.java
rename to gossip-base/src/main/java/org/apache/gossip/model/ActiveGossipOk.java
diff --git a/src/main/java/org/apache/gossip/model/Base.java b/gossip-base/src/main/java/org/apache/gossip/model/Base.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/Base.java
rename to gossip-base/src/main/java/org/apache/gossip/model/Base.java
diff --git a/src/main/java/org/apache/gossip/model/Fault.java b/gossip-base/src/main/java/org/apache/gossip/model/Fault.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/Fault.java
rename to gossip-base/src/main/java/org/apache/gossip/model/Fault.java
diff --git a/src/main/java/org/apache/gossip/model/Member.java b/gossip-base/src/main/java/org/apache/gossip/model/Member.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/Member.java
rename to gossip-base/src/main/java/org/apache/gossip/model/Member.java
diff --git a/src/main/java/org/apache/gossip/model/Message.java b/gossip-base/src/main/java/org/apache/gossip/model/Message.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/Message.java
rename to gossip-base/src/main/java/org/apache/gossip/model/Message.java
diff --git a/src/main/java/org/apache/gossip/model/NotAMemberFault.java b/gossip-base/src/main/java/org/apache/gossip/model/NotAMemberFault.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/NotAMemberFault.java
rename to gossip-base/src/main/java/org/apache/gossip/model/NotAMemberFault.java
diff --git a/src/main/java/org/apache/gossip/model/PerNodeDataMessage.java b/gossip-base/src/main/java/org/apache/gossip/model/PerNodeDataMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/PerNodeDataMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/model/PerNodeDataMessage.java
diff --git a/src/main/java/org/apache/gossip/model/Response.java b/gossip-base/src/main/java/org/apache/gossip/model/Response.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/Response.java
rename to gossip-base/src/main/java/org/apache/gossip/model/Response.java
diff --git a/src/main/java/org/apache/gossip/model/SharedDataMessage.java b/gossip-base/src/main/java/org/apache/gossip/model/SharedDataMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/SharedDataMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/model/SharedDataMessage.java
diff --git a/src/main/java/org/apache/gossip/model/ShutdownMessage.java b/gossip-base/src/main/java/org/apache/gossip/model/ShutdownMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/ShutdownMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/model/ShutdownMessage.java
diff --git a/src/main/java/org/apache/gossip/model/SignedPayload.java b/gossip-base/src/main/java/org/apache/gossip/model/SignedPayload.java
similarity index 100%
rename from src/main/java/org/apache/gossip/model/SignedPayload.java
rename to gossip-base/src/main/java/org/apache/gossip/model/SignedPayload.java
diff --git a/src/main/java/org/apache/gossip/secure/KeyTool.java b/gossip-base/src/main/java/org/apache/gossip/secure/KeyTool.java
similarity index 100%
rename from src/main/java/org/apache/gossip/secure/KeyTool.java
rename to gossip-base/src/main/java/org/apache/gossip/secure/KeyTool.java
diff --git a/src/main/java/org/apache/gossip/udp/Trackable.java b/gossip-base/src/main/java/org/apache/gossip/udp/Trackable.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/Trackable.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/Trackable.java
diff --git a/src/main/java/org/apache/gossip/udp/UdpActiveGossipMessage.java b/gossip-base/src/main/java/org/apache/gossip/udp/UdpActiveGossipMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/UdpActiveGossipMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/UdpActiveGossipMessage.java
diff --git a/src/main/java/org/apache/gossip/udp/UdpActiveGossipOk.java b/gossip-base/src/main/java/org/apache/gossip/udp/UdpActiveGossipOk.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/UdpActiveGossipOk.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/UdpActiveGossipOk.java
diff --git a/src/main/java/org/apache/gossip/udp/UdpNotAMemberFault.java b/gossip-base/src/main/java/org/apache/gossip/udp/UdpNotAMemberFault.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/UdpNotAMemberFault.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/UdpNotAMemberFault.java
diff --git a/src/main/java/org/apache/gossip/udp/UdpPerNodeDataMessage.java b/gossip-base/src/main/java/org/apache/gossip/udp/UdpPerNodeDataMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/UdpPerNodeDataMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/UdpPerNodeDataMessage.java
diff --git a/src/main/java/org/apache/gossip/udp/UdpSharedDataMessage.java b/gossip-base/src/main/java/org/apache/gossip/udp/UdpSharedDataMessage.java
similarity index 100%
rename from src/main/java/org/apache/gossip/udp/UdpSharedDataMessage.java
rename to gossip-base/src/main/java/org/apache/gossip/udp/UdpSharedDataMessage.java
diff --git a/src/main/resources/log4j.properties b/gossip-base/src/main/resources/log4j.properties
similarity index 100%
rename from src/main/resources/log4j.properties
rename to gossip-base/src/main/resources/log4j.properties
diff --git a/src/test/java/org/apache/gossip/AbstractIntegrationBase.java b/gossip-base/src/test/java/org/apache/gossip/AbstractIntegrationBase.java
similarity index 100%
rename from src/test/java/org/apache/gossip/AbstractIntegrationBase.java
rename to gossip-base/src/test/java/org/apache/gossip/AbstractIntegrationBase.java
diff --git a/src/test/java/org/apache/gossip/DataTest.java b/gossip-base/src/test/java/org/apache/gossip/DataTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/DataTest.java
rename to gossip-base/src/test/java/org/apache/gossip/DataTest.java
diff --git a/src/test/java/org/apache/gossip/IdAndPropertyTest.java b/gossip-base/src/test/java/org/apache/gossip/IdAndPropertyTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/IdAndPropertyTest.java
rename to gossip-base/src/test/java/org/apache/gossip/IdAndPropertyTest.java
diff --git a/src/test/java/org/apache/gossip/MemberTest.java b/gossip-base/src/test/java/org/apache/gossip/MemberTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/MemberTest.java
rename to gossip-base/src/test/java/org/apache/gossip/MemberTest.java
diff --git a/src/test/java/org/apache/gossip/ShutdownDeadtimeTest.java b/gossip-base/src/test/java/org/apache/gossip/ShutdownDeadtimeTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/ShutdownDeadtimeTest.java
rename to gossip-base/src/test/java/org/apache/gossip/ShutdownDeadtimeTest.java
diff --git a/src/test/java/org/apache/gossip/SignedMessageTest.java b/gossip-base/src/test/java/org/apache/gossip/SignedMessageTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/SignedMessageTest.java
rename to gossip-base/src/test/java/org/apache/gossip/SignedMessageTest.java
diff --git a/src/test/java/org/apache/gossip/StartupSettingsTest.java b/gossip-base/src/test/java/org/apache/gossip/StartupSettingsTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/StartupSettingsTest.java
rename to gossip-base/src/test/java/org/apache/gossip/StartupSettingsTest.java
diff --git a/src/test/java/org/apache/gossip/TenNodeThreeSeedTest.java b/gossip-base/src/test/java/org/apache/gossip/TenNodeThreeSeedTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/TenNodeThreeSeedTest.java
rename to gossip-base/src/test/java/org/apache/gossip/TenNodeThreeSeedTest.java
diff --git a/src/test/java/org/apache/gossip/accrual/FailureDetectorTest.java b/gossip-base/src/test/java/org/apache/gossip/accrual/FailureDetectorTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/accrual/FailureDetectorTest.java
rename to gossip-base/src/test/java/org/apache/gossip/accrual/FailureDetectorTest.java
diff --git a/src/test/java/org/apache/gossip/crdt/GrowOnlyCounterTest.java b/gossip-base/src/test/java/org/apache/gossip/crdt/GrowOnlyCounterTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/crdt/GrowOnlyCounterTest.java
rename to gossip-base/src/test/java/org/apache/gossip/crdt/GrowOnlyCounterTest.java
diff --git a/src/test/java/org/apache/gossip/crdt/GrowOnlySetTest.java b/gossip-base/src/test/java/org/apache/gossip/crdt/GrowOnlySetTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/crdt/GrowOnlySetTest.java
rename to gossip-base/src/test/java/org/apache/gossip/crdt/GrowOnlySetTest.java
diff --git a/src/test/java/org/apache/gossip/crdt/OrSetTest.java b/gossip-base/src/test/java/org/apache/gossip/crdt/OrSetTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/crdt/OrSetTest.java
rename to gossip-base/src/test/java/org/apache/gossip/crdt/OrSetTest.java
diff --git a/src/test/java/org/apache/gossip/manager/DataReaperTest.java b/gossip-base/src/test/java/org/apache/gossip/manager/DataReaperTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/manager/DataReaperTest.java
rename to gossip-base/src/test/java/org/apache/gossip/manager/DataReaperTest.java
diff --git a/src/test/java/org/apache/gossip/manager/GossipManagerBuilderTest.java b/gossip-base/src/test/java/org/apache/gossip/manager/GossipManagerBuilderTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/manager/GossipManagerBuilderTest.java
rename to gossip-base/src/test/java/org/apache/gossip/manager/GossipManagerBuilderTest.java
diff --git a/src/test/java/org/apache/gossip/manager/RingPersistenceTest.java b/gossip-base/src/test/java/org/apache/gossip/manager/RingPersistenceTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/manager/RingPersistenceTest.java
rename to gossip-base/src/test/java/org/apache/gossip/manager/RingPersistenceTest.java
diff --git a/src/test/java/org/apache/gossip/manager/UserDataPersistenceTest.java b/gossip-base/src/test/java/org/apache/gossip/manager/UserDataPersistenceTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/manager/UserDataPersistenceTest.java
rename to gossip-base/src/test/java/org/apache/gossip/manager/UserDataPersistenceTest.java
diff --git a/src/test/java/org/apache/gossip/manager/handlers/MessageInvokerTest.java b/gossip-base/src/test/java/org/apache/gossip/manager/handlers/MessageInvokerTest.java
similarity index 100%
rename from src/test/java/org/apache/gossip/manager/handlers/MessageInvokerTest.java
rename to gossip-base/src/test/java/org/apache/gossip/manager/handlers/MessageInvokerTest.java
diff --git a/src/test/resources/log4j.properties b/gossip-base/src/test/resources/log4j.properties
similarity index 100%
rename from src/test/resources/log4j.properties
rename to gossip-base/src/test/resources/log4j.properties
diff --git a/pom.xml b/pom.xml
index 827f914..f9c7814 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,25 +19,11 @@
4.0.0
-
- org.apache
- apache
- RELEASE
-
-
- org.apache.gossip
- gossip
- gossip
- 0.1.3-incubating-SNAPSHOT
- jar
- A peer to peer cluster discovery service
- http://gossip.incubator.apache.org/
-
UTF-8
1.8
-
+
2.8.5
3.1.2
1.2
@@ -55,6 +41,26 @@
2.10
+
+ org.apache
+ apache
+ RELEASE
+
+
+ Gossip Parent
+ org.apache.gossip
+ gossip-parent
+ 0.1.3-incubating-SNAPSHOT
+
+ pom
+
+
+ gossip-base
+
+
+ A peer to peer cluster discovery service
+ http://gossip.incubator.apache.org/
+
The Apache Software License, Version 2.0
@@ -75,96 +81,23 @@
https://issues.apache.org/jira/browse/GOSSIP
-
-
- com.fasterxml.jackson.core
- jackson-core
- ${jackson.version}
-
-
- commons-math
- commons-math
- ${commons-math.version}
-
-
- com.fasterxml.jackson.core
- jackson-databind
- ${jackson.version}
-
-
- io.dropwizard.metrics
- metrics-core
- ${metrics.version}
-
- org.junit.jupiter
- junit-jupiter-api
- ${junit.jupiter.version}
- test
-
-
- org.junit.jupiter
- junit-jupiter-engine
- ${junit.jupiter.version}
- test
-
-
- org.junit.vintage
- junit-vintage-engine
- ${junit.vintage.version}
- test
-
-
- org.junit.platform
- junit-platform-runner
- ${junit.platform.version}
- test
-
-
- io.teknek
- tunit
- ${tunit.version}
- test
-
-
- log4j
- log4j
- ${log4j.version}
- jar
- compile
-
-
- javax.jms
- jms
-
-
- com.sun.jdmk
- jmxtools
-
-
- com.sun.jmx
- jmxri
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-release-plugin
- 2.5.1
-
- false
- true
- true
+
+
+ org.apache.maven.plugins
+ maven-release-plugin
+ 2.5.1
+
+ false
+ true
+ true
- distribution
- clean install
-
-
+ distribution
+ clean install
+
+
org.apache.maven.plugins
maven-jar-plugin
@@ -197,49 +130,49 @@
-
- maven-compiler-plugin
- 3.1
-
- ${java.version}
- ${java.version}
-
-
-
- maven-surefire-plugin
- 2.19.1
-
-
- ${project.build.directory}
-
-
-
-
- org.junit.platform
- junit-platform-surefire-provider
- ${junit.platform.version}
-
-
-
- org.apache.rat
- apache-rat-plugin
+ maven-compiler-plugin
+ 3.1
+
+ ${java.version}
+ ${java.version}
+
+
+
+ maven-surefire-plugin
+ 2.19.1
+
+
+ ${project.build.directory}
+
+
+
+
+ org.junit.platform
+ junit-platform-surefire-provider
+ ${junit.platform.version}
+
+
+
+
+ org.apache.rat
+ apache-rat-plugin
README.md
eclipse_template.xml
-
-
- verify
-
- check
-
-
-
-
-
+
+
+ verify
+
+ check
+
+
+
+
+