Winegrower core is the implementation of the light and embeddable OSGi model.
It intends to respect OSGi programming model except the classloading one.
It means you can use
scr etc…without isolation which boots the packaging
and deployment of your application.
The entry point is the
Ripener class which is the "container" API.
Ripener.Impl class is one implementation you can use out of the box.
Ripener takes a
Ripener.Configuration configuration as parameter.
which valid bundles must be ignored. Useful when some bundles are conflicting like JAX-RS whiteboard of Apache Aries and the native CXF bundles.
a filter on OSGi bundles. It will behave as
ignoredBundlesbut is intended to host bundles which don’t need to be bundles (like
commons-*) and keep your configuration readable.
the list of implementation of
ManifestContributorto create a manifest on the fly for not OSGi bundle jars.
a sorted list of bundles which will be started before others.
exclusions for non OSGi jars scanning.
inclusions for non OSGi jars scanning.
where to create temporary files when a bundle needs it.
The configuration is taken from the agent by default but you can also embed some default values for your convenience.
This is done providing a
winegrower.properties in the agent classloader. It takes the same configuration as the agent.
you can also pass