| 123456789101112131415161718192021222324252627282930313233 |
- package dashboards
- import (
- "github.com/grafana/grafana/pkg/services/dashboards"
- gocache "github.com/patrickmn/go-cache"
- "time"
- )
- type dashboardCache struct {
- internalCache *gocache.Cache
- }
- func NewDashboardCache() *dashboardCache {
- return &dashboardCache{internalCache: gocache.New(5*time.Minute, 30*time.Minute)}
- }
- func (fr *dashboardCache) addDashboardCache(key string, json *dashboards.SaveDashboardItem) {
- fr.internalCache.Add(key, json, time.Minute*10)
- }
- func (fr *dashboardCache) getCache(key string) (*dashboards.SaveDashboardItem, bool) {
- obj, exist := fr.internalCache.Get(key)
- if !exist {
- return nil, exist
- }
- dash, ok := obj.(*dashboards.SaveDashboardItem)
- if !ok {
- return nil, ok
- }
- return dash, ok
- }
|