Abstract
adaptation of aspects, which is important for building sophisticated, aspect-based software engineering tools, such as adaptive profilers or debuggers that dynamically modify instrumentation code in response to user interactions. Today, many AOP frameworks for Java, notably AspectJ, focus on aspect weaving at compile-time or at load-time, and offer only limited support for aspect adaptation and reweaving at runtime. In this paper, we introduce HotWave, an AOP framework based on AspectJ for standard Java Virtual Machines (JVMs). HotWave supports dynamic (re)weaving of previously loaded classes, and it ensures that all classes loaded in a JVM can be (re)woven, including the classes of the standard Java class library. HotWave features a novel mechanism for inter-advice communication, enabling efficient data passing between advices that are woven into the same method. We explain HotWave's programming model and discuss our implementation techniques. As case study, we present an adaptive, aspect-based profiler that leverages HotWave's distinguishing features. Copyright © 2009 ACM.
Author supplied keywords
Cite
CITATION STYLE
Villazón, A., Binder, W., Ansaloni, D., & Moret, P. (2010). Advanced runtime adaptation for Java. In ACM SIGPLAN Notices (Vol. 45, pp. 85–94). https://doi.org/10.1145/1837852.1621621
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.