[Opensim-dev] Scope and Purpose of IApplicationPlugins and IRegionModules

liu xiaolu lulurun at gmail.com
Thu Jul 3 09:15:06 UTC 2008


as I see,
IApplicationPlugin is for extending the OpenSim.exe.
  it is initialized after you execute the OpenSim.exe.
IRegionModule is for extending the RegionServer.
  it is initialized at the beginning of loading a region(sim).

>Can we replace IRegionModules with IRegionPlugins and have PluginLoader
>load them all?

They are for different purposes, and loaded at different timing,
Functionally, they can not be* converged.*
But they are written in similar code style, if you want to give them more
meaningful
names, and apply polymorphism to making the code easier to be understand,
it is a good idea.

lulurun,
regards

2008/7/3 Ryan McDougall <sempuki1 at gmail.com>:

> 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,
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>



-- 
Lulurun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080703/e00f314b/attachment-0001.html>


More information about the Opensim-dev mailing list