Index
Contact
Reaction
Contents
1. Introducing the Reaction Framework
1.1 Why Asynchronous Programming?
1.2 Adding a Reactor
1.3 Callback Error Handling
1.4 Callback Chaining
1.5 Signal Events
1.6 Timed Events
1.7 Using Opaque Data Objects
1.8 Target Platforms
1.9 The Reaction Packages
1.10 Chapter Summary
2. The Reactor Core
2.1 The Monotonic Clock
2.1.1 Fixed Up Wallclock
2.1.2 Java Monotonic Clock
2.1.3 Native Monotonic Clock
2.2 Logging Support
2.2.1 System Console Output
2.2.2 OSGi Logging Service
2.3 The Reactor Singleton Object
2.4 The Reactor Control Interface
2.5 Starting and Stopping the Reactor
2.6 Obtaining The Reactor Uptime
3. Working With Timers
3.1 The Reaction Timer API
3.2 Running One-Shot Timers
3.3 Cancelling One-Shot Timers
3.4 Rescheduling One-Shot Timers
3.5 Running Repeating Timers
3.6 Rescheduling Repeating Timers
4. Using Signal Events
4.1 The Signal Event API
4.2 Receiving Signal Events
4.3 Generating Signal Events
4.4 Subscribing and Unsubscribing
4.5 Finalising Signals
4.6 Execution Context
5. Managing Deferred Events
5.1 The Deferred Event API
5.2 Simple Deferred Callbacks
5.3 Deferred Error Handling
5.4 Deferred Callback Chaining
5.5 Deferred Error Callback Chaining
5.6 Mixing Callbacks and Errbacks
5.7 Execution Context
5.8 Chaining Multiple Deferred Event Objects
5.9 Deferred Callback Timeouts
5.10 Discarding Deferred Event Objects
6. Running Threadable Tasks
6.1 The Threadable Task API
6.2 Running a Simple Threadable Task
6.3 Exception Handling in Threadable Tasks
6.4 Stateful Threadable Task Objects
6.5 Cancelling a Running Threadable Task
6.6 Execution Context
6.7 Problems With Thread Prioritisation
7. Advanced Deferred Events
7.1 Advanced Deferred Event API
7.2 Using Deferred Event Concentrators
7.3 Using Deferred Event Splitters
8. The Reaction OSGi Service
8.1 Creating the Reaction OSGi Bundle
8.2 Activating the Reaction OSGi Service
8.3 Accessing the Reaction OSGi Service
8.3.1 Starting a Reaction Service Client
8.3.2 Clean Shutdown of a Reaction Client
8.3.3 Abortive Shutdown of a Reaction Client
9. User Interface Design
9.1 The Model-View-Controller Pattern
9.2 Model Implementation Using Reaction
9.2.1 Adding The Controller Interface
9.2.2 Adding The View Interface
9.3 Example GUI Implementation Using Swing
9.3.1 Controller Implementation
9.3.2 Viewer Implementation
References