Apart from anything else, an "easy to back up" file would still be encrypted. 
So are you proposing to backup the master.keys file as well? Or write it in 
plaintext? (Criminally bad idea!) Or what? Export plaintext on demand is 
probably the best option, but would require shutting down the plugin?

[19:40:21] <Artefact2> hello there
[19:40:42] * Artefact2 wants to make PluginStore Serializable or any other 
method to easily export/import them as text
[19:45:00] <Artefact2> if anyone has a great idea to do that, don't hesitate :)
[20:55:30] <Artefact2> eek, i have some trouble serializing stuff
[21:12:44] <Artefact2> it should work http://gist.github.com/181095 but it 
shows a blank page :|
[21:20:41] <infinity0> Artefact2: what are you trying to serialise?
[21:20:51] <Artefact2> infinity0: the PluginStore
[21:21:11] <infinity0> what's the PluginStore
[21:21:19] <Artefact2> infinity0: the Store used by Plugins
[21:21:23] <infinity0> oh, is this the API to let plugins store stuff in 
node.db?
[21:21:26] <infinity0> db4o*
[21:21:27] <Artefact2> infinity0: right
[21:21:35] <-- zambam has left this server (Ping timeout: 180 seconds).
[21:21:49] <infinity0> uh, db4o is an embedded database
[21:21:56] <infinity0> can't you just store objects directly?
[21:22:07] <infinity0> i thought all you had to do was put them inside an 
ObjectContainer, or something
[21:22:46] <Artefact2> infinity0: serializing is different than storing
[21:23:10] <infinity0> what's serialising for?
[21:23:22] <infinity0> oh, i see
[21:24:15] <VQuickSilver> digger3: sshd and wifi running :)
[21:24:40] --> saces has joined this channel 
(n=sa...@freenet/frost/developer/saces).
[21:24:40] *** ChanServ gives channel operator privileges to saces.
[21:24:50] <infinity0> Artefact2: i'd just leave it, it's hard to make a 
serialisation system for general data
[21:24:51] <Artefact2> infinity0: flog creators might want to save their 
precious contents somewhere else than in node.db4o
[21:25:11] <infinity0> yeah, i have a really complicated serialising system for 
Library
[21:25:21] <infinity0> i think it's probably better left up to the plugin
[21:25:25] <Artefact2> infinity0: when a bug show up and you're too lazy to fix 
it you just say "delete node.db4o"
[21:25:38] <infinity0> hmm, true
[21:26:08] <infinity0> java serialisation isn't very versatile, though
[21:26:26] <saces> SimpleFieldSet?
[21:26:43] <Artefact2> saces: types ?
[21:27:43] <Artefact2> maybe using a separate .db4o file for each plugin is a 
great thing to do
[21:27:49] <saces> Object.type = wormhole
[21:27:51] <Artefact2> toad_: what do you think?
[21:28:00] <infinity0> that would be nice
[21:28:15] <Artefact2> unfortunately my db4o knowledge is /very/ limited
[21:28:27] <saces> Object.fields.1.name and so on.
[21:28:37] <Artefact2> saces: it WONT work
[21:29:02] <Artefact2> saces: what if I store a string in my plugin store named 
"\n Object.fields.7.pouet:screwthingsup!" ?
[21:29:18] <Artefact2> saces: how do differenciate Strings from int/anything 
else?
[21:29:42] <saces> field.1.type = int
[21:29:58] <saces> field.1.value = blah
[21:30:09] <saces> field.1.name = blub
[21:30:27] --> QshelTier has joined this channel 
(n=bo...@freenet/developer/Bombe).
[21:30:27] *** ChanServ gives channel operator privileges to QshelTier.
[21:30:39] <Artefact2> saces: and if I store a string that contains multi lines 
or that contains "\n field.2.value = something" ? again, any string-based 
architecture to store string among other data is not very feasible
[21:31:21] <Artefact2> the problem using separate db files for plugins is 
crypto, it sucks
[21:31:26] <Artefact2> hmmm
[21:31:43] <infinity0> why does separate db files make crypto suck?
[21:32:03] <Artefact2> infinity0: i meant "handling crypto for plugins" suck
[21:32:15] <saces> copy/reuse the create from core
[21:32:36] <Artefact2> using the same db file was great because that file was 
ciphered, deleted accordingly to the node physical level,any panic button, ...
[21:32:51] <saces> and put a GetDBHandle() into pluginrespinator
[21:33:25] <infinity0> it's probably enough to have two databases, node.db4o 
and client.db4o
[21:33:49] <infinity0> and all the plugin data would go in the second
[21:33:53] <infinity0> instead of a new file for each
[21:34:07] <Artefact2> infinity0: i disagree
[21:34:20] <Artefact2> infinity0: the user wants something easily backupable
[21:34:30] <Artefact2> eg. copy a file on a USB disk, ...
[21:34:39] <infinity0> and multiple files for each plugin is easier than 2 
files total?
[21:34:49] <Artefact2> infinity0: not easier, but much more convinient
[21:35:17] <infinity0> maybe if you had a separate folder for all db4o files
[21:35:21] <Artefact2> because the user easily spots where its contents are 
stored and can easily make sure they are safe
[21:38:31] <-- saces_ has left this server (Read error: 110 (Connection timed 
out)).
[21:38:58] --> saces_ has joined this channel ([email protected]).
[21:40:32] <infinity0> Artefact2: uh... 2 files is easier to manage than 1+n 
files, for n>1, and any definition of "easier" consistent with general english 
usage...
[21:42:45] <Artefact2> infinity0: okay you didn't get my point, never mind
[21:46:12] <-- Bombe has left this server (Read error: 110 (Connection timed 
out)).
[21:47:31] <-- saces has left this server ("Massa hat gesprochen...").
[21:47:50] <-- saces_ has left this server ("Massa hat gesprochen...").
[21:48:06] --> saces has joined this channel 
(n=sa...@freenet/frost/developer/saces).
[21:48:06] *** ChanServ gives channel operator privileges to saces.
[21:49:57] <Artefact2> okay,i found a dirty hack
[21:50:31] <Artefact2> create a new ObjectContainer in a temp file, write the 
PluginStore in that tempfile, save everything, delete when needed.
[21:55:46] <-- Alaros has left this channel.
[22:07:10] <Artefact2> cya

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Devl mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to