yeh i had a quick look and i saw pier using these proxy classes. yep GemStone/S Object
supports #doesNotUnderstand:. so it shouldnt be too difficult to either refactor or add
MADynamicObject later. however GemStone/S doesnt support protoObject. so i guess the
MADynamicproxyObject will have to inherit from Object > From: renggli(a)iam.unibe.ch>
Subject: Re: Magritte- MAProxyObject, MADynamic object> Date: Thu, 11 Oct 2007 20:14:42
+0200> To: smallwiki(a)iam.unibe.ch> > > thanks lukas, make sense. For the port
to GemStone/S i might leave > > MAProxyObject and MADynamicObject out. it can always
be added later > > if people really want it.> > what do you think ?> >
Yes, I would do so.> > Pier has some users, but we could either refactor those or
port > MADynamicObject later on. I guess GemStone/S also supports >
#doesNotUnderstand:?> > Lukas> > > >> > > From:
renggli(a)iam.unibe.ch> > > Subject: Re: Magritte- MAProxyObject, MADynamic
object> > > Date: Thu, 11 Oct 2007 18:14:43 +0200> > > To:
smallwiki(a)iam.unibe.ch> > >> > > > what and how are MAProxyObject and
MADynamicObject used in > > magritte ?> > > > i know it acts as a proxy
for a 'real Object'. where are these> > > > proxies used> > >
> ?> > >> > > It is rarely used, I try to avoid its use as much as
possible.> > > MAProxyObject is an abstract class. MADynamicObject is created
when> > > sending the message #asDynamicObject to a block.> > >> >
> The idea is to have dynamic properties in descriptions (or other> > >
objects). For example in Pier the owner of a structure is described> > > on the
class side with something like:> > >> > > MASingleOptionDescription
new> > > beSorted;> > > label: 'Owner';> > >
selectorAccessor: #owner;> > > reference: PUUser description;> > >
options: [ self allUsers ] asDynamicObject;> > > yourself> > >> >
> This means every time the options are queried the sender gets a > > proxy>
> > object that (most of the time) resolves to the list of all available> >
> users.> > >> > > Again, this is cool magic that works most of the
time, but I > > strongly> > > discourage to use it. In all cases it is
possible to avoid its use> > > all-together, for example by overriding
#description on the instance> > > side and adding the description manually
instead of defining it on> > > the class side. I am just too lazy to do that
sometimes ;-)> > >> > > Cheers,> > > Lukas> > >>
> > --> > > Lukas Renggli> > >
http://www.lukas-renggli.ch>
> >> > >> > > _______________________________________________>
> > SmallWiki, Magritte, Pier and Related Tools ...> > >
https://www.iam.unibe.ch/mailman/listinfo/smallwiki> >> >> > Check our
comprehensive Salary Centre Overpaid or Underpaid?> >> >
_______________________________________________> > SmallWiki, Magritte, Pier and
Related Tools ...> >
https://www.iam.unibe.ch/mailman/listinfo/smallwiki> > --
> Lukas Renggli>
http://www.lukas-renggli.ch> > >
_______________________________________________> SmallWiki, Magritte, Pier and Related
Tools ...>
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
_________________________________________________________________
Your Future Starts Here. Dream it? Then be it! Find it at
www.seek.com.au
http://a.ninemsn.com.au/b.aspx?URL=http%3A%2F%2Fninemsn%2Eseek%2Ecom%2Eau%2…