[MM-15274] Migrate "Team.Get" to Sync by default (#10694)

* Migrate Team.Get to Sync by default

* change parseRange return value to ok

* fix formatting

* remove err checks

* use require.nil

* require nil
Этот коммит содержится в:
tengis b
2019-04-27 01:18:07 +09:00
коммит произвёл Jesús Espino
родитель 2f237d68b7
Коммит 8252eab5da
14 изменённых файлов: 115 добавлений и 98 удалений

Просмотреть файл

@@ -1922,12 +1922,10 @@ func (a *App) MoveChannel(team *model.Team, channel *model.Channel, user *model.
}
// keep instance of the previous team
var previousTeam *model.Team
result := <-a.Srv.Store.Team().Get(channel.TeamId)
if result.Err != nil {
return result.Err
previousTeam, err := a.Srv.Store.Team().Get(channel.TeamId)
if err != nil {
return err
}
previousTeam = result.Data.(*model.Team)
channel.TeamId = team.Id
if result := <-a.Srv.Store.Channel().Update(channel); result.Err != nil {

Просмотреть файл

@@ -224,7 +224,14 @@ func (a *App) tryExecuteCustomCommand(args *model.CommandArgs, trigger string, m
chanChan <- store.StoreResult{Data: channel, Err: err}
close(chanChan)
}()
teamChan := a.Srv.Store.Team().Get(args.TeamId)
teamChan := make(chan store.StoreResult, 1)
go func() {
team, err := a.Srv.Store.Team().Get(args.TeamId)
teamChan <- store.StoreResult{Data: team, Err: err}
close(teamChan)
}()
userChan := make(chan store.StoreResult, 1)
go func() {
user, err := a.Srv.Store.User().Get(args.UserId)

Просмотреть файл

@@ -184,12 +184,9 @@ func (me *LoadTestProvider) SetupCommand(a *App, args *model.CommandArgs, messag
}
}
} else {
var team *model.Team
if tr := <-a.Srv.Store.Team().Get(args.TeamId); tr.Err != nil {
team, err := a.Srv.Store.Team().Get(args.TeamId)
if err != nil {
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL}
} else {
team = tr.Data.(*model.Team)
}
client.MockSession(args.Session.Token)
@@ -215,16 +212,14 @@ func (me *LoadTestProvider) UsersCommand(a *App, args *model.CommandArgs, messag
cmd = strings.TrimSpace(strings.TrimPrefix(cmd, "fuzz"))
}
usersr, err := parseRange(cmd, "")
if !err {
usersr, ok := parseRange(cmd, "")
if !ok {
usersr = utils.Range{Begin: 2, End: 5}
}
var team *model.Team
if tr := <-a.Srv.Store.Team().Get(args.TeamId); tr.Err != nil {
team, err := a.Srv.Store.Team().Get(args.TeamId)
if err != nil {
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL}
} else {
team = tr.Data.(*model.Team)
}
client := model.NewAPIv4Client(args.SiteURL)
@@ -244,16 +239,14 @@ func (me *LoadTestProvider) ChannelsCommand(a *App, args *model.CommandArgs, mes
cmd = strings.TrimSpace(strings.TrimPrefix(cmd, "fuzz"))
}
channelsr, err := parseRange(cmd, "")
if !err {
channelsr, ok := parseRange(cmd, "")
if !ok {
channelsr = utils.Range{Begin: 2, End: 5}
}
var team *model.Team
if tr := <-a.Srv.Store.Team().Get(args.TeamId); tr.Err != nil {
team, err := a.Srv.Store.Team().Get(args.TeamId)
if err != nil {
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.COMMAND_RESPONSE_TYPE_EPHEMERAL}
} else {
team = tr.Data.(*model.Team)
}
client := model.NewAPIv4Client(args.SiteURL)
@@ -274,8 +267,8 @@ func (me *LoadTestProvider) PostsCommand(a *App, args *model.CommandArgs, messag
cmd = strings.TrimSpace(strings.TrimPrefix(cmd, "fuzz"))
}
postsr, err := parseRange(cmd, "")
if !err {
postsr, ok := parseRange(cmd, "")
if !ok {
postsr = utils.Range{Begin: 20, End: 30}
}

Просмотреть файл

@@ -363,11 +363,11 @@ func (a *App) FillInPostProps(post *model.Post, channel *model.Channel) *model.A
func (a *App) handlePostEvents(post *model.Post, user *model.User, channel *model.Channel, triggerWebhooks bool, parentPostList *model.PostList) error {
var team *model.Team
if len(channel.TeamId) > 0 {
result := <-a.Srv.Store.Team().Get(channel.TeamId)
if result.Err != nil {
return result.Err
t, err := a.Srv.Store.Team().Get(channel.TeamId)
if err != nil {
return err
}
team = result.Data.(*model.Team)
team = t
} else {
// Blank team for DMs
team = &model.Team{}

Просмотреть файл

@@ -141,12 +141,11 @@ func (a *App) SlackAddUsers(teamId string, slackusers []SlackUser, importerLog *
addedUsers := make(map[string]*model.User)
// Need the team
result := <-a.Srv.Store.Team().Get(teamId)
if result.Err != nil {
team, err := a.Srv.Store.Team().Get(teamId)
if err != nil {
importerLog.WriteString(utils.T("api.slackimport.slack_import.team_fail"))
return addedUsers
}
team := result.Data.(*model.Team)
for _, sUser := range slackusers {
firstName := sUser.Profile.FirstName
@@ -193,12 +192,11 @@ func (a *App) SlackAddUsers(teamId string, slackusers []SlackUser, importerLog *
}
func (a *App) SlackAddBotUser(teamId string, log *bytes.Buffer) *model.User {
result := <-a.Srv.Store.Team().Get(teamId)
if result.Err != nil {
team, err := a.Srv.Store.Team().Get(teamId)
if err != nil {
log.WriteString(utils.T("api.slackimport.slack_import.team_fail"))
return nil
}
team := result.Data.(*model.Team)
password := model.NewId()
username := "slackimportuser_" + model.NewId()

Просмотреть файл

@@ -340,7 +340,13 @@ func (a *App) sendUpdatedMemberRoleEvent(userId string, member *model.TeamMember
}
func (a *App) AddUserToTeam(teamId string, userId string, userRequestorId string) (*model.Team, *model.AppError) {
tchan := a.Srv.Store.Team().Get(teamId)
tchan := make(chan store.StoreResult, 1)
go func() {
team, err := a.Srv.Store.Team().Get(teamId)
tchan <- store.StoreResult{Data: team, Err: err}
close(tchan)
}()
uchan := make(chan store.StoreResult, 1)
go func() {
user, err := a.Srv.Store.User().Get(userId)
@@ -368,11 +374,12 @@ func (a *App) AddUserToTeam(teamId string, userId string, userRequestorId string
}
func (a *App) AddUserToTeamByTeamId(teamId string, user *model.User) *model.AppError {
result := <-a.Srv.Store.Team().Get(teamId)
if result.Err != nil {
return result.Err
team, err := a.Srv.Store.Team().Get(teamId)
if err != nil {
return err
}
return a.JoinUserToTeam(result.Data.(*model.Team), user, "")
return a.JoinUserToTeam(team, user, "")
}
func (a *App) AddUserToTeamByToken(userId string, tokenId string) (*model.Team, *model.AppError) {
@@ -393,7 +400,13 @@ func (a *App) AddUserToTeamByToken(userId string, tokenId string) (*model.Team,
tokenData := model.MapFromJson(strings.NewReader(token.Extra))
tchan := a.Srv.Store.Team().Get(tokenData["teamId"])
tchan := make(chan store.StoreResult, 1)
go func() {
team, err := a.Srv.Store.Team().Get(tokenData["teamId"])
tchan <- store.StoreResult{Data: team, Err: err}
close(tchan)
}()
uchan := make(chan store.StoreResult, 1)
go func() {
user, err := a.Srv.Store.User().Get(userId)
@@ -556,11 +569,7 @@ func (a *App) JoinUserToTeam(team *model.Team, user *model.User, userRequestorId
}
func (a *App) GetTeam(teamId string) (*model.Team, *model.AppError) {
result := <-a.Srv.Store.Team().Get(teamId)
if result.Err != nil {
return nil, result.Err
}
return result.Data.(*model.Team), nil
return a.Srv.Store.Team().Get(teamId)
}
func (a *App) GetTeamByName(name string) (*model.Team, *model.AppError) {
@@ -797,7 +806,13 @@ func (a *App) GetTeamUnread(teamId, userId string) (*model.TeamUnread, *model.Ap
}
func (a *App) RemoveUserFromTeam(teamId string, userId string, requestorId string) *model.AppError {
tchan := a.Srv.Store.Team().Get(teamId)
tchan := make(chan store.StoreResult, 1)
go func() {
team, err := a.Srv.Store.Team().Get(teamId)
tchan <- store.StoreResult{Data: team, Err: err}
close(tchan)
}()
uchan := make(chan store.StoreResult, 1)
go func() {
user, err := a.Srv.Store.User().Get(userId)
@@ -967,7 +982,13 @@ func (a *App) InviteNewUsersToTeam(emailList []string, teamId, senderId string)
return err
}
tchan := a.Srv.Store.Team().Get(teamId)
tchan := make(chan store.StoreResult, 1)
go func() {
team, err := a.Srv.Store.Team().Get(teamId)
tchan <- store.StoreResult{Data: team, Err: err}
close(tchan)
}()
uchan := make(chan store.StoreResult, 1)
go func() {
user, err := a.Srv.Store.User().Get(senderId)

Просмотреть файл

@@ -67,11 +67,10 @@ func (a *App) CreateUserWithToken(user *model.User, tokenId string) (*model.User
tokenData := model.MapFromJson(strings.NewReader(token.Extra))
result = <-a.Srv.Store.Team().Get(tokenData["teamId"])
if result.Err != nil {
return nil, result.Err
team, err := a.Srv.Store.Team().Get(tokenData["teamId"])
if err != nil {
return nil, err
}
team := result.Data.(*model.Team)
user.Email = tokenData["email"]
user.EmailVerified = true