Re: GNOME & KOM/OP



On Sun, 9 Aug 1998, Phil Dawes wrote:

> N.B. I've moved this topic to the Gnome-Components list (I expect Miguel
> and Stephen get enough personal mail)- hope you don't mind.
> 
> 

> I submitted a back-of-a-cigerette-packet design for an orb mechanism in
> orbit which would allow collation without polluting the user source code
> (I think it's in the orbit doc directory). It involved passing options
> to the idl compiler during stub creation which enabled collated stubs,
> and then a veto system with the orb during the 'bootstrapping the object
> reference' stage. If all parties agree (client, server and orb) then the
> object can be collated in the client address space and left to talk
> through a binary interface.
Default should be to allow colation.  It's what you will want to do
99% of the time.  Just a hint.

> 
> > You need a proxy which means that the size of an object grows.
> > 
> 
> Yes, but you also need this in COM. QueryInterface has to be implemented
> somehow. (What I meant by that was that there is no extra proxy code
> needed by a corba collated stub than by a COM custom interface). 
> 

> I want to do that same as you're doing with GCOM in corba with ORBit. I
> want to enable C++, C and other compiled language objects to be able to
> communicate at speed through a binary interface for inprocess objects.
> Watch this space.

It seems pretty standard practice.  OmniORB (and I think Mico) handle
it quite simply.  When the client asks for an object, what it could get
the IDL generated stub which does the marshalling and all, or it
could get the implementation itself (this will happen in the inprocess
case).

They just have a little heirarchy somthing like

        TheInterface
          /         \ 
         /           \
   TheInterface_impl  \
                       \
                  TheInterface_stub (or whateverit's, I forget).

The client asks the factory for a TheInterface object, and doesn't
care if it gets a TheInterface_impl or a TheInterface_stub.


I assume you already know this though.


> 
> Cheers,
Cheers to you.



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