Package-level declarations
Types
Registers a StateViewCache<V> bean for each state view the peer contracts on the class path name (ContractViews), so a service injects StateViewCache<OrderStateView> with nothing declared: one lazy bean per view, typed by its generics, named wow.cocache.<context>.<aggregate>, which the service's StateViewCaches gives.
The state view caches of a service, one CoCache cache per aggregate type, each holding that type's states as the view StateView marks, each at the aggregate's version: what a StateViewCache reads, and what the owner's StateViewWriter writes after each commit.
Writes the states of one aggregate type into its cache at their versions, the owner's writes after each commit: CoCache writes each only over an older version (SuspendingVersionedCache.putIfNewer), atomically, so a commit delivered again, a replay, or an old owner beside the new one never takes the cache back. A deleted aggregate is a tombstone at its version (SuspendingVersionedCache.invalidateIfNewer), which reads as absent and which no older state undoes. A reader's fill in flight holds the key's lease, which the write takes over: the fill is refused.
Shares the services' aggregate states through CoCache when the application runs CoCache (it has CoCache's CacheRuntime bean, which CoCache's starter gives with cocache.backend set). This module lists it in META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports; its ordering (after CoCache's auto-configuration) is in META-INF/spring-autoconfigure-metadata.properties, so that it imports no Spring Boot type.
wow-cocache's settings, wow.cocache.*: the one default of each key, and the class its configuration metadata comes from. The module imports no Spring Boot, so WowCoCacheAutoConfiguration reads its keys from Spring's Environment, falling back to the defaults here; the host knows the keys from the metadata this module ships.