codahale/dropwizard — pull request #372 by fleaflicker (2013-07-24 19:57:59+00:00)
Title: Refactor Jetty/HTTP server out of dw-core and into new dw-server

(In reference to comments on #349.)

**Motivation**
Using Dropwizard right now requires the use of Jetty. Not all backend services are built on Jetty/HTTP (e.g., Netty). These commits move all Jetty/HTTP specific functionality into a new project, `dropwizard-server`. Project `dropwizard-core` is refactored to operate on more abstract [Guava Services](https://code.google.com/p/guava-libraries/wiki/ServiceExplained).

This change will make it possible to configure and launch any application using Dropwizard and its conventions but without including the Jetty runtime (small Jetty utility libraries are still used).

**Changes**
All server-related functionality moved out of dw-core and into dw-server. Rather than expecting Jetty's `Server`, `ServerCommand` is now just a specific instance of a new `ServiceCommand` that operates on `Service`. `Service#addListener` is used to carry out the lifecycle operations that had previously been delegated to Jetty.

**Notice**
I don't mean to dump a lot of changes on you at once, I just wanted to have something concrete to point to for discussion.