MESSAGE FILTERS FOR OBJECT-ORIENTED SYSTEMS

Citation
Rk. Joshi et al., MESSAGE FILTERS FOR OBJECT-ORIENTED SYSTEMS, Software, practice & experience, 27(6), 1997, pp. 677-699
Citations number
15
Categorie Soggetti
Computer Sciences","Computer Science Software Graphycs Programming
ISSN journal
00380644
Volume
27
Issue
6
Year of publication
1997
Pages
677 - 699
Database
ISI
SICI code
0038-0644(1997)27:6<677:MFFOS>2.0.ZU;2-D
Abstract
In the conventional object model, encapsulated objects interact by mes sages that result in method invocations on the destination object. A m essage is delivered directly at the destination object. As a result of the direct deliveries, the message control code performing intermedia te message manipulations cannot be abstracted out separately from the message processing code in the destination object without sacrificing the transparency of the intermediate message control. We propose the f iltered delivery model of message passing for object-oriented language s to provide the separation of message control from message processing in a transparent manner. An interclass relationship, called a filter relationship, is introduced. As a consequence, a filter object can int ercept and manipulate messages sent to another object called its clien t,ia filter member functions. A filter member function in a filter obj ect can intercept a particular member function invocation on its clien t object. The filtered delivery model supports both upward and downwar d filtering mechanisms, facilitating interception of an upward message and its return message value. Filter objects can be plugged or unplug ged at runtime. Binding of filter member functions to corresponding me mber functions in the client is selective and dynamic. The filtered de livery model is developed for the C++ object-oriented language; its ap plications are described and implementation is discussed. (C) 1997 by John Wiley & Sons, Ltd.