File size: 753 Bytes
f606b10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package executor

import (
	"sync"
	"time"
)

type codexCache struct {
	ID     string
	Expire time.Time
}

var (
	codexCacheMap   = map[string]codexCache{}
	codexCacheMutex sync.RWMutex
)

// getCodexCache safely retrieves a cache entry
func getCodexCache(key string) (codexCache, bool) {
	codexCacheMutex.RLock()
	defer codexCacheMutex.RUnlock()
	cache, ok := codexCacheMap[key]
	return cache, ok
}

// setCodexCache safely sets a cache entry
func setCodexCache(key string, cache codexCache) {
	codexCacheMutex.Lock()
	defer codexCacheMutex.Unlock()
	codexCacheMap[key] = cache
}

// deleteCodexCache safely deletes a cache entry
func deleteCodexCache(key string) {
	codexCacheMutex.Lock()
	defer codexCacheMutex.Unlock()
	delete(codexCacheMap, key)
}