github.com/dschalla/mattermost-server@v4.8.1-rc1+incompatible/einterfaces/ldap.go (about)

     1  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
     2  // See License.txt for license information.
     3  
     4  package einterfaces
     5  
     6  import (
     7  	"github.com/go-ldap/ldap"
     8  
     9  	"github.com/mattermost/mattermost-server/model"
    10  )
    11  
    12  type LdapInterface interface {
    13  	DoLogin(id string, password string) (*model.User, *model.AppError)
    14  	GetUser(id string) (*model.User, *model.AppError)
    15  	GetUserAttributes(id string, attributes []string) (map[string]string, *model.AppError)
    16  	CheckPassword(id string, password string) *model.AppError
    17  	SwitchToLdap(userId, ldapId, ldapPassword string) *model.AppError
    18  	ValidateFilter(filter string) *model.AppError
    19  	StartSynchronizeJob(waitForJobToFinish bool) (*model.Job, *model.AppError)
    20  	RunTest() *model.AppError
    21  	GetAllLdapUsers() ([]*model.User, *model.AppError)
    22  	UserFromLdapUser(ldapUser *ldap.Entry) *model.User
    23  	UserHasUpdateFromLdap(existingUser *model.User, currentLdapUser *model.User) bool
    24  	UpdateLocalLdapUser(existingUser *model.User, currentLdapUser *model.User) *model.User
    25  }