Hi all, As you know, a new concept of Application will be introduced in beta 19. This will reinforce the separation of concern between these two roles: - Application developer: writes domain specific and portable applications (Java knowledge) - Application deployer : configures containers and deploys applications into them (not necessarily Java knowledge : need to support XML configuration and admin UI in the future).
For this purpose, new classes are introduced such as VirtualHost and Application, in the org.restlet packages. An application describes itself, its properties (name, author, root Restlet, etc.) but doesn't know in advance its deployment context such as the IP address/port, the host name, root URI/path, etc. All these aspects are now managed by the container via its connectors, its virtual hosts and deployed applications. This means that classes such as HostRouter, LogFilter and StatusFilter will no longer need to be directly used from the com.noelios.restlet package. BTW, they were moved into the hidden com.noelios.restlet.impl package, sometimes renamed/refactored too. As a result of those changes, the old way of building a Restlet container configuration no longer applies, and that the fluent builder package is seriously broken. I have the feeling that even though the concept of fluent API is really cool and powerful, it won't be as useful as before. Once the container XML configuration and the WAR packaging will be fully supported (most likely in beta 20), it will probably not be needed anymore. For now, I prefer to remove the com.noelios.restlet.builder package from beta 19 instead of delaying the release even more in order to fix/refactor it. Let's take time to think about whether we actually want to restore it in beta 20 or not. If someone (I'm thinking about Lars and Yuri who co-proposed this approach) is still attached to it after discussion, we could convert it into an optional extension. I'm truly sorry for all those harsh API changes coming in beta 19. I fully understand the pain for people with existing code base but I believe that this final round of refactorings will give us a simpler and more powerful Restlet 1.0 API, and will be very beneficial for the project on the middle term. After beta 19, we'll be much more cautious about API breaking changes, following the "@Deprecated" annotation usage proposition from Pyiush. Any comment? Best regards, Jerome Louvel -- Noelios Consulting http://www.noelios.com phone: (+33) 147 573 053 cellular: (+33) 685 142 112

