Encapsulators: a new software paradigm in Smalltalk-80
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Transparent forwarding: First steps
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Message filters for object-oriented systems
Software—Practice & Experience
Evolution of Object Behavior Using Context Relations
IEEE Transactions on Software Engineering
The Java programming language (2nd ed.)
The Java programming language (2nd ed.)
Using Interceptors to Enhance CORBA
Computer
Real-Time Specification Inheritance Anomalies and Real-Time Filters
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Abstracting Object Interactions Using Composition Filters
ECOOP '93 Proceedings of the Workshop on Object-Based Distributed Programming
Modeling with Filter Objects in Distributed Systems
EDO '00 Revised Papers from the Second International Workshop on Engineering Distributed Objects
A middleware for adaptive service orientation in pervasive computing environments
Proceedings of the 5th International Workshop on Middleware for Service Oriented Computing
Hi-index | 0.00 |
Filtering is an emerging abstraction in object-oriented systems. Filtering can be characterized by an ability to filter messages in transit and perform intermediate actions. Filters can be used for carrying out intermediate tasks such as encryption, load balancing, caching, security checks and add-on computations. A few filtering approaches have been proposed earlier and some commercial implementations with specialized filtering capabilities are available. This paper discusses a model for transparent and dynamically pluggable first class filter objects for object-oriented systems based on the Java programming language. The filter object model is based on an interclass filter relationship. The model is realized through extensions to the Java programming language. Filter objects can be injected into message paths during execution time and they are transparent to both clients and servers. The properties of filter objects enable them to be employed as a mechanism for evolution promoting reuse of existing code. A method of evolution through filter objects is discussed. A translator for Java filters (TJF) has been designed and implemented. TJF translates an extended Java program involving filter constructs into an equivalent Java code. The translation scheme is presented and the performance of the translated code is analyzed. A brief survey of existing approaches related to filtering in object-oriented systems has also been presented.