Documentation ¶
Index ¶
- Constants
- func DecodeBytes(input []byte, thing interface{}) error
- func GetBytes(key interface{}) ([]byte, error)
- func Must(sc StoreChannel) interface{}
- type AuditStore
- type ChannelMemberHistoryStore
- type ChannelStore
- type ClusterDiscoveryStore
- type CommandStore
- type CommandWebhookStore
- type ComplianceStore
- type EmojiStore
- type FileInfoStore
- type JobStore
- type LayeredReactionStore
- func (s *LayeredReactionStore) Delete(reaction *model.Reaction) StoreChannel
- func (s *LayeredReactionStore) DeleteAllWithEmojiName(emojiName string) StoreChannel
- func (s *LayeredReactionStore) GetForPost(postId string, allowFromCache bool) StoreChannel
- func (s *LayeredReactionStore) PermanentDeleteBatch(endTime int64, limit int64) StoreChannel
- func (s *LayeredReactionStore) Save(reaction *model.Reaction) StoreChannel
- type LayeredRoleStore
- type LayeredStore
- func (s *LayeredStore) Audit() AuditStore
- func (s *LayeredStore) Channel() ChannelStore
- func (s *LayeredStore) ChannelMemberHistory() ChannelMemberHistoryStore
- func (s *LayeredStore) Close()
- func (s *LayeredStore) ClusterDiscovery() ClusterDiscoveryStore
- func (s *LayeredStore) Command() CommandStore
- func (s *LayeredStore) CommandWebhook() CommandWebhookStore
- func (s *LayeredStore) Compliance() ComplianceStore
- func (s *LayeredStore) DropAllTables()
- func (s *LayeredStore) Emoji() EmojiStore
- func (s *LayeredStore) FileInfo() FileInfoStore
- func (s *LayeredStore) Job() JobStore
- func (s *LayeredStore) License() LicenseStore
- func (s *LayeredStore) MarkSystemRanUnitTests()
- func (s *LayeredStore) OAuth() OAuthStore
- func (s *LayeredStore) Plugin() PluginStore
- func (s *LayeredStore) Post() PostStore
- func (s *LayeredStore) Preference() PreferenceStore
- func (s *LayeredStore) Reaction() ReactionStore
- func (s *LayeredStore) Role() RoleStore
- func (s *LayeredStore) RunQuery(queryFunction QueryFunction) StoreChannel
- func (s *LayeredStore) Session() SessionStore
- func (s *LayeredStore) Status() StatusStore
- func (s *LayeredStore) System() SystemStore
- func (s *LayeredStore) Team() TeamStore
- func (s *LayeredStore) Token() TokenStore
- func (s *LayeredStore) TotalMasterDbConnections() int
- func (s *LayeredStore) TotalReadDbConnections() int
- func (s *LayeredStore) TotalSearchDbConnections() int
- func (s *LayeredStore) User() UserStore
- func (s *LayeredStore) UserAccessToken() UserAccessTokenStore
- func (s *LayeredStore) Webhook() WebhookStore
- type LayeredStoreDatabaseLayer
- type LayeredStoreHint
- type LayeredStoreSupplier
- type LayeredStoreSupplierResult
- type LicenseStore
- type LocalCacheSupplier
- func (s *LocalCacheSupplier) Next() LayeredStoreSupplier
- func (s *LocalCacheSupplier) ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) ReactionPermanentDeleteBatch(ctx context.Context, endTime int64, limit int64, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) RoleGet(ctx context.Context, roleId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) RoleGetByName(ctx context.Context, name string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) RoleGetByNames(ctx context.Context, roleNames []string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) RoleSave(ctx context.Context, role *model.Role, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *LocalCacheSupplier) SetChainNext(next LayeredStoreSupplier)
- type OAuthStore
- type PluginStore
- type PostStore
- type PreferenceStore
- type QueryFunction
- type ReactionStore
- type RedisSupplier
- func (s *RedisSupplier) Next() LayeredStoreSupplier
- func (s *RedisSupplier) ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) ReactionPermanentDeleteBatch(ctx context.Context, endTime int64, limit int64, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) RoleGet(ctx context.Context, roleId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) RoleGetByName(ctx context.Context, name string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) RoleGetByNames(ctx context.Context, roleNames []string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) RoleSave(ctx context.Context, role *model.Role, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
- func (s *RedisSupplier) SetChainNext(next LayeredStoreSupplier)
- type RoleStore
- type SessionStore
- type StatusStore
- type Store
- type StoreChannel
- type StoreResult
- type SystemStore
- type TeamStore
- type TokenStore
- type UserAccessTokenStore
- type UserStore
- type WebhookStore
Constants ¶
View Source
const ( MISSING_CHANNEL_ERROR = "store.sql_channel.get_by_name.missing.app_error" MISSING_CHANNEL_MEMBER_ERROR = "store.sql_channel.get_member.missing.app_error" CHANNEL_EXISTS_ERROR = "store.sql_channel.save_channel.exists.app_error" MISSING_ACCOUNT_ERROR = "store.sql_user.missing_account.const" MISSING_AUTH_ACCOUNT_ERROR = "store.sql_user.get_by_auth.missing_account.app_error" USER_SEARCH_OPTION_NAMES_ONLY = "names_only" USER_SEARCH_OPTION_NAMES_ONLY_NO_FULL_NAME = "names_only_no_full_name" USER_SEARCH_OPTION_ALL_NO_FULL_NAME = "all_no_full_name" USER_SEARCH_OPTION_ALLOW_INACTIVE = "allow_inactive" FEATURE_TOGGLE_PREFIX = "feature_enabled_" )
View Source
const ( REACTION_CACHE_SIZE = 20000 REACTION_CACHE_SEC = 30 * 60 ROLE_CACHE_SIZE = 20000 ROLE_CACHE_SEC = 30 * 60 CLEAR_CACHE_MESSAGE_DATA = "" )
View Source
const (
ENABLE_EXPERIMENTAL_REDIS = false
)
View Source
const REDIS_EXPIRY_TIME = 30 * time.Minute
Variables ¶
This section is empty.
Functions ¶
func DecodeBytes ¶
func Must ¶
func Must(sc StoreChannel) interface{}
Types ¶
type AuditStore ¶
type AuditStore interface { Save(audit *model.Audit) StoreChannel Get(user_id string, offset int, limit int) StoreChannel PermanentDeleteByUser(userId string) StoreChannel PermanentDeleteBatch(endTime int64, limit int64) StoreChannel }
type ChannelMemberHistoryStore ¶
type ChannelMemberHistoryStore interface { LogJoinEvent(userId string, channelId string, joinTime int64) StoreChannel LogLeaveEvent(userId string, channelId string, leaveTime int64) StoreChannel GetUsersInChannelDuring(startTime int64, endTime int64, channelId string) StoreChannel PermanentDeleteBatch(endTime int64, limit int64) StoreChannel }
type ChannelStore ¶
type ChannelStore interface { Save(channel *model.Channel, maxChannelsPerTeam int64) StoreChannel CreateDirectChannel(userId string, otherUserId string) StoreChannel SaveDirectChannel(channel *model.Channel, member1 *model.ChannelMember, member2 *model.ChannelMember) StoreChannel Update(channel *model.Channel) StoreChannel Get(id string, allowFromCache bool) StoreChannel InvalidateChannel(id string) InvalidateChannelByName(teamId, name string) GetFromMaster(id string) StoreChannel Delete(channelId string, time int64) StoreChannel Restore(channelId string, time int64) StoreChannel SetDeleteAt(channelId string, deleteAt int64, updateAt int64) StoreChannel PermanentDeleteByTeam(teamId string) StoreChannel PermanentDelete(channelId string) StoreChannel GetByName(team_id string, name string, allowFromCache bool) StoreChannel GetByNames(team_id string, names []string, allowFromCache bool) StoreChannel GetByNameIncludeDeleted(team_id string, name string, allowFromCache bool) StoreChannel GetDeletedByName(team_id string, name string) StoreChannel GetDeleted(team_id string, offset int, limit int) StoreChannel GetChannels(teamId string, userId string) StoreChannel GetMoreChannels(teamId string, userId string, offset int, limit int) StoreChannel GetPublicChannelsForTeam(teamId string, offset int, limit int) StoreChannel GetPublicChannelsByIdsForTeam(teamId string, channelIds []string) StoreChannel GetChannelCounts(teamId string, userId string) StoreChannel GetTeamChannels(teamId string) StoreChannel GetAll(teamId string) StoreChannel GetForPost(postId string) StoreChannel SaveMember(member *model.ChannelMember) StoreChannel UpdateMember(member *model.ChannelMember) StoreChannel GetMembers(channelId string, offset, limit int) StoreChannel GetMember(channelId string, userId string) StoreChannel GetAllChannelMembersForUser(userId string, allowFromCache bool) StoreChannel InvalidateAllChannelMembersForUser(userId string) IsUserInChannelUseCache(userId string, channelId string) bool GetAllChannelMembersNotifyPropsForChannel(channelId string, allowFromCache bool) StoreChannel InvalidateCacheForChannelMembersNotifyProps(channelId string) GetMemberForPost(postId string, userId string) StoreChannel InvalidateMemberCount(channelId string) GetMemberCountFromCache(channelId string) int64 GetMemberCount(channelId string, allowFromCache bool) StoreChannel GetPinnedPosts(channelId string) StoreChannel RemoveMember(channelId string, userId string) StoreChannel PermanentDeleteMembersByUser(userId string) StoreChannel PermanentDeleteMembersByChannel(channelId string) StoreChannel UpdateLastViewedAt(channelIds []string, userId string) StoreChannel IncrementMentionCount(channelId string, userId string) StoreChannel AnalyticsTypeCount(teamId string, channelType string) StoreChannel GetMembersForUser(teamId string, userId string) StoreChannel AutocompleteInTeam(teamId string, term string) StoreChannel SearchInTeam(teamId string, term string) StoreChannel SearchMore(userId string, teamId string, term string) StoreChannel GetMembersByIds(channelId string, userIds []string) StoreChannel AnalyticsDeletedTypeCount(teamId string, channelType string) StoreChannel GetChannelUnread(channelId, userId string) StoreChannel ClearCaches() }
type ClusterDiscoveryStore ¶
type ClusterDiscoveryStore interface { Save(discovery *model.ClusterDiscovery) StoreChannel Delete(discovery *model.ClusterDiscovery) StoreChannel Exists(discovery *model.ClusterDiscovery) StoreChannel GetAll(discoveryType, clusterName string) StoreChannel SetLastPingAt(discovery *model.ClusterDiscovery) StoreChannel Cleanup() StoreChannel }
type CommandStore ¶
type CommandStore interface { Save(webhook *model.Command) StoreChannel Get(id string) StoreChannel GetByTeam(teamId string) StoreChannel GetByTrigger(teamId string, trigger string) StoreChannel Delete(commandId string, time int64) StoreChannel PermanentDeleteByTeam(teamId string) StoreChannel PermanentDeleteByUser(userId string) StoreChannel Update(hook *model.Command) StoreChannel AnalyticsCommandCount(teamId string) StoreChannel }
type CommandWebhookStore ¶
type CommandWebhookStore interface { Save(webhook *model.CommandWebhook) StoreChannel Get(id string) StoreChannel TryUse(id string, limit int) StoreChannel Cleanup() }
type ComplianceStore ¶
type ComplianceStore interface { Save(compliance *model.Compliance) StoreChannel Update(compliance *model.Compliance) StoreChannel Get(id string) StoreChannel GetAll(offset, limit int) StoreChannel ComplianceExport(compliance *model.Compliance) StoreChannel MessageExport(after int64, limit int) StoreChannel }
type EmojiStore ¶
type EmojiStore interface { Save(emoji *model.Emoji) StoreChannel Get(id string, allowFromCache bool) StoreChannel GetByName(name string) StoreChannel GetList(offset, limit int, sort string) StoreChannel Delete(id string, time int64) StoreChannel Search(name string, prefixOnly bool, limit int) StoreChannel }
type FileInfoStore ¶
type FileInfoStore interface { Save(info *model.FileInfo) StoreChannel Get(id string) StoreChannel GetByPath(path string) StoreChannel GetForPost(postId string, readFromMaster bool, allowFromCache bool) StoreChannel InvalidateFileInfosForPostCache(postId string) AttachToPost(fileId string, postId string) StoreChannel DeleteForPost(postId string) StoreChannel PermanentDelete(fileId string) StoreChannel PermanentDeleteBatch(endTime int64, limit int64) StoreChannel ClearCaches() }
type JobStore ¶
type JobStore interface { Save(job *model.Job) StoreChannel UpdateOptimistically(job *model.Job, currentStatus string) StoreChannel UpdateStatus(id string, status string) StoreChannel UpdateStatusOptimistically(id string, currentStatus string, newStatus string) StoreChannel Get(id string) StoreChannel GetAllPage(offset int, limit int) StoreChannel GetAllByType(jobType string) StoreChannel GetAllByTypePage(jobType string, offset int, limit int) StoreChannel GetAllByStatus(status string) StoreChannel GetNewestJobByStatusAndType(status string, jobType string) StoreChannel GetCountByStatusAndType(status string, jobType string) StoreChannel Delete(id string) StoreChannel }
type LayeredReactionStore ¶
type LayeredReactionStore struct {
*LayeredStore
}
func (*LayeredReactionStore) Delete ¶
func (s *LayeredReactionStore) Delete(reaction *model.Reaction) StoreChannel
func (*LayeredReactionStore) DeleteAllWithEmojiName ¶
func (s *LayeredReactionStore) DeleteAllWithEmojiName(emojiName string) StoreChannel
func (*LayeredReactionStore) GetForPost ¶
func (s *LayeredReactionStore) GetForPost(postId string, allowFromCache bool) StoreChannel
func (*LayeredReactionStore) PermanentDeleteBatch ¶
func (s *LayeredReactionStore) PermanentDeleteBatch(endTime int64, limit int64) StoreChannel
func (*LayeredReactionStore) Save ¶
func (s *LayeredReactionStore) Save(reaction *model.Reaction) StoreChannel
type LayeredRoleStore ¶
type LayeredRoleStore struct {
*LayeredStore
}
func (*LayeredRoleStore) Get ¶
func (s *LayeredRoleStore) Get(roleId string) StoreChannel
func (*LayeredRoleStore) GetByName ¶
func (s *LayeredRoleStore) GetByName(name string) StoreChannel
func (*LayeredRoleStore) GetByNames ¶
func (s *LayeredRoleStore) GetByNames(names []string) StoreChannel
func (*LayeredRoleStore) Save ¶
func (s *LayeredRoleStore) Save(role *model.Role) StoreChannel
type LayeredStore ¶
type LayeredStore struct { TmpContext context.Context ReactionStore ReactionStore RoleStore RoleStore DatabaseLayer LayeredStoreDatabaseLayer LocalCacheLayer *LocalCacheSupplier RedisLayer *RedisSupplier LayerChainHead LayeredStoreSupplier }
func (*LayeredStore) Audit ¶
func (s *LayeredStore) Audit() AuditStore
func (*LayeredStore) Channel ¶
func (s *LayeredStore) Channel() ChannelStore
func (*LayeredStore) ChannelMemberHistory ¶
func (s *LayeredStore) ChannelMemberHistory() ChannelMemberHistoryStore
func (*LayeredStore) Close ¶
func (s *LayeredStore) Close()
func (*LayeredStore) ClusterDiscovery ¶
func (s *LayeredStore) ClusterDiscovery() ClusterDiscoveryStore
func (*LayeredStore) Command ¶
func (s *LayeredStore) Command() CommandStore
func (*LayeredStore) CommandWebhook ¶
func (s *LayeredStore) CommandWebhook() CommandWebhookStore
func (*LayeredStore) Compliance ¶
func (s *LayeredStore) Compliance() ComplianceStore
func (*LayeredStore) DropAllTables ¶
func (s *LayeredStore) DropAllTables()
func (*LayeredStore) Emoji ¶
func (s *LayeredStore) Emoji() EmojiStore
func (*LayeredStore) FileInfo ¶
func (s *LayeredStore) FileInfo() FileInfoStore
func (*LayeredStore) Job ¶
func (s *LayeredStore) Job() JobStore
func (*LayeredStore) License ¶
func (s *LayeredStore) License() LicenseStore
func (*LayeredStore) MarkSystemRanUnitTests ¶
func (s *LayeredStore) MarkSystemRanUnitTests()
func (*LayeredStore) OAuth ¶
func (s *LayeredStore) OAuth() OAuthStore
func (*LayeredStore) Plugin ¶
func (s *LayeredStore) Plugin() PluginStore
func (*LayeredStore) Post ¶
func (s *LayeredStore) Post() PostStore
func (*LayeredStore) Preference ¶
func (s *LayeredStore) Preference() PreferenceStore
func (*LayeredStore) Reaction ¶
func (s *LayeredStore) Reaction() ReactionStore
func (*LayeredStore) Role ¶
func (s *LayeredStore) Role() RoleStore
func (*LayeredStore) RunQuery ¶
func (s *LayeredStore) RunQuery(queryFunction QueryFunction) StoreChannel
func (*LayeredStore) Session ¶
func (s *LayeredStore) Session() SessionStore
func (*LayeredStore) Status ¶
func (s *LayeredStore) Status() StatusStore
func (*LayeredStore) System ¶
func (s *LayeredStore) System() SystemStore
func (*LayeredStore) Team ¶
func (s *LayeredStore) Team() TeamStore
func (*LayeredStore) Token ¶
func (s *LayeredStore) Token() TokenStore
func (*LayeredStore) TotalMasterDbConnections ¶
func (s *LayeredStore) TotalMasterDbConnections() int
func (*LayeredStore) TotalReadDbConnections ¶
func (s *LayeredStore) TotalReadDbConnections() int
func (*LayeredStore) TotalSearchDbConnections ¶
func (s *LayeredStore) TotalSearchDbConnections() int
func (*LayeredStore) User ¶
func (s *LayeredStore) User() UserStore
func (*LayeredStore) UserAccessToken ¶
func (s *LayeredStore) UserAccessToken() UserAccessTokenStore
func (*LayeredStore) Webhook ¶
func (s *LayeredStore) Webhook() WebhookStore
type LayeredStoreDatabaseLayer ¶
type LayeredStoreDatabaseLayer interface { LayeredStoreSupplier Store }
type LayeredStoreHint ¶
type LayeredStoreHint int
const ( LSH_NO_CACHE LayeredStoreHint = iota LSH_MASTER_ONLY )
type LayeredStoreSupplier ¶
type LayeredStoreSupplier interface { // // Control // SetChainNext(LayeredStoreSupplier) Next() LayeredStoreSupplier // // Reactions //), hints ...LayeredStoreHint) ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult ReactionPermanentDeleteBatch(ctx context.Context, endTime int64, limit int64, hints ...LayeredStoreHint) *LayeredStoreSupplierResult // Roles RoleSave(ctx context.Context, role *model.Role, hints ...LayeredStoreHint) *LayeredStoreSupplierResult RoleGet(ctx context.Context, roleId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult RoleGetByName(ctx context.Context, name string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult RoleGetByNames(ctx context.Context, names []string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult }
type LayeredStoreSupplierResult ¶
type LayeredStoreSupplierResult struct {
StoreResult
}
func NewSupplierResult ¶
func NewSupplierResult() *LayeredStoreSupplierResult
type LicenseStore ¶
type LicenseStore interface { Save(license *model.LicenseRecord) StoreChannel Get(id string) StoreChannel }
type LocalCacheSupplier ¶
type LocalCacheSupplier struct {
// contains filtered or unexported fields
}
func NewLocalCacheSupplier ¶
func NewLocalCacheSupplier(metrics einterfaces.MetricsInterface, cluster einterfaces.ClusterInterface) *LocalCacheSupplier
func (*LocalCacheSupplier) Next ¶
func (s *LocalCacheSupplier) Next() LayeredStoreSupplier
func (*LocalCacheSupplier) ReactionDelete ¶
func (s *LocalCacheSupplier) ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) ReactionDeleteAllWithEmojiName ¶
func (s *LocalCacheSupplier) ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) ReactionGetForPost ¶
func (s *LocalCacheSupplier) ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) ReactionPermanentDeleteBatch ¶
func (s *LocalCacheSupplier) ReactionPermanentDeleteBatch(ctx context.Context, endTime int64, limit int64, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) ReactionSave ¶
func (s *LocalCacheSupplier) ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) RoleGet ¶
func (s *LocalCacheSupplier) RoleGet(ctx context.Context, roleId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) RoleGetByName ¶
func (s *LocalCacheSupplier) RoleGetByName(ctx context.Context, name string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) RoleGetByNames ¶
func (s *LocalCacheSupplier) RoleGetByNames(ctx context.Context, roleNames []string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) RoleSave ¶
func (s *LocalCacheSupplier) RoleSave(ctx context.Context, role *model.Role, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*LocalCacheSupplier) SetChainNext ¶
func (s *LocalCacheSupplier) SetChainNext(next LayeredStoreSupplier)
type OAuthStore ¶
type OAuthStore interface { SaveApp(app *model.OAuthApp) StoreChannel UpdateApp(app *model.OAuthApp) StoreChannel GetApp(id string) StoreChannel GetAppByUser(userId string, offset, limit int) StoreChannel GetApps(offset, limit int) StoreChannel GetAuthorizedApps(userId string, offset, limit int) StoreChannel DeleteApp(id string) StoreChannel SaveAuthData(authData *model.AuthData) StoreChannel GetAuthData(code string) StoreChannel RemoveAuthData(code string) StoreChannel PermanentDeleteAuthDataByUser(userId string) StoreChannel SaveAccessData(accessData *model.AccessData) StoreChannel UpdateAccessData(accessData *model.AccessData) StoreChannel GetAccessData(token string) StoreChannel GetAccessDataByUserForApp(userId, clientId string) StoreChannel GetAccessDataByRefreshToken(token string) StoreChannel GetPreviousAccessData(userId, clientId string) StoreChannel RemoveAccessData(token string) StoreChannel }
type PluginStore ¶
type PluginStore interface { SaveOrUpdate(keyVal *model.PluginKeyValue) StoreChannel Get(pluginId, key string) StoreChannel Delete(pluginId, key string) StoreChannel }
type PostStore ¶
type PostStore interface { Save(post *model.Post) StoreChannel Update(newPost *model.Post, oldPost *model.Post) StoreChannel Get(id string) StoreChannel GetSingle(id string) StoreChannel Delete(postId string, time int64) StoreChannel PermanentDeleteByUser(userId string) StoreChannel PermanentDeleteByChannel(channelId string) StoreChannel GetPosts(channelId string, offset int, limit int, allowFromCache bool) StoreChannel GetFlaggedPosts(userId string, offset int, limit int) StoreChannel GetFlaggedPostsForTeam(userId, teamId string, offset int, limit int) StoreChannel GetFlaggedPostsForChannel(userId, channelId string, offset int, limit int) StoreChannel GetPostsBefore(channelId string, postId string, numPosts int, offset int) StoreChannel GetPostsAfter(channelId string, postId string, numPosts int, offset int) StoreChannel GetPostsSince(channelId string, time int64, allowFromCache bool) StoreChannel GetEtag(channelId string, allowFromCache bool) StoreChannel Search(teamId string, userId string, params *model.SearchParams) StoreChannel AnalyticsUserCountsWithPostsByDay(teamId string) StoreChannel AnalyticsPostCountsByDay(teamId string) StoreChannel AnalyticsPostCount(teamId string, mustHaveFile bool, mustHaveHashtag bool) StoreChannel ClearCaches() InvalidateLastPostTimeCache(channelId string) GetPostsCreatedAt(channelId string, time int64) StoreChannel Overwrite(post *model.Post) StoreChannel GetPostsByIds(postIds []string) StoreChannel GetPostsBatchForIndexing(startTime int64, endTime int64, limit int) StoreChannel PermanentDeleteBatch(endTime int64, limit int64) StoreChannel GetOldest() StoreChannel GetMaxPostSize() StoreChannel }
type PreferenceStore ¶ added in v1.2.1
type PreferenceStore interface { Save(preferences *model.Preferences) StoreChannel Get(userId string, category string, name string) StoreChannel GetCategory(userId string, category string) StoreChannel GetAll(userId string) StoreChannel Delete(userId, category, name string) StoreChannel DeleteCategory(userId string, category string) StoreChannel DeleteCategoryAndName(category string, name string) StoreChannel PermanentDeleteByUser(userId string) StoreChannel IsFeatureEnabled(feature, userId string) StoreChannel CleanupFlagsBatch(limit int64) StoreChannel }
type QueryFunction ¶
type QueryFunction func(LayeredStoreSupplier) *LayeredStoreSupplierResult
type ReactionStore ¶
type ReactionStore interface { Save(reaction *model.Reaction) StoreChannel Delete(reaction *model.Reaction) StoreChannel GetForPost(postId string, allowFromCache bool) StoreChannel DeleteAllWithEmojiName(emojiName string) StoreChannel PermanentDeleteBatch(endTime int64, limit int64) StoreChannel }
type RedisSupplier ¶
type RedisSupplier struct {
// contains filtered or unexported fields
}
func NewRedisSupplier ¶
func NewRedisSupplier() *RedisSupplier
func (*RedisSupplier) Next ¶
func (s *RedisSupplier) Next() LayeredStoreSupplier
func (*RedisSupplier) ReactionDelete ¶
func (s *RedisSupplier) ReactionDelete(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) ReactionDeleteAllWithEmojiName ¶
func (s *RedisSupplier) ReactionDeleteAllWithEmojiName(ctx context.Context, emojiName string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) ReactionGetForPost ¶
func (s *RedisSupplier) ReactionGetForPost(ctx context.Context, postId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) ReactionPermanentDeleteBatch ¶
func (s *RedisSupplier) ReactionPermanentDeleteBatch(ctx context.Context, endTime int64, limit int64, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) ReactionSave ¶
func (s *RedisSupplier) ReactionSave(ctx context.Context, reaction *model.Reaction, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) RoleGet ¶
func (s *RedisSupplier) RoleGet(ctx context.Context, roleId string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) RoleGetByName ¶
func (s *RedisSupplier) RoleGetByName(ctx context.Context, name string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) RoleGetByNames ¶
func (s *RedisSupplier) RoleGetByNames(ctx context.Context, roleNames []string, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) RoleSave ¶
func (s *RedisSupplier) RoleSave(ctx context.Context, role *model.Role, hints ...LayeredStoreHint) *LayeredStoreSupplierResult
func (*RedisSupplier) SetChainNext ¶
func (s *RedisSupplier) SetChainNext(next LayeredStoreSupplier)
type RoleStore ¶
type RoleStore interface { Save(role *model.Role) StoreChannel Get(roleId string) StoreChannel GetByName(name string) StoreChannel GetByNames(names []string) StoreChannel }
type SessionStore ¶
type SessionStore interface { Save(session *model.Session) StoreChannel Get(sessionIdOrToken string) StoreChannel GetSessions(userId string) StoreChannel GetSessionsWithActiveDeviceIds(userId string) StoreChannel Remove(sessionIdOrToken string) StoreChannel RemoveAllSessions() StoreChannel PermanentDeleteSessionsByUser(teamId string) StoreChannel UpdateLastActivityAt(sessionId string, time int64) StoreChannel UpdateRoles(userId string, roles string) StoreChannel UpdateDeviceId(id string, deviceId string, expiresAt int64) StoreChannel AnalyticsSessionCount() StoreChannel Cleanup(expiryTime int64, batchSize int64) }
type StatusStore ¶
type StatusStore interface { SaveOrUpdate(status *model.Status) StoreChannel Get(userId string) StoreChannel GetByIds(userIds []string) StoreChannel GetOnlineAway() StoreChannel GetOnline() StoreChannel GetAllFromTeam(teamId string) StoreChannel ResetAll() StoreChannel GetTotalActiveUsersCount() StoreChannel UpdateLastActivityAt(userId string, lastActivityAt int64) StoreChannel }
type Store ¶
type Store interface { Team() TeamStore Channel() ChannelStore Post() PostStore User() UserStore Audit() AuditStore ClusterDiscovery() ClusterDiscoveryStore Compliance() ComplianceStore Session() SessionStore OAuth() OAuthStore System() SystemStore Webhook() WebhookStore Command() CommandStore CommandWebhook() CommandWebhookStore Preference() PreferenceStore License() LicenseStore Token() TokenStore Emoji() EmojiStore Status() StatusStore FileInfo() FileInfoStore Reaction() ReactionStore Role() RoleStore Job() JobStore UserAccessToken() UserAccessTokenStore ChannelMemberHistory() ChannelMemberHistoryStore Plugin() PluginStore MarkSystemRanUnitTests() Close() DropAllTables() TotalMasterDbConnections() int TotalReadDbConnections() int TotalSearchDbConnections() int }
func NewLayeredStore ¶
func NewLayeredStore(db LayeredStoreDatabaseLayer, metrics einterfaces.MetricsInterface, cluster einterfaces.ClusterInterface) Store
type StoreChannel ¶
type StoreChannel chan StoreResult
func Do ¶
func Do(f func(result *StoreResult)) StoreChannel
type StoreResult ¶
type SystemStore ¶
type SystemStore interface { Save(system *model.System) StoreChannel SaveOrUpdate(system *model.System) StoreChannel Update(system *model.System) StoreChannel Get() StoreChannel GetByName(name string) StoreChannel }
type TeamStore ¶
type TeamStore interface { Save(team *model.Team) StoreChannel Update(team *model.Team) StoreChannel UpdateDisplayName(name string, teamId string) StoreChannel Get(id string) StoreChannel GetByName(name string) StoreChannel SearchByName(name string) StoreChannel SearchAll(term string) StoreChannel SearchOpen(term string) StoreChannel GetAll() StoreChannel GetAllPage(offset int, limit int) StoreChannel GetAllTeamListing() StoreChannel GetAllTeamPageListing(offset int, limit int) StoreChannel GetTeamsByUserId(userId string) StoreChannel GetByInviteId(inviteId string) StoreChannel PermanentDelete(teamId string) StoreChannel AnalyticsTeamCount() StoreChannel SaveMember(member *model.TeamMember, maxUsersPerTeam int) StoreChannel UpdateMember(member *model.TeamMember) StoreChannel GetMember(teamId string, userId string) StoreChannel GetMembers(teamId string, offset int, limit int) StoreChannel GetMembersByIds(teamId string, userIds []string) StoreChannel GetTotalMemberCount(teamId string) StoreChannel GetActiveMemberCount(teamId string) StoreChannel GetTeamsForUser(userId string) StoreChannel GetChannelUnreadsForAllTeams(excludeTeamId, userId string) StoreChannel GetChannelUnreadsForTeam(teamId, userId string) StoreChannel RemoveMember(teamId string, userId string) StoreChannel RemoveAllMembersByTeam(teamId string) StoreChannel RemoveAllMembersByUser(userId string) StoreChannel UpdateLastTeamIconUpdate(teamId string, curTime int64) StoreChannel }
type TokenStore ¶
type TokenStore interface { Save(recovery *model.Token) StoreChannel Delete(token string) StoreChannel GetByToken(token string) StoreChannel Cleanup() }
type UserAccessTokenStore ¶
type UserAccessTokenStore interface { Save(token *model.UserAccessToken) StoreChannel Delete(tokenId string) StoreChannel DeleteAllForUser(userId string) StoreChannel Get(tokenId string) StoreChannel GetAll(offset int, limit int) StoreChannel GetByToken(tokenString string) StoreChannel GetByUser(userId string, page, perPage int) StoreChannel Search(term string) StoreChannel UpdateTokenEnable(tokenId string) StoreChannel UpdateTokenDisable(tokenId string) StoreChannel }
type UserStore ¶
type UserStore interface { Save(user *model.User) StoreChannel Update(user *model.User, allowRoleUpdate bool) StoreChannel UpdateLastPictureUpdate(userId string) StoreChannel UpdateUpdateAt(userId string) StoreChannel UpdatePassword(userId, newPassword string) StoreChannel UpdateAuthData(userId string, service string, authData *string, email string, resetMfa bool) StoreChannel UpdateMfaSecret(userId, secret string) StoreChannel UpdateMfaActive(userId string, active bool) StoreChannel Get(id string) StoreChannel GetAll() StoreChannel ClearCaches() InvalidateProfilesInChannelCacheByUser(userId string) InvalidateProfilesInChannelCache(channelId string) GetProfilesInChannel(channelId string, offset int, limit int) StoreChannel GetProfilesInChannelByStatus(channelId string, offset int, limit int) StoreChannel GetAllProfilesInChannel(channelId string, allowFromCache bool) StoreChannel GetProfilesNotInChannel(teamId string, channelId string, offset int, limit int) StoreChannel GetProfilesWithoutTeam(offset int, limit int) StoreChannel GetProfilesByUsernames(usernames []string, teamId string) StoreChannel GetAllProfiles(offset int, limit int) StoreChannel GetProfiles(teamId string, offset int, limit int) StoreChannel GetProfileByIds(userId []string, allowFromCache bool) StoreChannel InvalidatProfileCacheForUser(userId string) GetByEmail(email string) StoreChannel GetByAuth(authData *string, authService string) StoreChannel GetAllUsingAuthService(authService string) StoreChannel GetByUsername(username string) StoreChannel GetForLogin(loginId string, allowSignInWithUsername, allowSignInWithEmail, ldapEnabled bool) StoreChannel VerifyEmail(userId string) StoreChannel GetEtagForAllProfiles() StoreChannel GetEtagForProfiles(teamId string) StoreChannel UpdateFailedPasswordAttempts(userId string, attempts int) StoreChannel GetTotalUsersCount() StoreChannel GetSystemAdminProfiles() StoreChannel PermanentDelete(userId string) StoreChannel AnalyticsUniqueUserCount(teamId string) StoreChannel AnalyticsActiveCount(time int64) StoreChannel GetUnreadCount(userId string) StoreChannel GetUnreadCountForChannel(userId string, channelId string) StoreChannel GetRecentlyActiveUsersForTeam(teamId string, offset, limit int) StoreChannel GetNewUsersForTeam(teamId string, offset, limit int) StoreChannel Search(teamId string, term string, options map[string]bool) StoreChannel SearchNotInTeam(notInTeamId string, term string, options map[string]bool) StoreChannel SearchInChannel(channelId string, term string, options map[string]bool) StoreChannel SearchNotInChannel(teamId string, channelId string, term string, options map[string]bool) StoreChannel SearchWithoutTeam(term string, options map[string]bool) StoreChannel AnalyticsGetInactiveUsersCount() StoreChannel AnalyticsGetSystemAdminCount() StoreChannel GetProfilesNotInTeam(teamId string, offset int, limit int) StoreChannel GetEtagForProfilesNotInTeam(teamId string) StoreChannel }
type WebhookStore ¶
type WebhookStore interface { SaveIncoming(webhook *model.IncomingWebhook) StoreChannel GetIncoming(id string, allowFromCache bool) StoreChannel GetIncomingList(offset, limit int) StoreChannel GetIncomingByTeam(teamId string, offset, limit int) StoreChannel UpdateIncoming(webhook *model.IncomingWebhook) StoreChannel GetIncomingByChannel(channelId string) StoreChannel DeleteIncoming(webhookId string, time int64) StoreChannel PermanentDeleteIncomingByChannel(channelId string) StoreChannel PermanentDeleteIncomingByUser(userId string) StoreChannel SaveOutgoing(webhook *model.OutgoingWebhook) StoreChannel GetOutgoing(id string) StoreChannel GetOutgoingList(offset, limit int) StoreChannel GetOutgoingByChannel(channelId string, offset, limit int) StoreChannel GetOutgoingByTeam(teamId string, offset, limit int) StoreChannel DeleteOutgoing(webhookId string, time int64) StoreChannel PermanentDeleteOutgoingByChannel(channelId string) StoreChannel PermanentDeleteOutgoingByUser(userId string) StoreChannel UpdateOutgoing(hook *model.OutgoingWebhook) StoreChannel AnalyticsIncomingCount(teamId string) StoreChannel AnalyticsOutgoingCount(teamId string) StoreChannel InvalidateWebhookCache(webhook string) ClearCaches() }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.