* @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} req * @returns {import('../../types/cache-interceptor.d.ts').default.GetResult | undefined}
(key)
| 91 | * @returns {import('../../types/cache-interceptor.d.ts').default.GetResult | undefined} |
| 92 | */ |
| 93 | get (key) { |
| 94 | assertCacheKey(key) |
| 95 | |
| 96 | const topLevelKey = `${key.origin}:${key.path}` |
| 97 | |
| 98 | const now = Date.now() |
| 99 | const entries = this.#entries.get(topLevelKey) |
| 100 | |
| 101 | const entry = entries ? findEntry(key, entries, now) : null |
| 102 | |
| 103 | return entry == null |
| 104 | ? undefined |
| 105 | : { |
| 106 | statusMessage: entry.statusMessage, |
| 107 | statusCode: entry.statusCode, |
| 108 | headers: entry.headers, |
| 109 | body: entry.body, |
| 110 | vary: entry.vary ? entry.vary : undefined, |
| 111 | etag: entry.etag, |
| 112 | cacheControlDirectives: entry.cacheControlDirectives, |
| 113 | cachedAt: entry.cachedAt, |
| 114 | staleAt: entry.staleAt, |
| 115 | deleteAt: entry.deleteAt |
| 116 | } |
| 117 | } |
| 118 | |
| 119 | /** |
| 120 | * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key |
nothing calls this directly
no test coverage detected