Re: CORBA question



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello again, Dietmar:

Dietmar Maurer wrote:

> Diego Sevilla Ruiz wrote:
>
> > I don't know exactly if I understand what you're doing here. I don't know
> > what the "Object" return value of getLocalizedObjref means, as I was
> > expecting returning localized databases. Thus, I think you're mixing two
> > behaviors here: one for creating, managing and returning localized
> > databases to clients requesting them, and the other the localized database
> > itself.
> >
> > Thus, if you separate them in two:
> >
> > interface DatabaseFactory {
> >         Database getLocalizedDatabase(in string locale);
> > };
> >
> > and
> >
> > interface Database {
> >         any getValue(in string key);
> >         ...
> > }
> >
> > Note that if you see the localization value as an attribute for this
> > particular "view" of the database, the localization isn't different from
> > any other parameter the database needs at creation time (such as login and
> > passwd to the real database, etc.) This way it works even better with
> > bonobo, isn't it?
>
> I want to change the locale after I have a reference to the object. Sure, I
> can split the to interfaces, but why? If I split it like you suggest I always
> need a reference to that factory, which is clumsy.
>

You don't have specified what is your client usage pattern. I thought that the
localization will not change within the lifetime of a client, so the client can
obtain an initial reference to a localized database object and continue using
it.

Of course you need the reference to the factory. In CORBA, you *always* need a
reference to send requests to. Call it factory, call it non-localized database
from where you obtain a localized one. So why not having the factory? How do you
obtain the "first" database  object reference?

>
> > Also note that, if you use ServantActivators, there is no need to
> > modify the ObjectId to include the locale, as you get created in the
> > server a database object that "knows" (via a server object's instance
> > variable) what locale it is serving.
>
> I am quite sure that I need to encode it somehow into the object reference,
> else I cant distinguish the databases.
>

Note that I said that there is *no* need of reflecting the locale into the
ObjectId if you use ServantActivators. Each database server object can have an
instance variable reflecting the locate it is serving, regardless of the
ObjectId it owns.

>
> - Dietmar

    Hope this helps. And sorry if this don't, as I don't know exacly the anatomy
of your application.
    Best Regards.
    diego.


--
Diego Sevilla Ruiz -- http://ditec.um.es/~dsevilla/ -- dsevilla um es
Dep. Ingeniería y Tecnología de Computadores, Facultad de Informática
Univ.de Murcia,Campus Espinardo,30080 Murcia (SPAIN),Tel.+34968367658
lynx -dump ditec.um.es/~dsevilla/face |uncompface | ikon2xbm |display
PGP:  http://pgp.rediris.es:11371/pks/lookup?op=get&search=0xC9B964B7
perl -e'$_="\x4\ FLe\x2&B";for(/../g){print unpack("b*",$_),"\n"}'|tr 01 " #"




-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
MessageID: 1iAqFAWoaJrTFX3hcT5ExElVXdIPLFXc

iQA/AwUBOuRoFdoq0AfJuWS3EQKFQwCfYI2FLgDMSsByvkYiQz7wttx4t0UAoLrE
VWigFtlwU8zaaV2B4U4oiyNK
=RP/7
-----END PGP SIGNATURE-----




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