summaryrefslogtreecommitdiffstats
path: root/einterfaces
diff options
context:
space:
mode:
Diffstat (limited to 'einterfaces')
-rw-r--r--einterfaces/cluster.go32
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
+}