Browse Source

add cache

slene 11 years ago
parent
commit
c7e0d3a499
3 changed files with 23 additions and 0 deletions
  1. 4 0
      conf/app.ini
  2. 16 0
      modules/base/conf.go
  3. 3 0
      modules/middleware/context.go

+ 4 - 0
conf/app.ini

@@ -60,6 +60,10 @@ FROM =
 USER = 
 PASSWD = 
 
+[cache]
+ADAPTER = memory
+CONFIG = 
+
 [log]
 ; Either "console", "file", "conn" or "smtp", default is "console"
 MODE = console

+ 16 - 0
modules/base/conf.go

@@ -15,6 +15,8 @@ import (
 	"github.com/Unknwon/com"
 	"github.com/Unknwon/goconfig"
 
+	"github.com/gogits/cache"
+
 	"github.com/gogits/gogs/modules/log"
 )
 
@@ -37,6 +39,10 @@ var (
 
 	Cfg         *goconfig.ConfigFile
 	MailService *Mailer
+
+	Cache        cache.Cache
+	CacheAdapter string
+	CacheConfig  string
 )
 
 var Service struct {
@@ -182,6 +188,16 @@ func NewConfigContext() {
 	SecretKey = Cfg.MustValue("security", "SECRET_KEY")
 	RunUser = Cfg.MustValue("", "RUN_USER")
 
+	CacheAdapter = Cfg.MustValue("cache", "ADAPTER")
+	CacheConfig = Cfg.MustValue("cache", "CONFIG")
+
+	Cache, err = cache.NewCache(CacheAdapter, CacheConfig)
+	if err != nil {
+		fmt.Printf("Init cache system failed, adapter: %s, config: %s, %v\n",
+			CacheAdapter, CacheConfig, err)
+		os.Exit(2)
+	}
+
 	// Determine and create root git reposiroty path.
 	RepoRootPath = Cfg.MustValue("repository", "ROOT")
 	if err = os.MkdirAll(RepoRootPath, os.ModePerm); err != nil {

+ 3 - 0
modules/middleware/context.go

@@ -12,6 +12,8 @@ import (
 	"github.com/codegangsta/martini"
 	"github.com/martini-contrib/sessions"
 
+	"github.com/gogits/cache"
+
 	"github.com/gogits/gogs/models"
 	"github.com/gogits/gogs/modules/auth"
 	"github.com/gogits/gogs/modules/log"
@@ -25,6 +27,7 @@ type Context struct {
 	Req      *http.Request
 	Res      http.ResponseWriter
 	Session  sessions.Session
+	Cache    cache.Cache
 	User     *models.User
 	IsSigned bool