Originally, AeroGear Controller was an MVC only implementation, where requests could be forwarded to different types of views. Later we added support for RESTful endpoints which was very basic to start with, but more and more feature requests have come which is the reason for creating this email.

We did not set out to implement the RESTful support our selves, instead the goal was to use RestEasy but as we required to be able to programmatically add endpoints which was not an option at the time (but support for this does now exist in RestEasy).

AeroGear controller's REST support started out very simple but as time passed more request for things that are taken for granted in a JAX-RS implementation were being asked for. We were moving toward something equivalent to a JAX-RS implementation with regards to what we supported. Adding more of these features added to the complexity of the Controller as we needed to figure out good ways to provide the features requested, and this also brings up the question if we should be doing this. The controller is not specific to mobil, as any backend can be used with the client SDKs. Also, there are plenty of options to implement RESTful backends, in Java using RestEasy for example, or in a different language. 

And after some discussions it has been decided that we should focus are efforts in other places when it comes to our server side offerings, for example the Unified Push Server and SimplePush Server etc. 

So how do we make it visible that we have deprecated AeroGear-Controller? 

A clear notice in the README.md is a good start. Should we mark every class as deprecated as well?

These are just suggestions and if you have other ideas please let us know. 

/Dan