Browse Source

dashboards as cfg: moves dashcash into its own file

bergquist 8 years ago
parent
commit
f5e00e133b

+ 33 - 0
pkg/services/provisioning/dashboards/dashboard_cache.go

@@ -0,0 +1,33 @@
+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
+}

+ 3 - 3
pkg/services/provisioning/dashboards/file_reader.go

@@ -29,7 +29,7 @@ type fileReader struct {
 	Path          string
 	log           log.Logger
 	dashboardRepo dashboards.Repository
-	cache         *DashboardCache
+	cache         *dashboardCache
 	createWalk    func(fr *fileReader, folderId int64) filepath.WalkFunc
 }
 
@@ -87,7 +87,7 @@ func (fr *fileReader) startWalkingDisk() error {
 		}
 	}
 
-	folderId, err := getOrCreateFolder(fr.Cfg, fr.dashboardRepo)
+	folderId, err := getOrCreateFolderId(fr.Cfg, fr.dashboardRepo)
 	if err != nil && err != ErrFolderNameMissing {
 		return err
 	}
@@ -95,7 +95,7 @@ func (fr *fileReader) startWalkingDisk() error {
 	return filepath.Walk(fr.Path, fr.createWalk(fr, folderId))
 }
 
-func getOrCreateFolder(cfg *DashboardsAsConfig, repo dashboards.Repository) (int64, error) {
+func getOrCreateFolderId(cfg *DashboardsAsConfig, repo dashboards.Repository) (int64, error) {
 	if cfg.Folder == "" {
 		return 0, ErrFolderNameMissing
 	}

+ 2 - 2
pkg/services/provisioning/dashboards/file_reader_test.go

@@ -133,7 +133,7 @@ func TestDashboardFileReader(t *testing.T) {
 				},
 			}
 
-			_, err := getOrCreateFolder(cfg, fakeRepo)
+			_, err := getOrCreateFolderId(cfg, fakeRepo)
 			So(err, ShouldEqual, ErrFolderNameMissing)
 		})
 
@@ -148,7 +148,7 @@ func TestDashboardFileReader(t *testing.T) {
 				},
 			}
 
-			folderId, err := getOrCreateFolder(cfg, fakeRepo)
+			folderId, err := getOrCreateFolderId(cfg, fakeRepo)
 			So(err, ShouldBeNil)
 			inserted := false
 			for _, d := range fakeRepo.inserted {

+ 0 - 27
pkg/services/provisioning/dashboards/types.go

@@ -7,7 +7,6 @@ import (
 	"github.com/grafana/grafana/pkg/services/dashboards"
 
 	"github.com/grafana/grafana/pkg/models"
-	gocache "github.com/patrickmn/go-cache"
 )
 
 type DashboardsAsConfig struct {
@@ -19,32 +18,6 @@ type DashboardsAsConfig struct {
 	Options  map[string]interface{} `json:"options" yaml:"options"`
 }
 
-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
-}
-
 func createDashboardJson(data *simplejson.Json, lastModified time.Time, cfg *DashboardsAsConfig, folderId int64) (*dashboards.SaveDashboardItem, error) {
 	dash := &dashboards.SaveDashboardItem{}
 	dash.Dashboard = models.NewDashboardFromJson(data)