From eb1a00ef5f93b19c2d49b26de057ee2c51c09e45 Mon Sep 17 00:00:00 2001 From: Chris Date: Thu, 16 Nov 2017 15:04:27 -0600 Subject: Reorganize file util functionality (#7848) * reorganize file util functionality * fix api test compilation * fix rebase issue --- api/emoji.go | 5 ++--- api/emoji_test.go | 2 +- api/file.go | 10 +++++----- api/file_test.go | 2 +- 4 files changed, 9 insertions(+), 10 deletions(-) (limited to 'api') diff --git a/api/emoji.go b/api/emoji.go index 4edbbd082..cbe7b07bf 100644 --- a/api/emoji.go +++ b/api/emoji.go @@ -16,7 +16,6 @@ import ( "github.com/disintegration/imaging" "github.com/gorilla/mux" "github.com/mattermost/mattermost-server/app" - "github.com/mattermost/mattermost-server/einterfaces" "github.com/mattermost/mattermost-server/model" "github.com/mattermost/mattermost-server/utils" ) @@ -51,7 +50,7 @@ func createEmoji(c *Context, w http.ResponseWriter, r *http.Request) { return } - if emojiInterface := einterfaces.GetEmojiInterface(); emojiInterface != nil && + if emojiInterface := c.App.Emoji; emojiInterface != nil && !emojiInterface.CanUserCreateEmoji(c.Session.Roles, c.Session.TeamMembers) { c.Err = model.NewAppError("createEmoji", "api.emoji.create.permissions.app_error", nil, "user_id="+c.Session.UserId, http.StatusUnauthorized) return @@ -106,7 +105,7 @@ func createEmoji(c *Context, w http.ResponseWriter, r *http.Request) { if imageData := m.File["image"]; len(imageData) == 0 { c.SetInvalidParam("createEmoji", "image") return - } else if err := app.UploadEmojiImage(emoji.Id, imageData[0]); err != nil { + } else if err := c.App.UploadEmojiImage(emoji.Id, imageData[0]); err != nil { c.Err = err return } diff --git a/api/emoji_test.go b/api/emoji_test.go index f4e376bd2..69922a54a 100644 --- a/api/emoji_test.go +++ b/api/emoji_test.go @@ -272,7 +272,7 @@ func TestDeleteEmoji(t *testing.T) { func createTestEmoji(t *testing.T, a *app.App, emoji *model.Emoji, imageData []byte) *model.Emoji { emoji = store.Must(a.Srv.Store.Emoji().Save(emoji)).(*model.Emoji) - if err := utils.WriteFile(imageData, "emoji/"+emoji.Id+"/image"); err != nil { + if err := a.WriteFile(imageData, "emoji/"+emoji.Id+"/image"); err != nil { store.Must(a.Srv.Store.Emoji().Delete(emoji.Id, time.Now().Unix())) t.Fatalf("failed to write image: %v", err.Error()) } diff --git a/api/file.go b/api/file.go index 20b13fcb7..75739486c 100644 --- a/api/file.go +++ b/api/file.go @@ -95,7 +95,7 @@ func getFile(c *Context, w http.ResponseWriter, r *http.Request) { return } - if data, err := utils.ReadFile(info.Path); err != nil { + if data, err := c.App.ReadFile(info.Path); err != nil { c.Err = err c.Err.StatusCode = http.StatusNotFound } else if err := writeFileResponse(info.Name, info.MimeType, data, w, r); err != nil { @@ -116,7 +116,7 @@ func getFileThumbnail(c *Context, w http.ResponseWriter, r *http.Request) { return } - if data, err := utils.ReadFile(info.ThumbnailPath); err != nil { + if data, err := c.App.ReadFile(info.ThumbnailPath); err != nil { c.Err = err c.Err.StatusCode = http.StatusNotFound } else if err := writeFileResponse(info.Name, THUMBNAIL_IMAGE_TYPE, data, w, r); err != nil { @@ -137,7 +137,7 @@ func getFilePreview(c *Context, w http.ResponseWriter, r *http.Request) { return } - if data, err := utils.ReadFile(info.PreviewPath); err != nil { + if data, err := c.App.ReadFile(info.PreviewPath); err != nil { c.Err = err c.Err.StatusCode = http.StatusNotFound } else if err := writeFileResponse(info.Name, PREVIEW_IMAGE_TYPE, data, w, r); err != nil { @@ -186,7 +186,7 @@ func getPublicFile(c *Context, w http.ResponseWriter, r *http.Request) { return } - if data, err := utils.ReadFile(info.Path); err != nil { + if data, err := c.App.ReadFile(info.Path); err != nil { c.Err = err c.Err.StatusCode = http.StatusNotFound } else if err := writeFileResponse(info.Name, info.MimeType, data, w, r); err != nil { @@ -277,7 +277,7 @@ func getPublicFileOld(c *Context, w http.ResponseWriter, r *http.Request) { return } - if data, err := utils.ReadFile(info.Path); err != nil { + if data, err := c.App.ReadFile(info.Path); err != nil { c.Err = err c.Err.StatusCode = http.StatusNotFound } else if err := writeFileResponse(info.Name, info.MimeType, data, w, r); err != nil { diff --git a/api/file_test.go b/api/file_test.go index 8b04c732c..8e5fc6f67 100644 --- a/api/file_test.go +++ b/api/file_test.go @@ -849,7 +849,7 @@ func TestGetInfoForFilename(t *testing.T) { date := time.Now().Format("20060102") - if info := app.GetInfoForFilename(post1, team1.Id, post1.Filenames[0]); info == nil { + if info := th.App.GetInfoForFilename(post1, team1.Id, post1.Filenames[0]); info == nil { t.Fatal("info shouldn't be nil") } else if info.Id == "" { t.Fatal("info.Id shouldn't be empty") -- cgit v1.2.3-1-g7c22