Major service based rearchitecture of the framework
- Migrate all Plugins to Services
- Migrate framework and user bundles to services
There is a three layer approach to bundles/framework
BundleState represents the internal state of a bundle. A client never holds a direct reference to a BundleState.
Various BundleServices represent the lifecycle states of the bundle. BundleServices operate on BundleStates.
The client is given a BundleProxy which interacts with the BundleService.
The integration with AS7 is designed to be based on services. AS services may create dependencies on well
defined Framework state services. Although UserBundles are currently also modelled as services, only the
INSTALLED state is available as a service and may be used as a dependency. Later, we can create additional
services that represent the RESOLVED, ACTIVE state of a bundle.
Currently there may still be failures in the umbrella projects and some TCK regression. Hopefully I can address these over the next couple of days.
This is a big step towards more parallel code paths with well defined dependency points and much better AS7 integration.