InterlanguageLinksLookup
is the most critical component of SIL as it combines the store
interface with the cache interface.
Any request either for a target link or language code lookup are channelled through this class in order to make a decision whether to use an existing cache entry or to make a "fresh" query request to the storage back-end.
No other component of SIL should communicate to the store directly and let the lookup class to handle those requests.
In order to keep a page view responsive and avoid a repetitive or exhausting query process,
LanguageTargetLinksCache
is expected to cache all objects necessary and be accessible
through the InterlanguageLinksLookup
class.
It is recommended that the cache uses a "Composite" approach in order for short-lived requests to be stored in-memory while other information are stored on a persistence layer to increase lookup performance for succeeding requests.
Class schematics were generated by scrutinizer-ci.com
.