[Opensim-dev] Capabilities
Diva Canto
diva at metaverseink.com
Wed May 4 14:17:11 UTC 2011
The caps branch is ready to be merged to master. It would be great if a
couple of core devs would take a look before I merge it. Highlights:
- New section [ClientStack.LindenCaps] in OpenSimDefaults.ini that
allows the specification of where each capability is served from.
- New dll: OpenSim.Region.ClientStack.LindenCaps.dll. Contains all the
capability-related modules that were previously in CoreModules, except
one. The exception is CapabilitiesModule that is now in
CoreModules.Framework and that holds the generic dictionary of
per-client caps object and triggers the OnRegisterCaps event.
- New dll: OpenSim.Capabilities.Handlers.dll: contains some of the
handlers. I didn't extract them all because some capabilities might
never be served from anywhere but the simulator (?).
- The old Caps.cs (in OpenSim.Capabilities) has been slashed. It now
holds only a dictionary mapping capability names and to handlers. The
handlers themselves are in the other dlls.
From here on, the rule would be that any new capability of the Linden
viewer to be implemented in core would be, in principle, split into the
handler itself placed in OpenSim.Capabilities.Handlers.dll, and a module
that registers that capability with the simulator in
OpenSim.Region.ClientStack.LindenCaps.
On 5/1/2011 10:28 AM, Diva Canto wrote:
> FYI, I pushed the new caps branch. Nothing in there works yet, it just
> compiles. For the moment, it's a scratchpad, things are fairly
> incomplete, and I expect it to go through a few major changes. If
> interested, please take a look. Things worth noticing:
>
> - The additional [ClientStack.LindenCaps] in OpenSimDefaults.ini. This
> is how I envision making these services configurable. I took that big
> list from here:
> http://wiki.secondlife.com/wiki/Current_Sim_Capabilities (I understand
> OpenSim doesn't provide for all of those) The idea being that if that
> is set to localhost we do what we currently do, but if set to a URL we
> use that URL string as is, possibly appended with the authorization
> token when that mechanism works.
>
> - The new OpenSim.Region.ClientStack.Linden, replacing
> OpenSim.Region.ClientStack.LindenUDP, which now contains 2 parts: UDP
> and Caps
>
> - The new OpenSim.Capabilities.Handlers, which for the moment contains
> only the GetTexture handler. I'm using that one as the model for how
> to do this in general.
>
> Again, things are incomplete. But I want to share this right now, so
> that ppl have the chance to influence how this is going.
>
> On 4/30/2011 7:44 AM, Diva Canto wrote:
>> I'm going to do this work on a branch called caps. This is mostly
>> refactoring, not new development; it can go through a few iterations
>> until we're all happy with the result.
>>
>> On 4/29/2011 3:01 PM, Diva Canto wrote:
>>> On 4/29/2011 2:37 PM, Melanie wrote:
>>>> Hi,
>>>>
>>>> Caps as such are a a generic concept, they are not a Lindenism,
>>>> IMHO. Linden didn't invent them and I believe that the CAPS
>>>> mechanism as such should remain in the normal namespace.
>>>
>>> The idea is generic; our implementation is not; it's full of
>>> LL-specific things, like LLSD, and it is serving the Linden clients
>>> specifically. Other uses of capabilities will probably look quite
>>> different.
>>>
>>>> Also, modules already use CAPS, if CAPS were in the client stack,
>>>> they would be much harder to access,, since the client stack is
>>>> somewhat isolated from modules.
>>> We can have modules in any dll. The proposal here is to move all
>>> CAPs-related modules out of the core dlls, and have them in a Linden
>>> dll, because they are designed to serve the Linden clients.
>>>
>>>> I believe that it should be possible to re-route caps to other
>>>> destinations, ROBUST or external servers, but not by moving all
>>>> handlers into the Servers namespace, that is not what it was meant
>>>> for. That would bloat and pollute it. This warrants more discussion.
>>>
>>> I agree. We can place them in some other Server.Handlers-like dll.
>>> How about OpenSim.Server.Capabilities.dll?
>>>
>>> Crista
>>>
>>> _______________________________________________
>>> Opensim-dev mailing list
>>> Opensim-dev at lists.berlios.de
>>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>>
>>>
>>
>> _______________________________________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>
>>
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
>
More information about the Opensim-dev
mailing list