From mira@informatik.uni-siegen.de Fri Nov 13 08:36:33 1998 Received: from aretha.informatik.uni-siegen.de (aretha.informatik.uni-siegen.de [141.99.92.8]) by amber.ccs.neu.edu (8.9.1a/8.9.1) with ESMTP id IAA19788; Fri, 13 Nov 1998 08:36:30 -0500 (EST) Received: from doors.informatik.uni-siegen.de (doors [141.99.92.1]) by aretha.informatik.uni-siegen.de (Mailhost) with ESMTP id OAA05419; Fri, 13 Nov 1998 14:36:12 +0100 (MET) Received: (from mira@localhost) by doors.informatik.uni-siegen.de (Mailhost) id OAA04608; Fri, 13 Nov 1998 14:35:23 +0100 (MET) Message-Id: <199811131335.OAA04608@doors.informatik.uni-siegen.de> Subject: Re: Questions To: lorenz@ccs.neu.edu (David H. Lorenz) Date: Fri, 13 Nov 1998 14:35:22 +0100 (MET) From: "Mira Mezini" Cc: ichenp@ccs.neu.edu, lieber@ccs.neu.edu, mira@ccs.neu.edu In-Reply-To: from "David H. Lorenz" at Nov 12, 98 10:31:47 pm X-Mailer: ELM [version 2.4 PL23] MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Status: R Thanks for the answers David. I would have given pretty much the same answers. In the following only few complementary remarks: > Hi I-C, > > On Thu, 12 Nov 1998, I-Chen Pan wrote: > > > Questions regarding APPC-Beans.PDF : > > > > 1. The pseudo code for traversalEvent(TraversalEventObject travObj) method > > in AdapterBean class only considered node events. What about edge events? > > Does travObj.getNodeClass() return an edge event also? > > I presume you refer to pages 10-11. > Let "ev" denote the node event received by the adapter. > "ev.getNodeClass()" should really be "ev.getNode().getClass()", > that is, it is the class of the node being traversed. > Edge events should be treated similarly, perhaps by introducing > two methods, "getSourceNode()" and "getTargetNote()", and so on. TraversalEventObject will be a superclass of, let say, NodeEventObject and EdgeEventObject. You may want to One idea for distinguishing between node and edge events would be to have two have the class AdapterBean implement both: traversalEvent(NodeEventObject) traversalEvent(EdgeEventObject) In this way we dispatch on the type of the input parameter at the language level. The implementation of the first message will be similar to the pseudo-code (I have started working on a better version of the pseudo code). The implementation of the second will invoke methods such as those written by David above. You can assume whatever interface you need from the EdgeEventObject class. This class needs to be implemented. > > 2. Does the adapter bean only adapt the output event interfaces of TB to > > mach the input interface of APPCNameBean? I mean, are there any output > > event interfaces for APPCNameBean? Should the adapter bean adapt them > > also? > > Yes, to all three questions, just in case you'd want to chain APPCs. > But they would be different adaptors. Exactly. An APPCBean-to-APCBean adaptor for let say AB1 (AB stands for Adapter Bean) and AB2 will math output event interfaces of AB1 to input interfaces of AB2. > > 3. Also in the pseudo code for traversalEvent() method in AdapterBean > > class, one line says, > > let EXP be the set of inputs expected from the class playing Part. > > > > I'm not sure what exactly it means. Is the set of inputs from ICG or from > > InputEventInterface? > > > > -IC > > "EXP" is short for "expected". "Part" is short for "participant", > where participant is a class in the ICG. A node event has been > received, and we wish to fire the corresponding participant. > Thus, any value "expected from" (i.e., use by) the participant, > should be copied from the node. Yes. EXP is the set of values expected to be provided by the CCG node and needed (used) by the corresponding participant in the APPC (Part) Will send the improved [seudo-code, if I finish it today. - Mira