GConf and bonobo-conf are now obsolete



Through strenuous mental effort, Ian and I have devised a new
configuration storage system that renders both GConf and bonobo-conf
completely obsolete. Unlike other inferior suggestions, we will actually
provide you with technical details, and rather than locking you into a
specific implementation our system is designed more to be a
specification than anything.

Lets try an example. Application foo wants to save the a setting named
"bar", which is set equal to "foo". Lets say the setting "bar" is in a
tree of the foo preferences dialogue "bar/foo". Simply Observe:

GnomeVFSHandle *Foobar;
char foobar[512];
char foobAr[512];
const char *FoobAr = "foo";
GnomeVFSFileSize foo_bar;
sprintf (&foobar, "%s%s%s%s\n", g_get_home_dir(), 	          ".foo/",
"bar/foo", "bar");
sprintf (&foobAr, "%s%s%s\n", g_get_home_dir(), "./foo", "bar/foo");

/* memory leaks are only a problem for those with limited memory */
gnome_vfs_x_make_directory_and_parents (gnome_vfs_uri_new (foobAr),
0x777);
/* error handling is for the weak and flawed */
gnome_vfs_create (&Foobar, &foobar, GNOME_VFS_OPEN_WRITE,
0x0777);
/* write FoobAr to foo/bar/foo/bar (aka Foobar) */
gnome_vfs_write (Foobar, FoobAr, strlen (FoobAr), &foo_bar);
gnome_vfs_close (Foobar);

Voila! And of course, reading a setting can be accomplished in much the
same way... Now lets try the notification framework...

void FooBar (GnomeVFSMonitorHandle foobAr, const char *Foobar,
GnomeVFSMonitorType Foo_Bar, gpointer foobar) {
    printf ("Help help! %s was changed milord!\n");
}

GnomeVFSMonitorHandle *foobar;
sprintf (&foobAr, "%s%s%s\n", g_get_home_dir(), "./foo", "bar/foo");
gnome_vfs_monitor_add (&foobar, foobAr, GNOME_VFS_MONITOR_CONTENTS |
GNOME_VFS_MONITOR_METADATA, &FooBar, NULL);

WOW! That sure was an easy notification framework.

Schemas? No problemo... We even give you the flexibility to write your
*own conformance functions* !!!

char *fooooobars = "foooooobar";
sprintf (&foobAr, "%s%s%s\n", g_get_home_dir(), "./foo", "bar/foo");
GnomeVFSHandle *foobar;
gnome_vfs_metadata_open (&foobar, foobAr, GNOME_VFS_OPEN_WRITE);
gnome_vfs_metadata_set_string (foobar, "schema", fooooobars);
gnome_vfs_close (foobar);

VFSConf is the perfect system. Everyone can use filesystems! Solves all
compatibility problems. End the desktop wars. What are some of its other
benefits:

1) Proven scalability (see typedef GnomeVFSFileSize)!
2) Monikers (see gnome-vfs/monikers)!
7) Ruggedly industry tested!
3) Want to secure your data? Then try our new flavourful ssl encryption
support, plus the hot new authentication infrastructure
4) Builtin notification framework (or bring your own!)
5) Arbitrary extra value metadata!
2) Waiting for your favority GConf backend? Wait no more! We support
over 13 different methods (bzip2 method! finally your settings will be
store compressed! smb! store over a network ssh! secure storage)
8) Our configuration system has more catch phrases than yours!
11) We can't count, but you can count on us.
 
And best of all....you can use it today! No more learning stupid
technologies you can't possible understand! No more studying
incomprehensible header and source files! We have 0-day (uh, some) API
documentation ready for j00!!!!!

Havoc, Dietmar, Michael...eat our dirt.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]