diff options
author | Corey Hulen <corey@hulen.com> | 2016-08-04 09:25:37 -0800 |
---|---|---|
committer | Harrison Healey <harrisonmhealey@gmail.com> | 2016-08-04 13:25:37 -0400 |
commit | 59d971dc751b0414c5b38c9df4b552e45f5641be (patch) | |
tree | d8c39aa5d1fa67d41d89bdd37f699a8e7ca7af36 /einterfaces/cluster.go | |
parent | ac90f5b38962c301318fff9118c4556537002941 (diff) | |
download | chat-59d971dc751b0414c5b38c9df4b552e45f5641be.tar.gz chat-59d971dc751b0414c5b38c9df4b552e45f5641be.tar.bz2 chat-59d971dc751b0414c5b38c9df4b552e45f5641be.zip |
PLT-2899 adding clustering of app servers (#3682)
* PLT-2899 adding clustering of app servers
* PLT-2899 base framework
* PLT-2899 HA backend
* PLT-2899 Fixing config file
* PLT-2899 adding config syncing
* PLT-2899 set System console to readonly when clustering enabled.
* PLT-2899 Fixing publish API
* PLT-2899 fixing strings
Diffstat (limited to 'einterfaces/cluster.go')
-rw-r--r-- | einterfaces/cluster.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/einterfaces/cluster.go b/einterfaces/cluster.go new file mode 100644 index 000000000..921576ad2 --- /dev/null +++ b/einterfaces/cluster.go @@ -0,0 +1,32 @@ +// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +package einterfaces + +import ( + "github.com/mattermost/platform/model" +) + +type ClusterInterface interface { + StartInterNodeCommunication() + StopInterNodeCommunication() + GetClusterInfos() []*model.ClusterInfo + RemoveAllSessionsForUserId(userId string) + InvalidateCacheForUser(userId string) + InvalidateCacheForChannel(channelId string) + Publish(event *model.WebSocketEvent) + UpdateStatus(status *model.Status) + GetLogs() ([]string, *model.AppError) + GetClusterId() string + ConfigChanged(previousConfig *model.Config, newConfig *model.Config, sendToOtherServer bool) *model.AppError +} + +var theClusterInterface ClusterInterface + +func RegisterClusterInterface(newInterface ClusterInterface) { + theClusterInterface = newInterface +} + +func GetClusterInterface() ClusterInterface { + return theClusterInterface +} |