Merge branch 'stable-2.15'

* stable-2.15:
  Extract duplicated code in servlets to abstract class
  Rename DispatchEvent to ForwardedEventHandler
  Rename EvictCache to ForwardedCacheEvictionHandler
  Refactor EvictCache.evict method to accept only one argument
  Inline private method in EvictCache
  Add mock suffix in Index*RestApiServletTest
  Remove Joda dependency
  Update bazlets to latest stable-2.15
  Update bazlets and use released 2.14.7 API
  Update bazlets to get python 3 compatibility fix in
  Fix eviction of change when not found on ReviewDb
  Use Enum of change indexes instead of literals
  Extract event dispatching out of REST forwarder
  Add mock suffix in EventRestApiServletTest
  Fix warning about ignoring return value of CountdownLatch.await
  Extract cache eviction out of REST forwarder
  Add mock suffix in CacheRestApiServletTest
  AbstractIndexRestApiServlet: Don't synchronize on AtomicIteger
  Upgrade Mockito to 2.15.0
  ConfigurationTest: Fix Spotbugs warning about ignoring return value
  Handle the forwarded indexing when a change is deleted
  Format with google-java-format
  Remove unconditional call to
  Replace anonymous classes by lambdas
  Add missing final modifiers
  Remove unneeded throws clauses
  Remove usage of Files.exists and Files.isRegularFile
  Use camelcase for variable name
  Simplify variable initialization
  Use single quotes in indexOf
  Fix flaky IT tests
  doc: build in tree documentation for high-availability plugin
  Reduce visibility of CachePatternMatcher
  Use isEmpty method instead of isEqualTo("")
  Simplify ConfigurationTest by using a real Config instead of a mock
  Convert pluginName variable to a constant
  Rename global variables in ConfigurationTest
  No need for ssh in indexing IT tests
  Reduce visibility of MyUrlProvider
  Update bazlets to latest revision on stable-2.15 and use API 2.15-rc3
  Use deep stubs in InetAddressFinderTest
  Reduce visibility of InetAddressFinder
  Fix default value for the sharedDir
  IndexEventHandlerTest: Fix 'Unlikely argument type' Eclipse warnings
  ConfigurationTest#testGetDefaultSharedDirectory: Don't override mocks
  ConfigurationTest: Add missing import of ProvisionException
  {Account,Change,Group}IndexForwardingIT: Factor common code out
  Add IT tests for index forwarding
  Fix propagation of Group indexing events
  Improve readability with pre-formatted keys
  Fix default value for the sharedDir
  Fix failing configuration tests
  Extract JGroups configuration into jgroups section
  Allow to configure own URL instead of relying on httpd.listenUrl
  Set config example as pre-formatted code
  Build with API version 2.13.10
  Update bazlets to latest stable-2.15 and build with 2.15-SNAPSHOT API
  SLF4JLogFactory: Suppress raw type warning
  Format BUILD file with buildifier
  JGroupsPeerInfoProvider: Format with google-java-format
  Update to latest bazlets on stable-2.14
  Update bazlets to latest revision on stable-2.15
  [bazel] Allow passing options to script generating Eclipse project
  Add an adapter to force JGroups to use SLF4J for logging/tracing
  Improve documentation
  Add configuration tests for jgroups.protocolStack
  Add possibility to specify JGroups protocol stack
  Build against 2.14.7-SNAPSHOT
  Fix typos in HealthServletTest
  Add missing @Test annotations
  Prevent potential NPEs when creation of JGroups channel fails
  Persist the health status in a file

Change-Id: I02dbf9dc51acaed392b3ee361cd9afd1b9c7da4d