[Opensim-dev] Thoughts on adding a generic key-value storage system to OpenSim?

Melanie melanie at t-data.com
Mon Sep 21 20:23:18 UTC 2009


That would be as available as any other data interface.

Dahlia Trimble wrote:
> Could this be structured in a way that makes it easily available to all
> modules?
> 
> On Mon, Sep 21, 2009 at 1:06 PM, Melanie <melanie at t-data.com> wrote:
> 
>> This would go to
>>
>> OpenSim.Data.XXX.XXXGenericStore.cs
>>
>> It would implement an IGenericData inteface in namespace OpenSim.Data
>>
>> Melanie
>>
>> Hurliman, John wrote:
>> > A lot of the work going into OpenSim recently has been modularizing the
>> codebase and making it easy for third party developers to write plugins. One
>> feature that I think would really complete the picture would be a (simple)
>> generic data storage interface that leveraged the existing OpenSim storage
>> framework. Most plugins I've seen (and wrote) currently tack on their own
>> database tables, use a simple text file with a custom format, or use some
>> other means of data storage that does not match up with the rest of OpenSim.
>> Adding a new database table that had three columns: [context, key, value]
>> would allow plugins to store key/value mappings (string to string) without
>> worrying about data collisions between plugins or having to implement a
>> custom data store every time.
>> >
>> > // returns true if the key was found and data was updated, otherwise
>> false if a new key row was added
>> > bool AddOrUpdateKeyValue(string context, string key, string value);
>> > // returns true if the key was found and deleted
>> > bool DeleteKeyValue(string context, string key);
>> > // returns the string value if the key was found, otherwise null
>> > string GetValue(string context, string key);
>> >
>> > Although I've been writing extensions for the OpenSim codebase for quite
>> a while, I'm still fairly new to the guts of the system. Does this seem like
>> the correct solution? If so, where would this interface go? I'm happy to
>> write the code to implement this, I just want feedback from the dev
>> community first to see if I'm on track.
>> >
>> > John
>> > _______________________________________________
>> > 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