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

Re: OPP only uses first interface in implements list



Mark Addleman wrote:
> 
> Hi,
> 
> I ended up writing a interface that extended all of the interfaces that my
> implementation class implemented.  It's not a big deal.  However, I don't
> understand your comment "the implementation class has normally only one
> interface"  I suspect there is a deeper meaning here that I am missing.
> Most of my objects implement two or three different interfaces.

Yes, normal classes can implement several interfaces. But here it is
something
different: the interface foo is used on the client (proxy-object), 
but the server uses the implementation (fooImpl).
That's what I meant with 1:1. If fooImpl should implement some
interface, 
then foo should implement it, too. Thus you have the family tree 
from my previous mail.


> 
> > -----Original Message-----
> > From: guettli@innocence.interface-business.de
> > [mailto:guettli@innocence.interface-business.de]On Behalf Of Thomas
> > Guettler
> > Sent: Tuesday, May 16, 2000 1:58 AM
> > To: ozone-users@ozone-db.org
> > Subject: Re: OPP only uses first interface in implements list
> >
> >
> > Hi Mark,
> > I had the same problem some time ago,
> > but i don't know if it is realy a bug,
> > because the implementation-class ( you call it C)
> > has normaly only one interface.
> > I wrote my code like this
> >
> > interface OtherIF {
> > }
> >
> > interface Foo extends OzoneRemote, OtherIF{
> > }
> >
> > class FooImpl implements Foo{
> > }
> >
> > I think Foo should be the 1:1 interface to FooImpl.
> >
> >
> > Mark Addleman wrote:
> > >
> > > I believe I've found a bug in OPP.  It is only picking up the first
> > > OzoneRemote interface in the implements list.  For example:
> > >
> > > interface I1 extends OzoneRemote {
> > >         public void m1();
> > > }
> > >
> > > interface I2 extends OzoneRemote {
> > >         public void m2();
> > > }
> > >
> > > class C extends OzoneObject implements I1, I2 {
> > >         public void m1() {...}
> > >         public void m2() {...}
> > > }
> > >
> > > Running OPP, the proxy I get only contains the interfaces in
> > I1.  I believe
> > > it should also contain the interfaces in I2.
> > >
> > > Mark
> > >
> > > "The hardest thing in the world to understand is the Income Tax."
> > > - Albert Einstein
> > > http://www.fairtax.org
> > >
> > > Keep your messages private, use PGP http://web.mit.edu/network/pgp.html
> >
> > --
> > Thomas Guettler             || email: guettli@gmx.de
> > Schlueterstr. 46            || phone: 0351/3103748
> > 01277 Dresden               || http://yi.org/guettli
> >
> >

-- 
Thomas Guettler             || email: guettli@gmx.de
Schlueterstr. 46            || phone: 0351/3103748
01277 Dresden               || http://yi.org/guettli