On Thu, May 29, 2003 at 08:25:19AM -0500, Stacy Roberts Ladnier wrote:
So... this is a "record" in the same sense as above where a record is defined by hundreds of ZMI objects? Does the "extension" consist of an additional object added through the ZMI? Or do you just want your type #1 object to have a new interface?
yes it is the same "record". The extension is an additional object.
Does the container / record need to have different or new behavior when this extension object is added to it? Or is the difference encapsulated in the extension object? If the latter, I don't see why you need to muck about with changing the class of the container at all. I must be missing something... Even in the former case, you could handle the variance by checking whether the record contains any of these extension objects, assuming they're easily identifiable (either by id or by isinstance(foo, klass)). Of course that might not be cleaner if the difference in behavior is extensive. Sorry if I'm stating the obvious, or missing the point entirely... -- Paul Winkler http://www.slinkp.com Look! Up in the sky! It's SLIM CACTUS BLAZER! (random hero from isometric.spaceninja.com)