[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Why *Impl_Proxy generated from *Impl?
On Wed, 29 Aug 2001, you wrote:
> Hi all,
>
> I notice that the interface -> proxy compilation feature of Ozone is not what
> I'm used to from CORBA and RMI, and so I'm wondering why so I can better
> understand the underlying design.
>
> The way Ozone does it, you have --
>
> class EmployeeImpl --implements--> interface Employee
>
> class EmployeeImpl_Proxy --+--implements--> interface Employee
> |
> +--is-generated-from--> class EmployeeImpl
>
> whereas, in CORBA and RMI, the proxy is generated _completely_ from the
> remote interface; in fact, there may be many implementations (*Impl classes)
> of the same interface. So we have --
>
> class Employee_Proxy --is-generated-from--> interface Employee
>
> class EmployeeImplA --implements--> interface Employee
> class EmployeeImplB --implements--> interface Employee
> ...
>
> I can see that the benefits of the 2nd (CORBA/RMI) approach are that the
> client, which has to physically link in a copy of the "_Proxy" class, need
> not change at all despite changes to the implementations. It also seems to me
> that all the Ozone "*Impl_Proxy" class does is invoke the interface's methods
> remotely on the server. So ... why is the proxy class generated from the
> implementation?
>
> I'm sure there's a good answer ... I'm just wondering.
An *Impl class can implement several remote interfaces (OzoneRemote interfaces).
But this is maybe not that important. (?) If there are really good reasons to
change this, we can do.
Falko
--
______________________________________________________________________
Falko Braeutigam mailto:falko@smb-tec.com
SMB GmbH http://www.smb-tec.com
----------------------------------------------------------------------
Post a message: mailto:ozone-users@ozone-db.org
Unsubscribe: mailto:ozone-users-request@ozone-db.org?body=unsubscribe
Contact administrator: mailto:ozone-users-owner@ozone-db.org
Read archived messages: http://www.ozone-db.org/
----------------------------------------------------------------------