[Opensim-dev] Scope and Purpose of IApplicationPlugins and IRegionModules
Ryan McDougall
sempuki1 at gmail.com
Thu Jul 3 07:43:50 UTC 2008
In my poking about the loading code to get an idea of the scale of the
problem. I asked before about I*Plugin v. I(Region)Module, but I don't
think there was much of a clear answer...
The reason I am asking again is that I noticed:
1. That a Scene takes a (Region)ModuleLoader as an argument to its
constructor. It doesn't appear to use this reference at all.
Is there a Scene that needs to load its own RegionModules? Or is this an
example of bit-rotted code or inappropriate abstraction/coupling?
2. That LoadRegionsPlugin (an IApplicationPlugin) uses its reference to
(Region)ModuleLoader (through OpenSimBase) to load RegionModules.
Without knowing the semantic difference between a Plugin and Module, the
LoadRegionsPlugin looks a bit awkward. It appears as if its only purpose
is to choose between RegionLoaderFileSystem and RegionLoaderWebServer,
then load them within a plugin...
Perhaps it might be more appropriate to make that selection in
OpenSimBase in order to keep all loading in one place?
There are many ways I could do that, but it would take understanding the
purpose of the current and future design in order to make my plugin
loader a true solution that accommodates all use-cases.
Can we replace IRegionModules with IRegionPlugins and have PluginLoader
load them all?
Cheers,
More information about the Opensim-dev
mailing list