QueryMetadata

data class QueryMetadata(val scopeName: String, val template: String, val bindings: Map<String, String> = emptyMap(), val bodyBytes: ByteArray? = null, val tagTemplates: List<String> = emptyList())

Transport-agnostic description of a single query call, sufficient for CoreKeyResolver to derive a stable cache key.

Constructors

Link copied to clipboard
constructor(scopeName: String, template: String, bindings: Map<String, String> = emptyMap(), bodyBytes: ByteArray? = null, tagTemplates: List<String> = emptyList())

Properties

Link copied to clipboard

Already-known placeholder values (typically extracted from @Path / @Query parameters by the transport adapter).

Link copied to clipboard

Raw request body, used as a fallback source for placeholders not present in bindings — looked up via Utf8JsonLookup.

Link copied to clipboard

Logical namespace — usually the API interface simple name (e.g. "UserApi"). Prevents key collisions between unrelated APIs sharing template shapes.

Link copied to clipboard

Optional list of tag templates (same {placeholder} syntax as template) resolved against bindings / bodyBytes at cache-write time. The resolved tag values are persisted with the entry and matched by RetrostashStore.invalidateTag.

Link copied to clipboard

Cache template with {placeholder} syntax (e.g. "users/{id}").

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int