Create directories for docjar, srcjar and jar targets

Change-Id: I1c5523e0014c781bee41180f42b66da715d18bde
Reviewed-on: http://review.couchbase.org/25329
Tested-by: Deepti Dawar <deepti.dawar@globallogic.com>
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 191660989a151e419dad8bfaaf94915771ffb789)
Fix typo in spymemcached-test ivy config for junit.

Change-Id: Iccbc0367a89a09e0401d57a9fda6df115a928e27
Reviewed-on: http://review.couchbase.org/25657
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Trond Norbye <trond.norbye@gmail.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com> (cherry-picking from commit e86779d82ee0ad0c2ee3f68c04debfdda0407105)
Document correct logger class name system property.

Change-Id: Iad90149f1bbdae113b681c32027ac261ffe6298c
Reviewed-on: http://review.couchbase.org/24509
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Tested-by: Matt Ingenthron <matt@couchbase.com> (cherry-picking from commit 156faec1e10c459693ea76ae86937b7b0aac8af5)
Force 1.6 Java Compat even with 1.7 and up.

Change-Id: I968446387a0fb9b9edf69ddce9e79da21f5fa153
Reviewed-on: http://review.couchbase.org/26150
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com> (cherry-picking from commit 8ed6519ed10bd62ec6447802f1bed6a13d4357a0)
Renaming javadocs to javadoc for standard compl.

This changeset renames the resulting mvn jar files for javadocs
from javadocs to javadoc to conform with IDE and repository
standards.

Change-Id: Ib17f52bcff3b903236be839d6cae3e34bba685f9
Reviewed-on: http://review.couchbase.org/24653
Reviewed-by: Tugdual Grall <tugdual@gmail.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 1af31ce88b787b50535af756e3eb0a05d5c801d9)
Wakeup the Selector on node add.

This can lead to an issue when no traffic is going through the
system that a newly added node does not get properly included
in the cluster landscape on the client side.

This has no effect if there is already going traffic through
the system.

Change-Id: Iebcf70bb7b3c093985b6fa4f6056a4153937b8cd
Reviewed-on: http://review.couchbase.org/25722
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com>
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 7392f53946f8b8f69b2f3157bb520aac8953af53)
SPY-115: Rename javadocs to javadoc for IDE compat.

Change-Id: I14c5daff7ad5f386e033283929d50daa46a3babb
Reviewed-on: http://review.couchbase.org/25343
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit e78bc662af2644d9fab3d5dc741572ddf003cd3a)
SPY-115: Rename javadocs to javadoc for IDE compat.

Change-Id: I14c5daff7ad5f386e033283929d50daa46a3babb
Reviewed-on: http://review.couchbase.org/25343
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit e78bc662af2644d9fab3d5dc741572ddf003cd3a)
SPY-122: Change groupID from spy to net.spy

This changeset ensures that compatibility with maven central
is achieved and can be published there too.

Change-Id: I030f0741a8ccd0bf6e96b3f323b366c152274807
Reviewed-on: http://review.couchbase.org/26181
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Matt Ingenthron <matt@couchbase.com> (cherry-picking from commit 036081f046261c2f75eee6414bfacc915f450dda)
SPY-123: Fix Race Condition that kills IO Thread

This changeset makes sure that a potential race condition when
adding/removing nodes the same time does not kill the IO thread.
The Exception is caught and the code block is tried again.

Also, as a safety net, the IO thread at the topmost level catches
this error and proceeds, since this type of exception is considered
to be transient and does not persist.

Change-Id: I04bfea7f38327c96019f2fcccddcaccfe5b791d3
Reviewed-on: http://review.couchbase.org/26464
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com>
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 87c002a06d3fb084701bf79531906dc5dcb3df5d)
SPY-121: Make NOOP send optional on connect.

This changeset makes the NOOP sending before AUTH
on connect optional, because this may have issues
with other systems and therefore lead to non-working
systems.

The check can be activated by setting the
net.spy.verifyAliveOnConnect system property to
true.

Change-Id: If26439c024c3c50f02e992aaa80ba39fa683aed0
Reviewed-on: http://review.couchbase.org/26151
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit b90bc111c59e7c37038ef8a36dc12cb6ca42db15)
SPY-120: Adding support for SLF4J logging.

This changeset adds support for SLF4J logging. The Logger API
has been modified to contain only very small backwards breaking
changes, it only adds TRACE support to the interface. People
not implementing the Interface directly but just implementing
the AbstractLogger only need to add the new isTraceEnabled()
method and inside the log() method also check for the TRACE
level.

As SLF4J implies, this changeset does not ship with an
actual SLF4J implementation but lets you choose it at runtime
with just adding the impl to the classpath.

Change-Id: I178ef8c8dd7417a33d0e3914a644632b98c4a265
Reviewed-on: http://review.couchbase.org/26149
Reviewed-by: Matt Ingenthron <matt@couchbase.com>
Reviewed-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com> (cherry-picking from commit 730fe4f285887ed074c78da84ef58a85bf8abd4d)
JCBC-196: Allow Append/Prepend without CAS

To align the append and prepend commands with the others, this
changeset adds method signatures to be used without the CAS
value. This is done by passing 0 as the CAS to the others down
the stack making it essentially ignore it.

Change-Id: I5e5e4f9b0a0853f768a3446107107e8b99b4e847
Reviewed-on: http://review.couchbase.org/26712
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com> (cherry-picking from commit 6e2416bfa77355803d20f5a000abb385cb935396)
Extend build.xml to support maven central publishing.

Change-Id: I40343dbbf78b370b09c008a95ab77cd9cf8bfeab
Reviewed-on: http://review.couchbase.org/26714
Tested-by: Michael Nitschinger <michael.nitschinger@couchbase.com>
Reviewed-by: Deepti Dawar <deepti.dawar@globallogic.com> (cherry-picking from commit c812f4b6d8ef5804b4a0324db7a35455be3c7f06)