Called when this module is stopped so the Runtime can perform the module-specific activities necessary to stop the module. In general, this method should undo the work that the {@code ModuleActivator.start} methodstarted. There should be no active threads that were started by this module when this module returns. A stopped module must not call any Runtime objects.
This method must complete and return to its caller in a timely manner.
@param context The execution context of the module being stopped.
@throws Exception If this method throws an exception, the module is stillmarked as stopped, and the Runtime will remove the module's listeners, unregister all services registered by the module, and release all services used by the module.