From cfa543802e93ed54595cb82a37c69eb1977c9c9a Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Thu, 4 May 2023 16:51:50 +0800 Subject: [PATCH] commonMsgDatabase --- pkg/common/db/controller/common_msg.go | 31 ++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 pkg/common/db/controller/common_msg.go diff --git a/pkg/common/db/controller/common_msg.go b/pkg/common/db/controller/common_msg.go new file mode 100644 index 000000000..71c494803 --- /dev/null +++ b/pkg/common/db/controller/common_msg.go @@ -0,0 +1,31 @@ +package controller + +import ( + "context" + + "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws" +) + +// sourceID 可以是通知也可以是conversation +type commonMsgDatabase interface { + BatchInsertChat2DB(ctx context.Context, sourceID string, msgs []*sdkws.MsgData, currentMaxSeq int64) error + DeleteMessageFromCache(ctx context.Context, sourceID string, msgs []*sdkws.MsgData) error + + GetMsgBySeqs(ctx context.Context, sourceID string, seqs []int64) (seqMsg []*sdkws.MsgData, err error) + GetMsgBySeqsRange(ctx context.Context, sourceID string, begin, end, num int64) (seqMsg []*sdkws.MsgData, err error) + CleanUpUserMsg(ctx context.Context, sourceID string) error + DelMsgsBySeqs(ctx context.Context, sourceID string, seqs []int64) (totalUnExistSeqs []int64, err error) + DelMsgsAndResetMinSeq(ctx context.Context, sourceID string, userIDs []string, remainTime int64) error + + GetMinMaxSeqInMongoAndCache(ctx context.Context, sourceID string) (minSeqMongo, maxSeqMongo, minSeqCache, maxSeqCache int64, err error) + + GetMaxSeq(ctx context.Context, sourceID string) (int64, error) + GetMinSeq(ctx context.Context, sourceID string) (int64, error) + SetMaxSeq(ctx context.Context, sourceID string, seq int64) error + SetMinSeq(ctx context.Context, sourceID string, seq int64) error + + MsgToMQ(ctx context.Context, sourceID string, msg2mq *sdkws.MsgData) error + MsgToModifyMQ(ctx context.Context, sourceID string, messages []*sdkws.MsgData) error + MsgToPushMQ(ctx context.Context, sourceID string, msg2mq *sdkws.MsgData) (int32, int64, error) + MsgToMongoMQ(ctx context.Context, sourceID string, messages []*sdkws.MsgData, lastSeq int64) error +}