Documentation
¶
Overview ¶
Package cache is a tiny per-profile JSON file store for Jira metadata (labels, epics, projects, …) that's cheap to look up — used by the `jira cache <resource>` commands and (eventually) by Cobra shell completion functions.
The store is intentionally dumb: one JSON file per resource, atomic write, read-time freshness check. No locking — concurrent writers would race, but in practice each profile is driven by one user shell.
Index ¶
Constants ¶
const DefaultTTL = 1 * time.Hour
DefaultTTL is the freshness window before `Read` reports stale=true. Callers can still use the cached value; this just signals "consider refreshing" to commands and completion functions.
Variables ¶
This section is empty.
Functions ¶
func Clear ¶
Clear removes the cache file for (profile, resource). Returns ok=true when a file existed and was removed; ok=false silently when none.
func ClearProfile ¶
ClearProfile wipes every cache file under a profile (the parent directory). Returns the number of files removed.
Types ¶
type Entry ¶
type Entry struct {
Profile string `json:"profile"`
Resource string `json:"resource"`
FetchedAt time.Time `json:"fetched_at"`
Data json.RawMessage `json:"data"`
}
Entry wraps a cached value with its fetch timestamp + source profile. Stored verbatim on disk so consumers can introspect age and provenance.