Context.java is exposed as an interface in CHA. All the specific context implementation classes will implement this interface. Two types of CHA implementation are provided: Local mode CHA and Remote mode CHA. Both types of CHA implement from the Context.java. Furthermore, a class named ContextImpl.java will be provided as a father class to store the shared parameters or functions from LocalContextImpl.java and RemoteContextImpl.java.
The following diagram shows the CHA implementation structure:
You can have your own CHA implementation under this architecture. You only need to create a new class implementing the Context interface, and then modify the configuration in btt.xml. For more information about the CHA configuration block in btt.xml, see Configuring CHA.