The Relay cache acts as a middleman between the client application and the Relay system. The cache is a Java object that must be instantiated by client applications. When instantiated, the Relay cache object connects to a Relay server, starts a Listener thread, and registers the client application as an observer of the cache's data.
A major advantage to having the Relay cache as part of the client-side application is that it brings caching policies and behavior to the client machine. The Relay cache is downloaded with the client application, allowing a developer to change its implementation once for all clients.
The responsibilities of the Relay cache include: