Apache Sling Webloader Sample Service

---------------------------------------
Sling Webloader sample - OSGi service
---------------------------------------
This is the service component of the Webloader sample, this bundle provides
a service according to the org.apache.sling.samples.webloader.Webloader
interface.

The sibling "webloader.ui" bundle provides an example user interface.

Running the demo 
================

For details on running this demo, see the Webloader UI component README.txt 
