Customer vs Company
Alaric B. Snell
alaric at alaric-snell.com
Mon Apr 7 16:32:07 CDT 2003
On Monday 07 April 2003 15:19, plussier at mindspring.com wrote:
> I also just stumbled across a mention of IBM's LDAP server which is
> backed by DB2.
Yep.
> I also ran across this entry on the OpenLDAP FAQ-O-Matic:
>
> http://www.openldap.org/faq/data/cache/378.html
>
> which explains why RDBs are not easily mapped to the LDAP model.
> Since I'm not an RDB nor an LDAP expert, I can only point at this and
> say, "Here, this is what the OpenLDAP people say!" :) I have no idea
> whether what they say is valid or not.
Yeah, but it's all get-aroundable.
> >Take the official Gnome line and use a CORBA interface?
>
> What does using CORBA get us? My understanding is that it's an
> underlying application communication framework. Are you suggesting
> that there's some way to have Evo talk to CORBA to access some object
> offered by GnuCash?
Yes.
> And if so, how does this work when GnuCash isn't
> currently running?
OAF, I think, is the thing in charge of dynamically starting apps (in 'server
mode' with no GUI coming up) when their services are demanded but they're not
around at the momeny.
> And, can this work across the network by other
> systems on which GnuCash is not running?
In theory, yes; I'm not sure if any issues would arise due to how Gnome does
CORBA. As far as I can tell it runs a corba registry that is somehow
associated with your login session (stored in an X atom? In a file in your
home directory?) for object lookup, but you could of course override this and
have an option to use a different registry.
But the underlying protocol runs over IP, yes!
> I ask, because I have no idea what the answers are, since I know next
> to nothing about CORBA.
CORBA quick cheat sheet:
1) You write interfaces in IDL. This defines classes for objects and lists
what public methods and fields they have.
2) You map those interfaces to your implementation on the server by writing
handlers for the methods. The tools will usually help by generating template
code for you from the IDL.
3) You run your server, and any objects it wants public have to be
'exported', a process which assigns them an 'IOR' (a string of hex)
4) On the client, you use the IDL and a CORBA tool to produce a stub; it
produces C source or whatever for a class that has the interface defined in
the IDL and implements it by using CORBA. You can either get instances of the
class given an IOR, or can ask for it by name from a registry.
5) Most servers will register their public objects with names in a registry
somewhere.
6) The CORBA toolkit you use can supply a mechanism for coming up with a
'default registry' however it sees fit (config files, environment variables,
DNS, ...) or you can ask to use a specific registry, given the IOR of that
registry.
Under my Debian system, all the GNOME IDL files are under /usr/share/idl.
Check out gnome-pim.idl! It defines vCard as CORBA structs then an interface
for a really primitive address book server:
typedef sequence<vCard> vCard_seq;
interface vCard_server {
vCard_seq get_records ();
vCard get_record (in string UID);
void set_record (in string UID, in vCard record);
};
That could probably be extended to get subsets of records according to search
criteria.
I've no idea which Gnome packages implement or use this interface, however!
ABS
--
A city is like a large, complex, rabbit
- ARP
More information about the gnucash-user
mailing list