The migration to Bndtools is coming along nicely. Both the server and target are running, and we have all unit and integration tests working. One of the next steps is to provide a better overview in Eclipse by merging some related bundles into one project. The rationale is that at development time, we want to provide a "development view" of the project that helps developers when they're working on the codebase. In my opinion, and according to the "4+1 view" [1], this does not necessarly mean that this "development view" is the same as the "deployment view". In other words, there is no need to maintain a 1 on 1 mapping between a project in the development view and a bundle in the deployment view.
Therefore we (I worked on this list with Jan Willem) propose to merge some of the projects to go from about 90 to about 30 projects (which gives a better overview in Eclipse). You should read this list as follows. The first line is the project name, any next (indented) line is a project that is merged into this new one. So for example, looking at the first one, we propose to make an "org.apache.ace.authentication" project that contains 5 existing projects. Sometimes in the process, we need to rename or move some packages, and things like that we indicate with an "->" arrow plus a new name or destination. org.apache.ace.authentication org.apache.ace.authentication -> .impl org.apache.ace.authentication.api org.apache.ace.authentication.processor.basicauth org.apache.ace.authentication.processor.clientcert org.apache.ace.authentication.processor.password org.apache.ace.authentication.itest org.apache.ace.configurator org.apache.ace.configurator -> .impl org.apache.ace.configurator.serveruseradmin org.apache.ace.configurator.useradmin.task org.apache.ace.configurator.useradmin.itest org.apache.ace.connectionfactory org.apache.ace.consolelogger org.apache.ace.deployment.provider org.apache.ace.deployment.provider.api org.apache.ace.deployment.provider.base org.apache.ace.deployment.provider.filebased -> @sandbox org.apache.ace.deployment.provider.repositorybased org.apache.ace.deployment.servlet -> provider.servlet org.apache.ace.deployment.streamgenerator -> provider.streamgenerator org.apache.ace.deployment.verifier -> provider.verifier org.apache.ace.deployment.verifier.ui -> provider.verifier.ui org.apache.ace.deployment.itest org.apache.ace.http.redirector org.apache.ace.httplistener -> @deprecated, replace it by the Felix Whiteboard org.apache.ace.http.itest -> @deprecated as well, see above org.apache.ace.integrationtests -> removed org.apache.ace.itest -> org.apache.ace.test, merge with util-test project org.apache.ace.location.upnp -> @sandbox, nice example but not necessarily something we want to ship org.apache.ace.log.server org.apache.ace.log.servlet -> log.server.servlet org.apache.ace.log.task -> log.server.task org.apache.ace.server.log.store -> log.server.store org.apache.ace.server.log.ui -> log.server.ui org.apache.ace.log.itest -> log.server.itest org.apache.ace.nodelauncher org.apache.ace.nodelauncher.amazon org.apache.ace.nodelauncher.api org.apache.ace.nodelauncher.ui org.apache.ace.processlauncher -> add main() method to make it standalone org.apache.ace.range.api org.apache.ace.repository org.apache.ace.repository.api org.apache.ace.repository.ext org.apache.ace.repository.impl org.apache.ace.repository.servlet org.apache.ace.repository.task org.apache.ace.repository.itest org.apache.ace.resourceprocessor.useradmin -> split off to a resource processor (can be moved to sandbox and one for the configurator) org.apache.ace.server.action -> remove!! org.apache.ace.server.action.popupmessage -> remove!! org.apache.ace.util, split off test to org.apache.(i)test and embed other classes in other bundles. org.apache.ace.webui.vaadin org.apache.ace.webui.vaadin -> .impl org.apache.ace.target.mgmt.ui -> webui.vaadin.target.ui ofzo org.apache.ace.tageditor -> webui.vaadin.tageditor org.apache.ace.obr org.apache.ace.obr.metadata org.apache.ace.obr.servlet org.apache.ace.obr.storage org.apache.ace.client.automation org.apache.ace.client.repository org.apache.ace.client.repository.api org.apache.ace.client.repository.helper.base org.apache.ace.client.repository.helper.bundle org.apache.ace.client.repository.helper.configuration org.apache.ace.client.repository.helper.user org.apache.ace.client.repository.impl org.apache.ace.client.repository.itest org.apache.ace.client.rest org.apache.ace.managementagent org.apache.ace.launcher org.apache.ace.discovery org.apache.ace.discovery.api org.apache.ace.discovery.property org.apache.ace.discovery.upnp -> @sandbox org.apache.ace.identification org.apache.ace.identification.api org.apache.ace.identification.ifconfig -> @sandbox org.apache.ace.identification.property org.apache.ace.log org.apache.ace.log.target org.apache.ace.gateway.log -> rename: log.target, split log and task org.apache.ace.gateway.log.store -> rename: log.target.store org.apache.ace.log.listener -> log.target.listener org.apache.ace.scheduler org.apache.ace.scheduler -> .impl org.apache.ace.scheduler.api org.apache.ace.deployment.target org.apache.ace.deployment.api -> target.api org.apache.ace.deployment.deploymentadmin -> target.deploymentadmin org.apache.ace.deployment.task -> target.task org.apache.ace.deployment.task.base -> target.task.base Greetings, Marcel [1] http://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf