From 246d12aaf23fa3a2c23225b33a333effff76253b Mon Sep 17 00:00:00 2001 From: =Corey Hulen Date: Tue, 14 Jul 2015 15:12:04 -0800 Subject: fixes mm-1348 removing dependency on redis --- store/redis.go | 75 ----------------------------------------------------- store/redis_test.go | 59 ----------------------------------------- 2 files changed, 134 deletions(-) delete mode 100644 store/redis.go delete mode 100644 store/redis_test.go (limited to 'store') diff --git a/store/redis.go b/store/redis.go deleted file mode 100644 index 262040d43..000000000 --- a/store/redis.go +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. -// See License.txt for license information. - -package store - -import ( - l4g "code.google.com/p/log4go" - "github.com/mattermost/platform/model" - "github.com/mattermost/platform/utils" - "gopkg.in/redis.v2" - "strings" - "time" -) - -var client *redis.Client - -func RedisClient() *redis.Client { - - if client == nil { - - addr := utils.Cfg.RedisSettings.DataSource - - client = redis.NewTCPClient(&redis.Options{ - Addr: addr, - Password: "", - DB: 0, - PoolSize: utils.Cfg.RedisSettings.MaxOpenConns, - }) - - l4g.Info("Pinging redis at '%v'", addr) - pong, err := client.Ping().Result() - - if err != nil { - l4g.Critical("Failed to open redis connection to '%v' err:%v", addr, err) - time.Sleep(time.Second) - panic("Failed to open redis connection " + err.Error()) - } - - if pong != "PONG" { - l4g.Critical("Failed to ping redis connection to '%v' err:%v", addr, err) - time.Sleep(time.Second) - panic("Failed to open ping connection " + err.Error()) - } - } - - return client -} - -func RedisClose() { - l4g.Info("Closing redis") - - if client != nil { - client.Close() - client = nil - } -} - -func PublishAndForget(message *model.Message) { - - go func() { - c := RedisClient() - result := c.Publish(message.TeamId, message.ToJson()) - if result.Err() != nil { - l4g.Error("Failed to publish message err=%v, payload=%v", result.Err(), message.ToJson()) - } - }() -} - -func GetMessageFromPayload(m interface{}) *model.Message { - if msg, found := m.(*redis.Message); found { - return model.MessageFromJson(strings.NewReader(msg.Payload)) - } else { - return nil - } -} diff --git a/store/redis_test.go b/store/redis_test.go deleted file mode 100644 index 11bd9ca6a..000000000 --- a/store/redis_test.go +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. -// See License.txt for license information. - -package store - -import ( - "fmt" - "github.com/mattermost/platform/model" - "github.com/mattermost/platform/utils" - "testing" -) - -func TestRedis(t *testing.T) { - utils.LoadConfig("config.json") - - c := RedisClient() - - if c == nil { - t.Fatal("should have a valid redis connection") - } - - pubsub := c.PubSub() - defer pubsub.Close() - - m := model.NewMessage(model.NewId(), model.NewId(), model.NewId(), model.ACTION_TYPING) - m.Add("RootId", model.NewId()) - - err := pubsub.Subscribe(m.TeamId) - if err != nil { - t.Fatal(err) - } - - // should be the subscribe success message - // lets gobble that up - if _, err := pubsub.Receive(); err != nil { - t.Fatal(err) - } - - PublishAndForget(m) - - fmt.Println("here1") - - if msg, err := pubsub.Receive(); err != nil { - t.Fatal(err) - } else { - - rmsg := GetMessageFromPayload(msg) - - if m.TeamId != rmsg.TeamId { - t.Fatal("Ids do not match") - } - - if m.Props["RootId"] != rmsg.Props["RootId"] { - t.Fatal("Ids do not match") - } - } - - RedisClose() -} -- cgit v1.2.3-1-g7c22