mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-01-09 13:36:57 +08:00
fix: changing naming irregularities under pkg and internal packages (#520)
This commit is contained in:
parent
68e69f54b1
commit
d3d4ab3ae5
@ -38,6 +38,7 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/proto/errinfo"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// rpcString
|
||||||
func rpcString(v interface{}) string {
|
func rpcString(v interface{}) string {
|
||||||
if s, ok := v.(interface{ String() string }); ok {
|
if s, ok := v.(interface{ String() string }); ok {
|
||||||
return s.String()
|
return s.String()
|
||||||
@ -45,6 +46,7 @@ func rpcString(v interface{}) string {
|
|||||||
return fmt.Sprintf("%+v", v)
|
return fmt.Sprintf("%+v", v)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// RpcServerInterceptor
|
||||||
func RpcServerInterceptor(
|
func RpcServerInterceptor(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
req interface{},
|
req interface{},
|
||||||
@ -52,7 +54,7 @@ func RpcServerInterceptor(
|
|||||||
handler grpc.UnaryHandler,
|
handler grpc.UnaryHandler,
|
||||||
) (resp interface{}, err error) {
|
) (resp interface{}, err error) {
|
||||||
log.ZDebug(ctx, "rpc server req", "req", rpcString(req))
|
log.ZDebug(ctx, "rpc server req", "req", rpcString(req))
|
||||||
//defer func() {
|
// defer func() {
|
||||||
// if r := recover(); r != nil {
|
// if r := recover(); r != nil {
|
||||||
// log.ZError(ctx, "rpc panic", nil, "FullMethod", info.FullMethod, "type:", fmt.Sprintf("%T", r), "panic:", r)
|
// log.ZError(ctx, "rpc panic", nil, "FullMethod", info.FullMethod, "type:", fmt.Sprintf("%T", r), "panic:", r)
|
||||||
// fmt.Printf("panic: %+v\nstack info: %s\n", r, string(debug.Stack()))
|
// fmt.Printf("panic: %+v\nstack info: %s\n", r, string(debug.Stack()))
|
||||||
@ -74,7 +76,7 @@ func RpcServerInterceptor(
|
|||||||
// }
|
// }
|
||||||
// err = sta.Err()
|
// err = sta.Err()
|
||||||
// }
|
// }
|
||||||
//}()
|
// }()
|
||||||
funcName := info.FullMethod
|
funcName := info.FullMethod
|
||||||
md, ok := metadata.FromIncomingContext(ctx)
|
md, ok := metadata.FromIncomingContext(ctx)
|
||||||
if !ok {
|
if !ok {
|
||||||
@ -133,8 +135,8 @@ func RpcServerInterceptor(
|
|||||||
var errInfo *errinfo.ErrorInfo
|
var errInfo *errinfo.ErrorInfo
|
||||||
if config.Config.Log.WithStack {
|
if config.Config.Log.WithStack {
|
||||||
if unwrap != err {
|
if unwrap != err {
|
||||||
sti, ok := err.(interface{ StackTrace() errors.StackTrace })
|
var sti interface{ StackTrace() errors.StackTrace }
|
||||||
if ok {
|
if errors.As(err, &sti) {
|
||||||
log.ZWarn(
|
log.ZWarn(
|
||||||
ctx,
|
ctx,
|
||||||
"rpc server resp",
|
"rpc server resp",
|
||||||
@ -173,9 +175,11 @@ func RpcServerInterceptor(
|
|||||||
return nil, errs.Wrap(err)
|
return nil, errs.Wrap(err)
|
||||||
}
|
}
|
||||||
log.ZWarn(ctx, "rpc server resp", err, "funcName", funcName)
|
log.ZWarn(ctx, "rpc server resp", err, "funcName", funcName)
|
||||||
|
|
||||||
return nil, details.Err()
|
return nil, details.Err()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GrpcServer
|
||||||
func GrpcServer() grpc.ServerOption {
|
func GrpcServer() grpc.ServerOption {
|
||||||
return grpc.ChainUnaryInterceptor(RpcServerInterceptor)
|
return grpc.ChainUnaryInterceptor(RpcServerInterceptor)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,10 +14,14 @@
|
|||||||
|
|
||||||
package specialerror
|
package specialerror
|
||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import (
|
||||||
|
"errors"
|
||||||
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
)
|
||||||
|
|
||||||
var handlers []func(err error) errs.CodeError
|
var handlers []func(err error) errs.CodeError
|
||||||
|
|
||||||
|
// AddErrHandler
|
||||||
func AddErrHandler(h func(err error) errs.CodeError) {
|
func AddErrHandler(h func(err error) errs.CodeError) {
|
||||||
if h == nil {
|
if h == nil {
|
||||||
panic("nil handler")
|
panic("nil handler")
|
||||||
@ -27,13 +31,15 @@ func AddErrHandler(h func(err error) errs.CodeError) {
|
|||||||
|
|
||||||
func AddReplace(target error, codeErr errs.CodeError) {
|
func AddReplace(target error, codeErr errs.CodeError) {
|
||||||
AddErrHandler(func(err error) errs.CodeError {
|
AddErrHandler(func(err error) errs.CodeError {
|
||||||
if err == target {
|
if errors.Is(err, target) {
|
||||||
return codeErr
|
return codeErr
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ErrCode
|
||||||
func ErrCode(err error) errs.CodeError {
|
func ErrCode(err error) errs.CodeError {
|
||||||
if codeErr, ok := err.(errs.CodeError); ok {
|
if codeErr, ok := err.(errs.CodeError); ok {
|
||||||
return codeErr
|
return codeErr
|
||||||
@ -43,5 +49,6 @@ func ErrCode(err error) errs.CodeError {
|
|||||||
return codeErr
|
return codeErr
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -79,6 +79,7 @@ var (
|
|||||||
ConversationCreateFailedCounter prometheus.Counter
|
ConversationCreateFailedCounter prometheus.Counter
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// NewUserLoginCounter
|
||||||
func NewUserLoginCounter() {
|
func NewUserLoginCounter() {
|
||||||
if UserLoginCounter != nil {
|
if UserLoginCounter != nil {
|
||||||
return
|
return
|
||||||
@ -89,6 +90,7 @@ func NewUserLoginCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewUserRegisterCounter
|
||||||
func NewUserRegisterCounter() {
|
func NewUserRegisterCounter() {
|
||||||
if UserRegisterCounter != nil {
|
if UserRegisterCounter != nil {
|
||||||
return
|
return
|
||||||
@ -99,6 +101,7 @@ func NewUserRegisterCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSeqGetSuccessCounter
|
||||||
func NewSeqGetSuccessCounter() {
|
func NewSeqGetSuccessCounter() {
|
||||||
if SeqGetSuccessCounter != nil {
|
if SeqGetSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -109,6 +112,7 @@ func NewSeqGetSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSeqGetFailedCounter
|
||||||
func NewSeqGetFailedCounter() {
|
func NewSeqGetFailedCounter() {
|
||||||
if SeqGetFailedCounter != nil {
|
if SeqGetFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -119,6 +123,7 @@ func NewSeqGetFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSeqSetSuccessCounter
|
||||||
func NewSeqSetSuccessCounter() {
|
func NewSeqSetSuccessCounter() {
|
||||||
if SeqSetSuccessCounter != nil {
|
if SeqSetSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -129,6 +134,7 @@ func NewSeqSetSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSeqSetFailedCounter
|
||||||
func NewSeqSetFailedCounter() {
|
func NewSeqSetFailedCounter() {
|
||||||
if SeqSetFailedCounter != nil {
|
if SeqSetFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -139,6 +145,7 @@ func NewSeqSetFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewApiRequestCounter
|
||||||
func NewApiRequestCounter() {
|
func NewApiRequestCounter() {
|
||||||
if ApiRequestCounter != nil {
|
if ApiRequestCounter != nil {
|
||||||
return
|
return
|
||||||
@ -149,6 +156,7 @@ func NewApiRequestCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewApiRequestSuccessCounter
|
||||||
func NewApiRequestSuccessCounter() {
|
func NewApiRequestSuccessCounter() {
|
||||||
if ApiRequestSuccessCounter != nil {
|
if ApiRequestSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -159,6 +167,7 @@ func NewApiRequestSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewApiRequestFailedCounter
|
||||||
func NewApiRequestFailedCounter() {
|
func NewApiRequestFailedCounter() {
|
||||||
if ApiRequestFailedCounter != nil {
|
if ApiRequestFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -169,6 +178,7 @@ func NewApiRequestFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGrpcRequestCounter
|
||||||
func NewGrpcRequestCounter() {
|
func NewGrpcRequestCounter() {
|
||||||
if GrpcRequestCounter != nil {
|
if GrpcRequestCounter != nil {
|
||||||
return
|
return
|
||||||
@ -179,6 +189,7 @@ func NewGrpcRequestCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGrpcRequestSuccessCounter
|
||||||
func NewGrpcRequestSuccessCounter() {
|
func NewGrpcRequestSuccessCounter() {
|
||||||
if GrpcRequestSuccessCounter != nil {
|
if GrpcRequestSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -189,6 +200,7 @@ func NewGrpcRequestSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGrpcRequestFailedCounter
|
||||||
func NewGrpcRequestFailedCounter() {
|
func NewGrpcRequestFailedCounter() {
|
||||||
if GrpcRequestFailedCounter != nil {
|
if GrpcRequestFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -199,6 +211,7 @@ func NewGrpcRequestFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSendMsgCount
|
||||||
func NewSendMsgCount() {
|
func NewSendMsgCount() {
|
||||||
if SendMsgCounter != nil {
|
if SendMsgCounter != nil {
|
||||||
return
|
return
|
||||||
@ -209,6 +222,7 @@ func NewSendMsgCount() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgInsertRedisSuccessCounter
|
||||||
func NewMsgInsertRedisSuccessCounter() {
|
func NewMsgInsertRedisSuccessCounter() {
|
||||||
if MsgInsertRedisSuccessCounter != nil {
|
if MsgInsertRedisSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -219,6 +233,7 @@ func NewMsgInsertRedisSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgInsertRedisFailedCounter
|
||||||
func NewMsgInsertRedisFailedCounter() {
|
func NewMsgInsertRedisFailedCounter() {
|
||||||
if MsgInsertRedisFailedCounter != nil {
|
if MsgInsertRedisFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -229,6 +244,7 @@ func NewMsgInsertRedisFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgInsertMongoSuccessCounter
|
||||||
func NewMsgInsertMongoSuccessCounter() {
|
func NewMsgInsertMongoSuccessCounter() {
|
||||||
if MsgInsertMongoSuccessCounter != nil {
|
if MsgInsertMongoSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -239,6 +255,7 @@ func NewMsgInsertMongoSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgInsertMongoFailedCounter
|
||||||
func NewMsgInsertMongoFailedCounter() {
|
func NewMsgInsertMongoFailedCounter() {
|
||||||
if MsgInsertMongoFailedCounter != nil {
|
if MsgInsertMongoFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -249,6 +266,7 @@ func NewMsgInsertMongoFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgPullFromRedisSuccessCounter
|
||||||
func NewMsgPullFromRedisSuccessCounter() {
|
func NewMsgPullFromRedisSuccessCounter() {
|
||||||
if MsgPullFromRedisSuccessCounter != nil {
|
if MsgPullFromRedisSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -259,6 +277,7 @@ func NewMsgPullFromRedisSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgPullFromRedisFailedCounter
|
||||||
func NewMsgPullFromRedisFailedCounter() {
|
func NewMsgPullFromRedisFailedCounter() {
|
||||||
if MsgPullFromRedisFailedCounter != nil {
|
if MsgPullFromRedisFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -269,6 +288,7 @@ func NewMsgPullFromRedisFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgPullFromMongoSuccessCounter
|
||||||
func NewMsgPullFromMongoSuccessCounter() {
|
func NewMsgPullFromMongoSuccessCounter() {
|
||||||
if MsgPullFromMongoSuccessCounter != nil {
|
if MsgPullFromMongoSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -279,6 +299,7 @@ func NewMsgPullFromMongoSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgPullFromMongoFailedCounter
|
||||||
func NewMsgPullFromMongoFailedCounter() {
|
func NewMsgPullFromMongoFailedCounter() {
|
||||||
if MsgPullFromMongoFailedCounter != nil {
|
if MsgPullFromMongoFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -289,6 +310,7 @@ func NewMsgPullFromMongoFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgRecvTotalCounter
|
||||||
func NewMsgRecvTotalCounter() {
|
func NewMsgRecvTotalCounter() {
|
||||||
if MsgRecvTotalCounter != nil {
|
if MsgRecvTotalCounter != nil {
|
||||||
return
|
return
|
||||||
@ -299,6 +321,7 @@ func NewMsgRecvTotalCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGetNewestSeqTotalCounter
|
||||||
func NewGetNewestSeqTotalCounter() {
|
func NewGetNewestSeqTotalCounter() {
|
||||||
if GetNewestSeqTotalCounter != nil {
|
if GetNewestSeqTotalCounter != nil {
|
||||||
return
|
return
|
||||||
@ -309,6 +332,7 @@ func NewGetNewestSeqTotalCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewPullMsgBySeqListTotalCounter
|
||||||
func NewPullMsgBySeqListTotalCounter() {
|
func NewPullMsgBySeqListTotalCounter() {
|
||||||
if PullMsgBySeqListTotalCounter != nil {
|
if PullMsgBySeqListTotalCounter != nil {
|
||||||
return
|
return
|
||||||
@ -319,6 +343,7 @@ func NewPullMsgBySeqListTotalCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSingleChatMsgRecvSuccessCounter
|
||||||
func NewSingleChatMsgRecvSuccessCounter() {
|
func NewSingleChatMsgRecvSuccessCounter() {
|
||||||
if SingleChatMsgRecvSuccessCounter != nil {
|
if SingleChatMsgRecvSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -329,6 +354,7 @@ func NewSingleChatMsgRecvSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGroupChatMsgRecvSuccessCounter
|
||||||
func NewGroupChatMsgRecvSuccessCounter() {
|
func NewGroupChatMsgRecvSuccessCounter() {
|
||||||
if GroupChatMsgRecvSuccessCounter != nil {
|
if GroupChatMsgRecvSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -339,6 +365,7 @@ func NewGroupChatMsgRecvSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewWorkSuperGroupChatMsgRecvSuccessCounter
|
||||||
func NewWorkSuperGroupChatMsgRecvSuccessCounter() {
|
func NewWorkSuperGroupChatMsgRecvSuccessCounter() {
|
||||||
if WorkSuperGroupChatMsgRecvSuccessCounter != nil {
|
if WorkSuperGroupChatMsgRecvSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -349,6 +376,7 @@ func NewWorkSuperGroupChatMsgRecvSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewOnlineUserGauges
|
||||||
func NewOnlineUserGauges() {
|
func NewOnlineUserGauges() {
|
||||||
if OnlineUserGauge != nil {
|
if OnlineUserGauge != nil {
|
||||||
return
|
return
|
||||||
@ -359,6 +387,7 @@ func NewOnlineUserGauges() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSingleChatMsgProcessSuccessCounter
|
||||||
func NewSingleChatMsgProcessSuccessCounter() {
|
func NewSingleChatMsgProcessSuccessCounter() {
|
||||||
if SingleChatMsgProcessSuccessCounter != nil {
|
if SingleChatMsgProcessSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -369,6 +398,7 @@ func NewSingleChatMsgProcessSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewSingleChatMsgProcessFailedCounter
|
||||||
func NewSingleChatMsgProcessFailedCounter() {
|
func NewSingleChatMsgProcessFailedCounter() {
|
||||||
if SingleChatMsgProcessFailedCounter != nil {
|
if SingleChatMsgProcessFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -379,6 +409,7 @@ func NewSingleChatMsgProcessFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGroupChatMsgProcessSuccessCounter
|
||||||
func NewGroupChatMsgProcessSuccessCounter() {
|
func NewGroupChatMsgProcessSuccessCounter() {
|
||||||
if GroupChatMsgProcessSuccessCounter != nil {
|
if GroupChatMsgProcessSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -389,6 +420,7 @@ func NewGroupChatMsgProcessSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGroupChatMsgProcessFailedCounter
|
||||||
func NewGroupChatMsgProcessFailedCounter() {
|
func NewGroupChatMsgProcessFailedCounter() {
|
||||||
if GroupChatMsgProcessFailedCounter != nil {
|
if GroupChatMsgProcessFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -399,6 +431,7 @@ func NewGroupChatMsgProcessFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewWorkSuperGroupChatMsgProcessSuccessCounter
|
||||||
func NewWorkSuperGroupChatMsgProcessSuccessCounter() {
|
func NewWorkSuperGroupChatMsgProcessSuccessCounter() {
|
||||||
if WorkSuperGroupChatMsgProcessSuccessCounter != nil {
|
if WorkSuperGroupChatMsgProcessSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -409,6 +442,7 @@ func NewWorkSuperGroupChatMsgProcessSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewWorkSuperGroupChatMsgProcessFailedCounter
|
||||||
func NewWorkSuperGroupChatMsgProcessFailedCounter() {
|
func NewWorkSuperGroupChatMsgProcessFailedCounter() {
|
||||||
if WorkSuperGroupChatMsgProcessFailedCounter != nil {
|
if WorkSuperGroupChatMsgProcessFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -419,6 +453,7 @@ func NewWorkSuperGroupChatMsgProcessFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgOnlinePushSuccessCounter
|
||||||
func NewMsgOnlinePushSuccessCounter() {
|
func NewMsgOnlinePushSuccessCounter() {
|
||||||
if MsgOnlinePushSuccessCounter != nil {
|
if MsgOnlinePushSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -429,6 +464,7 @@ func NewMsgOnlinePushSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgOfflinePushSuccessCounter
|
||||||
func NewMsgOfflinePushSuccessCounter() {
|
func NewMsgOfflinePushSuccessCounter() {
|
||||||
if MsgOfflinePushSuccessCounter != nil {
|
if MsgOfflinePushSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -439,6 +475,7 @@ func NewMsgOfflinePushSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMsgOfflinePushFailedCounter
|
||||||
func NewMsgOfflinePushFailedCounter() {
|
func NewMsgOfflinePushFailedCounter() {
|
||||||
if MsgOfflinePushFailedCounter != nil {
|
if MsgOfflinePushFailedCounter != nil {
|
||||||
return
|
return
|
||||||
@ -449,6 +486,7 @@ func NewMsgOfflinePushFailedCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewConversationCreateSuccessCounter
|
||||||
func NewConversationCreateSuccessCounter() {
|
func NewConversationCreateSuccessCounter() {
|
||||||
if ConversationCreateSuccessCounter != nil {
|
if ConversationCreateSuccessCounter != nil {
|
||||||
return
|
return
|
||||||
@ -459,6 +497,7 @@ func NewConversationCreateSuccessCounter() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewConversationCreateFailedCounter
|
||||||
func NewConversationCreateFailedCounter() {
|
func NewConversationCreateFailedCounter() {
|
||||||
if ConversationCreateFailedCounter != nil {
|
if ConversationCreateFailedCounter != nil {
|
||||||
return
|
return
|
||||||
|
|||||||
@ -26,6 +26,7 @@ import (
|
|||||||
"github.com/prometheus/client_golang/prometheus/promhttp"
|
"github.com/prometheus/client_golang/prometheus/promhttp"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// StartPrometheusSrv
|
||||||
func StartPrometheusSrv(prometheusPort int) error {
|
func StartPrometheusSrv(prometheusPort int) error {
|
||||||
if config.Config.Prometheus.Enable {
|
if config.Config.Prometheus.Enable {
|
||||||
http.Handle("/metrics", promhttp.Handler())
|
http.Handle("/metrics", promhttp.Handler())
|
||||||
@ -35,6 +36,7 @@ func StartPrometheusSrv(prometheusPort int) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// PrometheusHandler
|
||||||
func PrometheusHandler() gin.HandlerFunc {
|
func PrometheusHandler() gin.HandlerFunc {
|
||||||
h := promhttp.Handler()
|
h := promhttp.Handler()
|
||||||
return func(c *gin.Context) {
|
return func(c *gin.Context) {
|
||||||
@ -42,16 +44,19 @@ func PrometheusHandler() gin.HandlerFunc {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// responseBodyWriter
|
||||||
type responseBodyWriter struct {
|
type responseBodyWriter struct {
|
||||||
gin.ResponseWriter
|
gin.ResponseWriter
|
||||||
body *bytes.Buffer
|
body *bytes.Buffer
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Write
|
||||||
func (r responseBodyWriter) Write(b []byte) (int, error) {
|
func (r responseBodyWriter) Write(b []byte) (int, error) {
|
||||||
r.body.Write(b)
|
r.body.Write(b)
|
||||||
return r.ResponseWriter.Write(b)
|
return r.ResponseWriter.Write(b)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// PrometheusMiddleware
|
||||||
func PrometheusMiddleware(c *gin.Context) {
|
func PrometheusMiddleware(c *gin.Context) {
|
||||||
Inc(ApiRequestCounter)
|
Inc(ApiRequestCounter)
|
||||||
w := &responseBodyWriter{body: &bytes.Buffer{}, ResponseWriter: c.Writer}
|
w := &responseBodyWriter{body: &bytes.Buffer{}, ResponseWriter: c.Writer}
|
||||||
@ -64,6 +69,7 @@ func PrometheusMiddleware(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Inc
|
||||||
func Inc(counter prometheus.Counter) {
|
func Inc(counter prometheus.Counter) {
|
||||||
if config.Config.Prometheus.Enable {
|
if config.Config.Prometheus.Enable {
|
||||||
if counter != nil {
|
if counter != nil {
|
||||||
@ -72,6 +78,7 @@ func Inc(counter prometheus.Counter) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Add
|
||||||
func Add(counter prometheus.Counter, add int) {
|
func Add(counter prometheus.Counter, add int) {
|
||||||
if config.Config.Prometheus.Enable {
|
if config.Config.Prometheus.Enable {
|
||||||
if counter != nil {
|
if counter != nil {
|
||||||
@ -80,6 +87,7 @@ func Add(counter prometheus.Counter, add int) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GaugeInc
|
||||||
func GaugeInc(gauges prometheus.Gauge) {
|
func GaugeInc(gauges prometheus.Gauge) {
|
||||||
if config.Config.Prometheus.Enable {
|
if config.Config.Prometheus.Enable {
|
||||||
if gauges != nil {
|
if gauges != nil {
|
||||||
@ -88,6 +96,7 @@ func GaugeInc(gauges prometheus.Gauge) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GaugeDec
|
||||||
func GaugeDec(gauges prometheus.Gauge) {
|
func GaugeDec(gauges prometheus.Gauge) {
|
||||||
if config.Config.Prometheus.Enable {
|
if config.Config.Prometheus.Enable {
|
||||||
if gauges != nil {
|
if gauges != nil {
|
||||||
|
|||||||
@ -27,15 +27,18 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/utils"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Claims
|
||||||
type Claims struct {
|
type Claims struct {
|
||||||
UserID string
|
UserID string
|
||||||
PlatformID int // login platform
|
PlatformID int // login platform
|
||||||
jwt.RegisteredClaims
|
jwt.RegisteredClaims
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// BuildClaims
|
||||||
func BuildClaims(uid string, platformID int, ttl int64) Claims {
|
func BuildClaims(uid string, platformID int, ttl int64) Claims {
|
||||||
now := time.Now()
|
now := time.Now()
|
||||||
before := now.Add(-time.Minute * 5)
|
before := now.Add(-time.Minute * 5)
|
||||||
|
|
||||||
return Claims{
|
return Claims{
|
||||||
UserID: uid,
|
UserID: uid,
|
||||||
PlatformID: platformID,
|
PlatformID: platformID,
|
||||||
@ -47,12 +50,14 @@ func BuildClaims(uid string, platformID int, ttl int64) Claims {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// secret
|
||||||
func secret() jwt.Keyfunc {
|
func secret() jwt.Keyfunc {
|
||||||
return func(token *jwt.Token) (interface{}, error) {
|
return func(token *jwt.Token) (interface{}, error) {
|
||||||
return []byte(config.Config.Secret), nil
|
return []byte(config.Config.Secret), nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetClaimFromToken
|
||||||
func GetClaimFromToken(tokensString string) (*Claims, error) {
|
func GetClaimFromToken(tokensString string) (*Claims, error) {
|
||||||
token, err := jwt.ParseWithClaims(tokensString, &Claims{}, secret())
|
token, err := jwt.ParseWithClaims(tokensString, &Claims{}, secret())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -73,10 +78,12 @@ func GetClaimFromToken(tokensString string) (*Claims, error) {
|
|||||||
if claims, ok := token.Claims.(*Claims); ok && token.Valid {
|
if claims, ok := token.Claims.(*Claims); ok && token.Valid {
|
||||||
return claims, nil
|
return claims, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil, utils.Wrap(errs.ErrTokenUnknown, "")
|
return nil, utils.Wrap(errs.ErrTokenUnknown, "")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CheckAccessV3
|
||||||
func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) {
|
func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) {
|
||||||
opUserID := mcontext.GetOpUserID(ctx)
|
opUserID := mcontext.GetOpUserID(ctx)
|
||||||
if utils.IsContain(opUserID, config.Config.Manager.UserID) {
|
if utils.IsContain(opUserID, config.Config.Manager.UserID) {
|
||||||
@ -85,28 +92,35 @@ func CheckAccessV3(ctx context.Context, ownerUserID string) (err error) {
|
|||||||
if opUserID == ownerUserID {
|
if opUserID == ownerUserID {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return errs.ErrNoPermission.Wrap(utils.GetSelfFuncName())
|
return errs.ErrNoPermission.Wrap(utils.GetSelfFuncName())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IsAppManagerUid
|
||||||
func IsAppManagerUid(ctx context.Context) bool {
|
func IsAppManagerUid(ctx context.Context) bool {
|
||||||
return utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID)
|
return utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CheckAdmin
|
||||||
func CheckAdmin(ctx context.Context) error {
|
func CheckAdmin(ctx context.Context) error {
|
||||||
if utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID) {
|
if utils.IsContain(mcontext.GetOpUserID(ctx), config.Config.Manager.UserID) {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return errs.ErrNoPermission.Wrap(fmt.Sprintf("user %s is not admin userID", mcontext.GetOpUserID(ctx)))
|
return errs.ErrNoPermission.Wrap(fmt.Sprintf("user %s is not admin userID", mcontext.GetOpUserID(ctx)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ParseRedisInterfaceToken
|
||||||
func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) {
|
func ParseRedisInterfaceToken(redisToken interface{}) (*Claims, error) {
|
||||||
return GetClaimFromToken(string(redisToken.([]uint8)))
|
return GetClaimFromToken(string(redisToken.([]uint8)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IsManagerUserID
|
||||||
func IsManagerUserID(opUserID string) bool {
|
func IsManagerUserID(opUserID string) bool {
|
||||||
return utils.IsContain(opUserID, config.Config.Manager.UserID)
|
return utils.IsContain(opUserID, config.Config.Manager.UserID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WsVerifyToken
|
||||||
func WsVerifyToken(token, userID string, platformID int) error {
|
func WsVerifyToken(token, userID string, platformID int) error {
|
||||||
claim, err := GetClaimFromToken(token)
|
claim, err := GetClaimFromToken(token)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -118,5 +132,6 @@ func WsVerifyToken(token, userID string, platformID int) error {
|
|||||||
if claim.PlatformID != platformID {
|
if claim.PlatformID != platformID {
|
||||||
return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token platform %d != %d", claim.PlatformID, platformID))
|
return errs.ErrTokenInvalid.Wrap(fmt.Sprintf("token platform %d != %d", claim.PlatformID, platformID))
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import (
|
|||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Conn
|
||||||
type Conn interface {
|
type Conn interface {
|
||||||
GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error)
|
GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error)
|
||||||
GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error)
|
GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error)
|
||||||
@ -29,6 +30,7 @@ type Conn interface {
|
|||||||
GetClientLocalConns() map[string][]grpc.ClientConnInterface
|
GetClientLocalConns() map[string][]grpc.ClientConnInterface
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SvcDiscoveryRegistry
|
||||||
type SvcDiscoveryRegistry interface {
|
type SvcDiscoveryRegistry interface {
|
||||||
Conn
|
Conn
|
||||||
Register(serviceName, host string, port int, opts ...grpc.DialOption) error
|
Register(serviceName, host string, port int, opts ...grpc.DialOption) error
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"github.com/go-zookeeper/zk"
|
"github.com/go-zookeeper/zk"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// RegisterConf2Registry
|
||||||
func (s *ZkClient) RegisterConf2Registry(key string, conf []byte) error {
|
func (s *ZkClient) RegisterConf2Registry(key string, conf []byte) error {
|
||||||
exists, _, err := s.conn.Exists(s.getPath(key))
|
exists, _, err := s.conn.Exists(s.getPath(key))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -32,10 +33,13 @@ func (s *ZkClient) RegisterConf2Registry(key string, conf []byte) error {
|
|||||||
if err != zk.ErrNodeExists {
|
if err != zk.ErrNodeExists {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConfFromRegistry
|
||||||
func (s *ZkClient) GetConfFromRegistry(key string) ([]byte, error) {
|
func (s *ZkClient) GetConfFromRegistry(key string) ([]byte, error) {
|
||||||
bytes, _, err := s.conn.Get(s.getPath(key))
|
bytes, _, err := s.conn.Get(s.getPath(key))
|
||||||
|
|
||||||
return bytes, err
|
return bytes, err
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,6 +35,7 @@ var (
|
|||||||
ErrConnIsNilButLocalNotNil = errors.New("conn is nil, but local is not nil")
|
ErrConnIsNilButLocalNotNil = errors.New("conn is nil, but local is not nil")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// watch
|
||||||
func (s *ZkClient) watch() {
|
func (s *ZkClient) watch() {
|
||||||
for {
|
for {
|
||||||
event := <-s.eventChan
|
event := <-s.eventChan
|
||||||
@ -69,6 +70,7 @@ func (s *ZkClient) watch() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConnsRemote
|
||||||
func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) {
|
func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address, err error) {
|
||||||
path := s.getPath(serviceName)
|
path := s.getPath(serviceName)
|
||||||
_, _, _, err = s.conn.ChildrenW(path)
|
_, _, _, err = s.conn.ChildrenW(path)
|
||||||
@ -86,15 +88,18 @@ func (s *ZkClient) GetConnsRemote(serviceName string) (conns []resolver.Address,
|
|||||||
if err == zk.ErrNoNode {
|
if err == zk.ErrNoNode {
|
||||||
return nil, errors.Wrap(err, "this is zk ErrNoNode")
|
return nil, errors.Wrap(err, "this is zk ErrNoNode")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil, errors.Wrap(err, "get children error")
|
return nil, errors.Wrap(err, "get children error")
|
||||||
}
|
}
|
||||||
log.ZDebug(context.Background(), "get addrs from remote", "conn", string(data))
|
log.ZDebug(context.Background(), "get addrs from remote", "conn", string(data))
|
||||||
conns = append(conns, resolver.Address{Addr: string(data), ServerName: serviceName})
|
conns = append(conns, resolver.Address{Addr: string(data), ServerName: serviceName})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return conns, nil
|
return conns, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConns
|
||||||
func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error) {
|
func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grpc.DialOption) ([]grpc.ClientConnInterface, error) {
|
||||||
s.logger.Printf("get conns from client, serviceName: %s", serviceName)
|
s.logger.Printf("get conns from client, serviceName: %s", serviceName)
|
||||||
s.lock.Lock()
|
s.lock.Lock()
|
||||||
@ -114,21 +119,26 @@ func (s *ZkClient) GetConns(ctx context.Context, serviceName string, opts ...grp
|
|||||||
cc, err := grpc.DialContext(ctx, addr.Addr, append(s.options, opts...)...)
|
cc, err := grpc.DialContext(ctx, addr.Addr, append(s.options, opts...)...)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.ZError(context.Background(), "dialContext failed", err, "addr", addr.Addr, "opts", append(s.options, opts...))
|
log.ZError(context.Background(), "dialContext failed", err, "addr", addr.Addr, "opts", append(s.options, opts...))
|
||||||
|
|
||||||
return nil, errs.Wrap(err)
|
return nil, errs.Wrap(err)
|
||||||
}
|
}
|
||||||
conns = append(conns, cc)
|
conns = append(conns, cc)
|
||||||
}
|
}
|
||||||
s.localConns[serviceName] = conns
|
s.localConns[serviceName] = conns
|
||||||
}
|
}
|
||||||
|
|
||||||
return conns, nil
|
return conns, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConn
|
||||||
func (s *ZkClient) GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error) {
|
func (s *ZkClient) GetConn(ctx context.Context, serviceName string, opts ...grpc.DialOption) (grpc.ClientConnInterface, error) {
|
||||||
newOpts := append(s.options, grpc.WithDefaultServiceConfig(fmt.Sprintf(`{"LoadBalancingPolicy": "%s"}`, s.balancerName)))
|
newOpts := append(s.options, grpc.WithDefaultServiceConfig(fmt.Sprintf(`{"LoadBalancingPolicy": "%s"}`, s.balancerName)))
|
||||||
s.logger.Printf("get conn from client, serviceName: %s", serviceName)
|
s.logger.Printf("get conn from client, serviceName: %s", serviceName)
|
||||||
|
|
||||||
return grpc.DialContext(ctx, fmt.Sprintf("%s:///%s", s.scheme, serviceName), append(newOpts, opts...)...)
|
return grpc.DialContext(ctx, fmt.Sprintf("%s:///%s", s.scheme, serviceName), append(newOpts, opts...)...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CloseConn
|
||||||
func (s *ZkClient) CloseConn(conn grpc.ClientConnInterface) {
|
func (s *ZkClient) CloseConn(conn grpc.ClientConnInterface) {
|
||||||
if closer, ok := conn.(io.Closer); ok {
|
if closer, ok := conn.(io.Closer); ok {
|
||||||
closer.Close()
|
closer.Close()
|
||||||
|
|||||||
@ -21,16 +21,20 @@ import (
|
|||||||
"google.golang.org/grpc"
|
"google.golang.org/grpc"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// CreateRpcRootNodes
|
||||||
func (s *ZkClient) CreateRpcRootNodes(serviceNames []string) error {
|
func (s *ZkClient) CreateRpcRootNodes(serviceNames []string) error {
|
||||||
for _, serviceName := range serviceNames {
|
for _, serviceName := range serviceNames {
|
||||||
if err := s.ensureName(serviceName); err != nil && err != zk.ErrNodeExists {
|
if err := s.ensureName(serviceName); err != nil && err != zk.ErrNodeExists {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CreateTempNode
|
||||||
func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, err error) {
|
func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, err error) {
|
||||||
|
|
||||||
return s.conn.CreateProtectedEphemeralSequential(
|
return s.conn.CreateProtectedEphemeralSequential(
|
||||||
s.getPath(rpcRegisterName)+"/"+addr+"_",
|
s.getPath(rpcRegisterName)+"/"+addr+"_",
|
||||||
[]byte(addr),
|
[]byte(addr),
|
||||||
@ -38,6 +42,7 @@ func (s *ZkClient) CreateTempNode(rpcRegisterName, addr string) (node string, er
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Register
|
||||||
func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error {
|
func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc.DialOption) error {
|
||||||
if err := s.ensureName(rpcRegisterName); err != nil {
|
if err := s.ensureName(rpcRegisterName); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -55,9 +60,11 @@ func (s *ZkClient) Register(rpcRegisterName, host string, port int, opts ...grpc
|
|||||||
s.rpcRegisterAddr = addr
|
s.rpcRegisterAddr = addr
|
||||||
s.node = node
|
s.node = node
|
||||||
s.isRegistered = true
|
s.isRegistered = true
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnRegister
|
||||||
func (s *ZkClient) UnRegister() error {
|
func (s *ZkClient) UnRegister() error {
|
||||||
s.lock.Lock()
|
s.lock.Lock()
|
||||||
defer s.lock.Unlock()
|
defer s.lock.Unlock()
|
||||||
@ -72,5 +79,6 @@ func (s *ZkClient) UnRegister() error {
|
|||||||
s.isRegistered = false
|
s.isRegistered = false
|
||||||
s.localConns = make(map[string][]grpc.ClientConnInterface)
|
s.localConns = make(map[string][]grpc.ClientConnInterface)
|
||||||
s.resolvers = make(map[string]*Resolver)
|
s.resolvers = make(map[string]*Resolver)
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import (
|
|||||||
"google.golang.org/grpc/resolver"
|
"google.golang.org/grpc/resolver"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Resolver
|
||||||
type Resolver struct {
|
type Resolver struct {
|
||||||
target resolver.Target
|
target resolver.Target
|
||||||
cc resolver.ClientConn
|
cc resolver.ClientConn
|
||||||
@ -31,6 +32,7 @@ type Resolver struct {
|
|||||||
getConnsRemote func(serviceName string) (conns []resolver.Address, err error)
|
getConnsRemote func(serviceName string) (conns []resolver.Address, err error)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ResolveNowZK
|
||||||
func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) {
|
func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) {
|
||||||
log.ZDebug(
|
log.ZDebug(
|
||||||
context.Background(),
|
context.Background(),
|
||||||
@ -45,6 +47,7 @@ func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) {
|
|||||||
newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/"))
|
newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.ZError(context.Background(), "resolve now error", err, "target", r.target)
|
log.ZError(context.Background(), "resolve now error", err, "target", r.target)
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
r.addrs = newConns
|
r.addrs = newConns
|
||||||
@ -58,15 +61,19 @@ func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) {
|
|||||||
"zk path",
|
"zk path",
|
||||||
r.target.URL.Path,
|
r.target.URL.Path,
|
||||||
)
|
)
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log.ZDebug(context.Background(), "resolve now finished", "target", r.target, "conns", r.addrs)
|
log.ZDebug(context.Background(), "resolve now finished", "target", r.target, "conns", r.addrs)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ResolveNow
|
||||||
func (r *Resolver) ResolveNow(o resolver.ResolveNowOptions) {}
|
func (r *Resolver) ResolveNow(o resolver.ResolveNowOptions) {}
|
||||||
|
|
||||||
|
// Close
|
||||||
func (s *Resolver) Close() {}
|
func (s *Resolver) Close() {}
|
||||||
|
|
||||||
|
// Build
|
||||||
func (s *ZkClient) Build(
|
func (s *ZkClient) Build(
|
||||||
target resolver.Target,
|
target resolver.Target,
|
||||||
cc resolver.ClientConn,
|
cc resolver.ClientConn,
|
||||||
@ -76,6 +83,7 @@ func (s *ZkClient) Build(
|
|||||||
serviceName := strings.TrimLeft(target.URL.Path, "/")
|
serviceName := strings.TrimLeft(target.URL.Path, "/")
|
||||||
if oldResolver, ok := s.resolvers[serviceName]; ok {
|
if oldResolver, ok := s.resolvers[serviceName]; ok {
|
||||||
s.logger.Printf("rpc resolver exist: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
s.logger.Printf("rpc resolver exist: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
||||||
|
|
||||||
return oldResolver, nil
|
return oldResolver, nil
|
||||||
}
|
}
|
||||||
r := &Resolver{}
|
r := &Resolver{}
|
||||||
@ -87,7 +95,9 @@ func (s *ZkClient) Build(
|
|||||||
defer s.lock.Unlock()
|
defer s.lock.Unlock()
|
||||||
s.resolvers[serviceName] = r
|
s.resolvers[serviceName] = r
|
||||||
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
||||||
|
|
||||||
return r, nil
|
return r, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Scheme
|
||||||
func (s *ZkClient) Scheme() string { return s.scheme }
|
func (s *ZkClient) Scheme() string { return s.scheme }
|
||||||
|
|||||||
@ -30,10 +30,12 @@ const (
|
|||||||
timeout = 5
|
timeout = 5
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Logger
|
||||||
type Logger interface {
|
type Logger interface {
|
||||||
Printf(string, ...interface{})
|
Printf(string, ...interface{})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ZkClient
|
||||||
type ZkClient struct {
|
type ZkClient struct {
|
||||||
zkServers []string
|
zkServers []string
|
||||||
zkRoot string
|
zkRoot string
|
||||||
@ -62,14 +64,17 @@ type ZkClient struct {
|
|||||||
logger Logger
|
logger Logger
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ZkOption
|
||||||
type ZkOption func(*ZkClient)
|
type ZkOption func(*ZkClient)
|
||||||
|
|
||||||
|
// WithRoundRobin
|
||||||
func WithRoundRobin() ZkOption {
|
func WithRoundRobin() ZkOption {
|
||||||
return func(client *ZkClient) {
|
return func(client *ZkClient) {
|
||||||
client.balancerName = "round_robin"
|
client.balancerName = "round_robin"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WithUserNameAndPassword
|
||||||
func WithUserNameAndPassword(userName, password string) ZkOption {
|
func WithUserNameAndPassword(userName, password string) ZkOption {
|
||||||
return func(client *ZkClient) {
|
return func(client *ZkClient) {
|
||||||
client.userName = userName
|
client.userName = userName
|
||||||
@ -83,24 +88,28 @@ func WithOptions(opts ...grpc.DialOption) ZkOption {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WithFreq
|
||||||
func WithFreq(freq time.Duration) ZkOption {
|
func WithFreq(freq time.Duration) ZkOption {
|
||||||
return func(client *ZkClient) {
|
return func(client *ZkClient) {
|
||||||
client.ticker = time.NewTicker(freq)
|
client.ticker = time.NewTicker(freq)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WithTimeout
|
||||||
func WithTimeout(timeout int) ZkOption {
|
func WithTimeout(timeout int) ZkOption {
|
||||||
return func(client *ZkClient) {
|
return func(client *ZkClient) {
|
||||||
client.timeout = timeout
|
client.timeout = timeout
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// WithLogger
|
||||||
func WithLogger(logger Logger) ZkOption {
|
func WithLogger(logger Logger) ZkOption {
|
||||||
return func(client *ZkClient) {
|
return func(client *ZkClient) {
|
||||||
client.logger = logger
|
client.logger = logger
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewClient
|
||||||
func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClient, error) {
|
func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClient, error) {
|
||||||
client := &ZkClient{
|
client := &ZkClient{
|
||||||
zkServers: zkServers,
|
zkServers: zkServers,
|
||||||
@ -134,15 +143,18 @@ func NewClient(zkServers []string, zkRoot string, options ...ZkOption) (*ZkClien
|
|||||||
client.conn = conn
|
client.conn = conn
|
||||||
if err := client.ensureRoot(); err != nil {
|
if err := client.ensureRoot(); err != nil {
|
||||||
client.CloseZK()
|
client.CloseZK()
|
||||||
|
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
resolver.Register(client)
|
resolver.Register(client)
|
||||||
go client.refresh()
|
go client.refresh()
|
||||||
go client.watch()
|
go client.watch()
|
||||||
time.Sleep(time.Millisecond * 50)
|
time.Sleep(time.Millisecond * 50)
|
||||||
|
|
||||||
return client, nil
|
return client, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// CloseZK
|
||||||
func (s *ZkClient) CloseZK() {
|
func (s *ZkClient) CloseZK() {
|
||||||
s.conn.Close()
|
s.conn.Close()
|
||||||
}
|
}
|
||||||
@ -158,6 +170,7 @@ func (s *ZkClient) ensureAndCreate(node string) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -189,14 +202,17 @@ func (s *ZkClient) flushResolver(serviceName string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetZkConn
|
||||||
func (s *ZkClient) GetZkConn() *zk.Conn {
|
func (s *ZkClient) GetZkConn() *zk.Conn {
|
||||||
return s.conn
|
return s.conn
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetRootPath
|
||||||
func (s *ZkClient) GetRootPath() string {
|
func (s *ZkClient) GetRootPath() string {
|
||||||
return s.zkRoot
|
return s.zkRoot
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetNode
|
||||||
func (s *ZkClient) GetNode() string {
|
func (s *ZkClient) GetNode() string {
|
||||||
return s.node
|
return s.node
|
||||||
}
|
}
|
||||||
@ -217,10 +233,12 @@ func (s *ZkClient) getAddr(host string, port int) string {
|
|||||||
return net.JoinHostPort(host, strconv.Itoa(port))
|
return net.JoinHostPort(host, strconv.Itoa(port))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AddOption
|
||||||
func (s *ZkClient) AddOption(opts ...grpc.DialOption) {
|
func (s *ZkClient) AddOption(opts ...grpc.DialOption) {
|
||||||
s.options = append(s.options, opts...)
|
s.options = append(s.options, opts...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetClientLocalConns
|
||||||
func (s *ZkClient) GetClientLocalConns() map[string][]grpc.ClientConnInterface {
|
func (s *ZkClient) GetClientLocalConns() map[string][]grpc.ClientConnInterface {
|
||||||
return s.localConns
|
return s.localConns
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,12 +15,12 @@
|
|||||||
package errs
|
package errs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// CodeError
|
||||||
type CodeError interface {
|
type CodeError interface {
|
||||||
Code() int
|
Code() int
|
||||||
Msg() string
|
Msg() string
|
||||||
@ -32,6 +32,7 @@ type CodeError interface {
|
|||||||
error
|
error
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewCodeError
|
||||||
func NewCodeError(code int, msg string) CodeError {
|
func NewCodeError(code int, msg string) CodeError {
|
||||||
return &codeError{
|
return &codeError{
|
||||||
code: code,
|
code: code,
|
||||||
@ -64,6 +65,7 @@ func (e *codeError) WithDetail(detail string) CodeError {
|
|||||||
} else {
|
} else {
|
||||||
d = e.detail + ", " + detail
|
d = e.detail + ", " + detail
|
||||||
}
|
}
|
||||||
|
|
||||||
return &codeError{
|
return &codeError{
|
||||||
code: e.code,
|
code: e.code,
|
||||||
msg: e.msg,
|
msg: e.msg,
|
||||||
@ -93,13 +95,15 @@ func (e *codeError) Is(err error, loose ...bool) bool {
|
|||||||
return codeErr.Code() == e.code
|
return codeErr.Code() == e.code
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *codeError) Error() string {
|
func (e *codeError) Error() string {
|
||||||
return fmt.Sprintf("%s", e.msg)
|
return e.msg
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Unwrap
|
||||||
func Unwrap(err error) error {
|
func Unwrap(err error) error {
|
||||||
for err != nil {
|
for err != nil {
|
||||||
unwrap, ok := err.(interface {
|
unwrap, ok := err.(interface {
|
||||||
@ -110,9 +114,11 @@ func Unwrap(err error) error {
|
|||||||
}
|
}
|
||||||
err = unwrap.Unwrap()
|
err = unwrap.Unwrap()
|
||||||
}
|
}
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Wrap
|
||||||
func Wrap(err error, msg ...string) error {
|
func Wrap(err error, msg ...string) error {
|
||||||
if err == nil {
|
if err == nil {
|
||||||
return nil
|
return nil
|
||||||
@ -120,5 +126,6 @@ func Wrap(err error, msg ...string) error {
|
|||||||
if len(msg) == 0 {
|
if len(msg) == 0 {
|
||||||
return errors.WithStack(err)
|
return errors.WithStack(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
return errors.Wrap(err, strings.Join(msg, ", "))
|
return errors.Wrap(err, strings.Join(msg, ", "))
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,6 +14,7 @@
|
|||||||
|
|
||||||
package errs
|
package errs
|
||||||
|
|
||||||
|
// Relation
|
||||||
var Relation = &relation{m: make(map[int]map[int]struct{})}
|
var Relation = &relation{m: make(map[int]map[int]struct{})}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
@ -52,5 +53,6 @@ func (r *relation) Is(parent, child int) bool {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
_, ok = s[child]
|
_, ok = s[child]
|
||||||
|
|
||||||
return ok
|
return ok
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *UserTokenReq) Check() error {
|
func (x *UserTokenReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -26,9 +27,11 @@ func (x *UserTokenReq) Check() error {
|
|||||||
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
||||||
return errs.ErrArgs.Wrap("platform is invalidate")
|
return errs.ErrArgs.Wrap("platform is invalidate")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ForceLogoutReq) Check() error {
|
func (x *ForceLogoutReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -36,12 +39,15 @@ func (x *ForceLogoutReq) Check() error {
|
|||||||
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
if x.PlatformID > constant.AdminPlatformID || x.PlatformID < constant.IOSPlatformID {
|
||||||
return errs.ErrArgs.Wrap("platformID is invalidate")
|
return errs.ErrArgs.Wrap("platformID is invalidate")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ParseTokenReq) Check() error {
|
func (x *ParseTokenReq) Check() error {
|
||||||
if x.Token == "" {
|
if x.Token == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,13 +16,16 @@ package conversation
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ConversationReq) Check() error {
|
func (x *ConversationReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversation is empty")
|
return errs.ErrArgs.Wrap("conversation is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *Conversation) Check() error {
|
func (x *Conversation) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
@ -36,19 +39,23 @@ func (x *Conversation) Check() error {
|
|||||||
if x.RecvMsgOpt < 0 || x.RecvMsgOpt > 2 {
|
if x.RecvMsgOpt < 0 || x.RecvMsgOpt > 2 {
|
||||||
return errs.ErrArgs.Wrap("RecvMsgOpt is invalid")
|
return errs.ErrArgs.Wrap("RecvMsgOpt is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
//func (x *ModifyConversationFieldReq) Check() error {
|
// // Check
|
||||||
|
// func (x *ModifyConversationFieldReq) Check() error {
|
||||||
// if x.UserIDList == nil {
|
// if x.UserIDList == nil {
|
||||||
// return errs.ErrArgs.Wrap("userIDList is empty")
|
// return errs.ErrArgs.Wrap("userIDList is empty")
|
||||||
// }
|
// }
|
||||||
// if x.Conversation == nil {
|
// if x.Conversation == nil {
|
||||||
// return errs.ErrArgs.Wrap("conversation is empty")
|
// return errs.ErrArgs.Wrap("conversation is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
//
|
||||||
//}
|
// return nil
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetConversationReq) Check() error {
|
func (x *SetConversationReq) Check() error {
|
||||||
if x.Conversation == nil {
|
if x.Conversation == nil {
|
||||||
return errs.ErrArgs.Wrap("Conversation is empty")
|
return errs.ErrArgs.Wrap("Conversation is empty")
|
||||||
@ -56,10 +63,12 @@ func (x *SetConversationReq) Check() error {
|
|||||||
if x.Conversation.ConversationID == "" {
|
if x.Conversation.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
//func (x *SetRecvMsgOptReq) Check() error {
|
// // Check
|
||||||
|
// func (x *SetRecvMsgOptReq) Check() error {
|
||||||
// if x.OwnerUserID == "" {
|
// if x.OwnerUserID == "" {
|
||||||
// return errs.ErrArgs.Wrap("ownerUserID is empty")
|
// return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
// }
|
// }
|
||||||
@ -69,9 +78,11 @@ func (x *SetConversationReq) Check() error {
|
|||||||
// if x.RecvMsgOpt > 2 || x.RecvMsgOpt < 0 {
|
// if x.RecvMsgOpt > 2 || x.RecvMsgOpt < 0 {
|
||||||
// return errs.ErrArgs.Wrap("MsgReceiveOpt is invalid")
|
// return errs.ErrArgs.Wrap("MsgReceiveOpt is invalid")
|
||||||
// }
|
// }
|
||||||
// return nil
|
//
|
||||||
//}
|
// return nil
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationReq) Check() error {
|
func (x *GetConversationReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -79,9 +90,11 @@ func (x *GetConversationReq) Check() error {
|
|||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationsReq) Check() error {
|
func (x *GetConversationsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -89,41 +102,51 @@ func (x *GetConversationsReq) Check() error {
|
|||||||
if x.ConversationIDs == nil {
|
if x.ConversationIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetAllConversationsReq) Check() error {
|
func (x *GetAllConversationsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
//func (x *BatchSetConversationsReq) Check() error {
|
// // Check
|
||||||
|
// func (x *BatchSetConversationsReq) Check() error {
|
||||||
// if x.Conversations == nil {
|
// if x.Conversations == nil {
|
||||||
// return errs.ErrArgs.Wrap("conversations is empty")
|
// return errs.ErrArgs.Wrap("conversations is empty")
|
||||||
// }
|
// }
|
||||||
// if x.OwnerUserID == "" {
|
// if x.OwnerUserID == "" {
|
||||||
// return errs.ErrArgs.Wrap("conversation is empty")
|
// return errs.ErrArgs.Wrap("conversation is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
//
|
||||||
//}
|
// return nil
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetRecvMsgNotNotifyUserIDsReq) Check() error {
|
func (x *GetRecvMsgNotNotifyUserIDsReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *CreateGroupChatConversationsReq) Check() error {
|
func (x *CreateGroupChatConversationsReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetConversationMaxSeqReq) Check() error {
|
func (x *SetConversationMaxSeqReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -134,9 +157,11 @@ func (x *SetConversationMaxSeqReq) Check() error {
|
|||||||
if x.MaxSeq <= 0 {
|
if x.MaxSeq <= 0 {
|
||||||
return errs.ErrArgs.Wrap("maxSeq is invalid")
|
return errs.ErrArgs.Wrap("maxSeq is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetConversationsReq) Check() error {
|
func (x *SetConversationsReq) Check() error {
|
||||||
if x.UserIDs == nil {
|
if x.UserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -144,19 +169,24 @@ func (x *SetConversationsReq) Check() error {
|
|||||||
if x.Conversation == nil {
|
if x.Conversation == nil {
|
||||||
return errs.ErrArgs.Wrap("conversation is empty")
|
return errs.ErrArgs.Wrap("conversation is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetUserConversationIDsHashReq) Check() error {
|
func (x *GetUserConversationIDsHashReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationsByConversationIDReq) Check() error {
|
func (x *GetConversationsByConversationIDReq) Check() error {
|
||||||
if x.ConversationIDs == nil {
|
if x.ConversationIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@ package friend
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetPaginationFriendsReq) Check() error {
|
func (x *GetPaginationFriendsReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -26,9 +27,11 @@ func (x *GetPaginationFriendsReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ApplyToAddFriendReq) Check() error {
|
func (x *ApplyToAddFriendReq) Check() error {
|
||||||
if x.ToUserID == "" {
|
if x.ToUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("toUserID is empty")
|
return errs.ErrArgs.Wrap("toUserID is empty")
|
||||||
@ -36,9 +39,11 @@ func (x *ApplyToAddFriendReq) Check() error {
|
|||||||
if x.FromUserID == "" {
|
if x.FromUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ImportFriendReq) Check() error {
|
func (x *ImportFriendReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -46,9 +51,11 @@ func (x *ImportFriendReq) Check() error {
|
|||||||
if x.FriendUserIDs == nil {
|
if x.FriendUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("friendUserIDS is empty")
|
return errs.ErrArgs.Wrap("friendUserIDS is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetPaginationFriendsApplyToReq) Check() error {
|
func (x *GetPaginationFriendsApplyToReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -59,9 +66,11 @@ func (x *GetPaginationFriendsApplyToReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetDesignatedFriendsReq) Check() error {
|
func (x *GetDesignatedFriendsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -69,9 +78,11 @@ func (x *GetDesignatedFriendsReq) Check() error {
|
|||||||
if x.FriendUserIDs == nil {
|
if x.FriendUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("friendUserIDS is empty")
|
return errs.ErrArgs.Wrap("friendUserIDS is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *AddBlackReq) Check() error {
|
func (x *AddBlackReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -79,9 +90,11 @@ func (x *AddBlackReq) Check() error {
|
|||||||
if x.BlackUserID == "" {
|
if x.BlackUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("BlackUserID is empty")
|
return errs.ErrArgs.Wrap("BlackUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *RemoveBlackReq) Check() error {
|
func (x *RemoveBlackReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -89,9 +102,11 @@ func (x *RemoveBlackReq) Check() error {
|
|||||||
if x.BlackUserID == "" {
|
if x.BlackUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("BlackUserID is empty")
|
return errs.ErrArgs.Wrap("BlackUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetPaginationBlacksReq) Check() error {
|
func (x *GetPaginationBlacksReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -102,9 +117,11 @@ func (x *GetPaginationBlacksReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *IsFriendReq) Check() error {
|
func (x *IsFriendReq) Check() error {
|
||||||
if x.UserID1 == "" {
|
if x.UserID1 == "" {
|
||||||
return errs.ErrArgs.Wrap("userID1 is empty")
|
return errs.ErrArgs.Wrap("userID1 is empty")
|
||||||
@ -112,9 +129,11 @@ func (x *IsFriendReq) Check() error {
|
|||||||
if x.UserID2 == "" {
|
if x.UserID2 == "" {
|
||||||
return errs.ErrArgs.Wrap("userID2 is empty")
|
return errs.ErrArgs.Wrap("userID2 is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *IsBlackReq) Check() error {
|
func (x *IsBlackReq) Check() error {
|
||||||
if x.UserID1 == "" {
|
if x.UserID1 == "" {
|
||||||
return errs.ErrArgs.Wrap("userID1 is empty")
|
return errs.ErrArgs.Wrap("userID1 is empty")
|
||||||
@ -122,9 +141,11 @@ func (x *IsBlackReq) Check() error {
|
|||||||
if x.UserID2 == "" {
|
if x.UserID2 == "" {
|
||||||
return errs.ErrArgs.Wrap("userID2 is empty")
|
return errs.ErrArgs.Wrap("userID2 is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DeleteFriendReq) Check() error {
|
func (x *DeleteFriendReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID1 is empty")
|
return errs.ErrArgs.Wrap("userID1 is empty")
|
||||||
@ -132,9 +153,11 @@ func (x *DeleteFriendReq) Check() error {
|
|||||||
if x.FriendUserID == "" {
|
if x.FriendUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID2 is empty")
|
return errs.ErrArgs.Wrap("userID2 is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *RespondFriendApplyReq) Check() error {
|
func (x *RespondFriendApplyReq) Check() error {
|
||||||
if x.ToUserID == "" {
|
if x.ToUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("toUserID is empty")
|
return errs.ErrArgs.Wrap("toUserID is empty")
|
||||||
@ -142,9 +165,11 @@ func (x *RespondFriendApplyReq) Check() error {
|
|||||||
if x.FromUserID == "" {
|
if x.FromUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetFriendRemarkReq) Check() error {
|
func (x *SetFriendRemarkReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
return errs.ErrArgs.Wrap("ownerUserID is empty")
|
||||||
@ -152,9 +177,11 @@ func (x *SetFriendRemarkReq) Check() error {
|
|||||||
if x.FriendUserID == "" {
|
if x.FriendUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetPaginationFriendsApplyFromReq) Check() error {
|
func (x *GetPaginationFriendsApplyFromReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
@ -165,12 +192,15 @@ func (x *GetPaginationFriendsApplyFromReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetFriendIDsReq) Check() error {
|
func (x *GetFriendIDsReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@ package group
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *CreateGroupReq) Check() error {
|
func (x *CreateGroupReq) Check() error {
|
||||||
if x.MemberUserIDs == nil {
|
if x.MemberUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("memberUserIDS is empty")
|
return errs.ErrArgs.Wrap("memberUserIDS is empty")
|
||||||
@ -29,16 +30,20 @@ func (x *CreateGroupReq) Check() error {
|
|||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("ownerUserID")
|
return errs.ErrArgs.Wrap("ownerUserID")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupsInfoReq) Check() error {
|
func (x *GetGroupsInfoReq) Check() error {
|
||||||
if x.GroupIDs == nil {
|
if x.GroupIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("GroupIDs")
|
return errs.ErrArgs.Wrap("GroupIDs")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetGroupInfoReq) Check() error {
|
func (x *SetGroupInfoReq) Check() error {
|
||||||
if x.GroupInfoForSet == nil {
|
if x.GroupInfoForSet == nil {
|
||||||
return errs.ErrArgs.Wrap("GroupInfoForSets is empty")
|
return errs.ErrArgs.Wrap("GroupInfoForSets is empty")
|
||||||
@ -46,9 +51,11 @@ func (x *SetGroupInfoReq) Check() error {
|
|||||||
if x.GroupInfoForSet.GroupID == "" {
|
if x.GroupInfoForSet.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupApplicationListReq) Check() error {
|
func (x *GetGroupApplicationListReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -59,9 +66,11 @@ func (x *GetGroupApplicationListReq) Check() error {
|
|||||||
if x.FromUserID == "" {
|
if x.FromUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetUserReqApplicationListReq) Check() error {
|
func (x *GetUserReqApplicationListReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
@ -72,9 +81,11 @@ func (x *GetUserReqApplicationListReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *TransferGroupOwnerReq) Check() error {
|
func (x *TransferGroupOwnerReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -85,9 +96,11 @@ func (x *TransferGroupOwnerReq) Check() error {
|
|||||||
if x.NewOwnerUserID == "" {
|
if x.NewOwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("newOwnerUserID is empty")
|
return errs.ErrArgs.Wrap("newOwnerUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *JoinGroupReq) Check() error {
|
func (x *JoinGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -100,9 +113,11 @@ func (x *JoinGroupReq) Check() error {
|
|||||||
return errs.ErrArgs.Wrap("inviterUserID is empty")
|
return errs.ErrArgs.Wrap("inviterUserID is empty")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GroupApplicationResponseReq) Check() error {
|
func (x *GroupApplicationResponseReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -113,16 +128,20 @@ func (x *GroupApplicationResponseReq) Check() error {
|
|||||||
if x.HandleResult > 1 || x.HandleResult < -1 {
|
if x.HandleResult > 1 || x.HandleResult < -1 {
|
||||||
return errs.ErrArgs.Wrap("handleResult is invalid")
|
return errs.ErrArgs.Wrap("handleResult is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *QuitGroupReq) Check() error {
|
func (x *QuitGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMemberListReq) Check() error {
|
func (x *GetGroupMemberListReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -136,9 +155,11 @@ func (x *GetGroupMemberListReq) Check() error {
|
|||||||
if x.Filter < 0 || x.Filter > 5 {
|
if x.Filter < 0 || x.Filter > 5 {
|
||||||
return errs.ErrArgs.Wrap("filter is invalid")
|
return errs.ErrArgs.Wrap("filter is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMembersInfoReq) Check() error {
|
func (x *GetGroupMembersInfoReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -146,9 +167,11 @@ func (x *GetGroupMembersInfoReq) Check() error {
|
|||||||
if x.UserIDs == nil {
|
if x.UserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("userIDs is empty")
|
return errs.ErrArgs.Wrap("userIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *KickGroupMemberReq) Check() error {
|
func (x *KickGroupMemberReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -156,9 +179,11 @@ func (x *KickGroupMemberReq) Check() error {
|
|||||||
if x.KickedUserIDs == nil {
|
if x.KickedUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("kickUserIDs is empty")
|
return errs.ErrArgs.Wrap("kickUserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetJoinedGroupListReq) Check() error {
|
func (x *GetJoinedGroupListReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -169,9 +194,11 @@ func (x *GetJoinedGroupListReq) Check() error {
|
|||||||
if x.FromUserID == "" {
|
if x.FromUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("fromUserID is empty")
|
return errs.ErrArgs.Wrap("fromUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *InviteUserToGroupReq) Check() error {
|
func (x *InviteUserToGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -179,9 +206,11 @@ func (x *InviteUserToGroupReq) Check() error {
|
|||||||
if x.InvitedUserIDs == nil {
|
if x.InvitedUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("invitedUserIDs is empty")
|
return errs.ErrArgs.Wrap("invitedUserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupAllMemberReq) Check() error {
|
func (x *GetGroupAllMemberReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -192,9 +221,11 @@ func (x *GetGroupAllMemberReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupsReq) Check() error {
|
func (x *GetGroupsReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -202,16 +233,20 @@ func (x *GetGroupsReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMemberReq) Check() error {
|
func (x *GetGroupMemberReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMembersCMSReq) Check() error {
|
func (x *GetGroupMembersCMSReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -222,16 +257,20 @@ func (x *GetGroupMembersCMSReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DismissGroupReq) Check() error {
|
func (x *DismissGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MuteGroupMemberReq) Check() error {
|
func (x *MuteGroupMemberReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -242,9 +281,11 @@ func (x *MuteGroupMemberReq) Check() error {
|
|||||||
if x.MutedSeconds <= 0 {
|
if x.MutedSeconds <= 0 {
|
||||||
return errs.ErrArgs.Wrap("mutedSeconds is empty")
|
return errs.ErrArgs.Wrap("mutedSeconds is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *CancelMuteGroupMemberReq) Check() error {
|
func (x *CancelMuteGroupMemberReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
@ -252,37 +293,47 @@ func (x *CancelMuteGroupMemberReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MuteGroupReq) Check() error {
|
func (x *MuteGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *CancelMuteGroupReq) Check() error {
|
func (x *CancelMuteGroupReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("groupID is empty")
|
return errs.ErrArgs.Wrap("groupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetJoinedSuperGroupListReq) Check() error {
|
func (x *GetJoinedSuperGroupListReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetSuperGroupsInfoReq) Check() error {
|
func (x *GetSuperGroupsInfoReq) Check() error {
|
||||||
if x.GroupIDs == nil {
|
if x.GroupIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("GroupIDs is empty")
|
return errs.ErrArgs.Wrap("GroupIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetGroupMemberInfo) Check() error {
|
func (x *SetGroupMemberInfo) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
@ -290,23 +341,29 @@ func (x *SetGroupMemberInfo) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetGroupMemberInfoReq) Check() error {
|
func (x *SetGroupMemberInfoReq) Check() error {
|
||||||
if x.Members == nil {
|
if x.Members == nil {
|
||||||
return errs.ErrArgs.Wrap("Members is empty")
|
return errs.ErrArgs.Wrap("Members is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupAbstractInfoReq) Check() error {
|
func (x *GetGroupAbstractInfoReq) Check() error {
|
||||||
if x.GroupIDs == nil {
|
if x.GroupIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetUserInGroupMembersReq) Check() error {
|
func (x *GetUserInGroupMembersReq) Check() error {
|
||||||
if x.GroupIDs == nil {
|
if x.GroupIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
@ -314,16 +371,20 @@ func (x *GetUserInGroupMembersReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMemberUserIDsReq) Check() error {
|
func (x *GetGroupMemberUserIDsReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMemberRoleLevelReq) Check() error {
|
func (x *GetGroupMemberRoleLevelReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
@ -331,16 +392,20 @@ func (x *GetGroupMemberRoleLevelReq) Check() error {
|
|||||||
if x.RoleLevels == nil {
|
if x.RoleLevels == nil {
|
||||||
return errs.ErrArgs.Wrap("rolesLevel is empty")
|
return errs.ErrArgs.Wrap("rolesLevel is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupInfoCacheReq) Check() error {
|
func (x *GetGroupInfoCacheReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGroupMemberCacheReq) Check() error {
|
func (x *GetGroupMemberCacheReq) Check() error {
|
||||||
if x.GroupID == "" {
|
if x.GroupID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
@ -348,5 +413,6 @@ func (x *GetGroupMemberCacheReq) Check() error {
|
|||||||
if x.GroupMemberID == "" {
|
if x.GroupMemberID == "" {
|
||||||
return errs.ErrArgs.Wrap("GroupMemberID is empty")
|
return errs.ErrArgs.Wrap("GroupMemberID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,13 +16,16 @@ package msg
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetMaxAndMinSeqReq) Check() error {
|
func (x *GetMaxAndMinSeqReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SendMsgReq) Check() error {
|
func (x *SendMsgReq) Check() error {
|
||||||
if x.MsgData == nil {
|
if x.MsgData == nil {
|
||||||
return errs.ErrArgs.Wrap("MsgData is empty")
|
return errs.ErrArgs.Wrap("MsgData is empty")
|
||||||
@ -30,21 +33,25 @@ func (x *SendMsgReq) Check() error {
|
|||||||
if err := x.MsgData.Check(); err != nil {
|
if err := x.MsgData.Check(); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetSendMsgStatusReq) Check() error {
|
func (x *SetSendMsgStatusReq) Check() error {
|
||||||
if x.Status < 0 || x.Status > 3 {
|
if x.Status < 0 || x.Status > 3 {
|
||||||
return errs.ErrArgs.Wrap("status is invalid")
|
return errs.ErrArgs.Wrap("status is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetSendMsgStatusReq) Check() error {
|
func (x *GetSendMsgStatusReq) Check() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
//func (x *ModifyMessageReactionExtensionsReq) Check() error {
|
// func (x *ModifyMessageReactionExtensionsReq) Check() error {
|
||||||
// if x.ConversationID == "" {
|
// if x.ConversationID == "" {
|
||||||
// return errs.ErrArgs.Wrap("conversationID is empty")
|
// return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
// }
|
// }
|
||||||
@ -55,9 +62,9 @@ func (x *GetSendMsgStatusReq) Check() error {
|
|||||||
// return errs.ErrArgs.Wrap("reactionExtensions is empty")
|
// return errs.ErrArgs.Wrap("reactionExtensions is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *SetMessageReactionExtensionsReq) Check() error {
|
// func (x *SetMessageReactionExtensionsReq) Check() error {
|
||||||
// if x.ConversationID == "" {
|
// if x.ConversationID == "" {
|
||||||
// return errs.ErrArgs.Wrap("conversationID is empty")
|
// return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
// }
|
// }
|
||||||
@ -68,9 +75,9 @@ func (x *GetSendMsgStatusReq) Check() error {
|
|||||||
// return errs.ErrArgs.Wrap("reactionExtensions is empty")
|
// return errs.ErrArgs.Wrap("reactionExtensions is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *GetMessagesReactionExtensionsReq) Check() error {
|
// func (x *GetMessagesReactionExtensionsReq) Check() error {
|
||||||
// if x.ConversationID == "" {
|
// if x.ConversationID == "" {
|
||||||
// return errs.ErrArgs.Wrap("conversationID is empty")
|
// return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
// }
|
// }
|
||||||
@ -84,9 +91,9 @@ func (x *GetSendMsgStatusReq) Check() error {
|
|||||||
// return errs.ErrArgs.Wrap("TypeKeys is empty")
|
// return errs.ErrArgs.Wrap("TypeKeys is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *DeleteMessagesReactionExtensionsReq) Check() error {
|
// func (x *DeleteMessagesReactionExtensionsReq) Check() error {
|
||||||
// if x.ConversationID == "" {
|
// if x.ConversationID == "" {
|
||||||
// return errs.ErrArgs.Wrap("conversationID is empty")
|
// return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
// }
|
// }
|
||||||
@ -97,12 +104,14 @@ func (x *GetSendMsgStatusReq) Check() error {
|
|||||||
// return errs.ErrArgs.Wrap("ReactionExtensions is empty")
|
// return errs.ErrArgs.Wrap("ReactionExtensions is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DelMsgsReq) Check() error {
|
func (x *DelMsgsReq) Check() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *RevokeMsgReq) Check() error {
|
func (x *RevokeMsgReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -113,9 +122,11 @@ func (x *RevokeMsgReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MarkMsgsAsReadReq) Check() error {
|
func (x *MarkMsgsAsReadReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -131,9 +142,11 @@ func (x *MarkMsgsAsReadReq) Check() error {
|
|||||||
return errs.ErrArgs.Wrap("seqs has 0 value is invalid")
|
return errs.ErrArgs.Wrap("seqs has 0 value is invalid")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MarkConversationAsReadReq) Check() error {
|
func (x *MarkConversationAsReadReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -149,9 +162,11 @@ func (x *MarkConversationAsReadReq) Check() error {
|
|||||||
return errs.ErrArgs.Wrap("seqs has 0 value is invalid")
|
return errs.ErrArgs.Wrap("seqs has 0 value is invalid")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetConversationHasReadSeqReq) Check() error {
|
func (x *SetConversationHasReadSeqReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -162,9 +177,11 @@ func (x *SetConversationHasReadSeqReq) Check() error {
|
|||||||
if x.HasReadSeq < 1 {
|
if x.HasReadSeq < 1 {
|
||||||
return errs.ErrArgs.Wrap("hasReadSeq is invalid")
|
return errs.ErrArgs.Wrap("hasReadSeq is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *ClearConversationsMsgReq) Check() error {
|
func (x *ClearConversationsMsgReq) Check() error {
|
||||||
if x.ConversationIDs == nil {
|
if x.ConversationIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
||||||
@ -172,16 +189,20 @@ func (x *ClearConversationsMsgReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *UserClearAllMsgReq) Check() error {
|
func (x *UserClearAllMsgReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DeleteMsgsReq) Check() error {
|
func (x *DeleteMsgsReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
@ -192,26 +213,33 @@ func (x *DeleteMsgsReq) Check() error {
|
|||||||
if x.Seqs == nil {
|
if x.Seqs == nil {
|
||||||
return errs.ErrArgs.Wrap("seqs is empty")
|
return errs.ErrArgs.Wrap("seqs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DeleteMsgPhysicalReq) Check() error {
|
func (x *DeleteMsgPhysicalReq) Check() error {
|
||||||
if x.ConversationIDs == nil {
|
if x.ConversationIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
return errs.ErrArgs.Wrap("conversationIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationMaxSeqReq) Check() error {
|
func (x *GetConversationMaxSeqReq) Check() error {
|
||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("conversationID is empty")
|
return errs.ErrArgs.Wrap("conversationID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationsHasReadAndMaxSeqReq) Check() error {
|
func (x *GetConversationsHasReadAndMaxSeqReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("userID is empty")
|
return errs.ErrArgs.Wrap("userID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@ package msggateway
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *OnlinePushMsgReq) Check() error {
|
func (x *OnlinePushMsgReq) Check() error {
|
||||||
if x.MsgData == nil {
|
if x.MsgData == nil {
|
||||||
return errs.ErrArgs.Wrap("MsgData is empty")
|
return errs.ErrArgs.Wrap("MsgData is empty")
|
||||||
@ -26,9 +27,11 @@ func (x *OnlinePushMsgReq) Check() error {
|
|||||||
if x.PushToUserID == "" {
|
if x.PushToUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("PushToUserID is empty")
|
return errs.ErrArgs.Wrap("PushToUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *OnlineBatchPushOneMsgReq) Check() error {
|
func (x *OnlineBatchPushOneMsgReq) Check() error {
|
||||||
if x.MsgData == nil {
|
if x.MsgData == nil {
|
||||||
return errs.ErrArgs.Wrap("MsgData is empty")
|
return errs.ErrArgs.Wrap("MsgData is empty")
|
||||||
@ -39,16 +42,20 @@ func (x *OnlineBatchPushOneMsgReq) Check() error {
|
|||||||
if x.PushToUserIDs == nil {
|
if x.PushToUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("PushToUserIDs is empty")
|
return errs.ErrArgs.Wrap("PushToUserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetUsersOnlineStatusReq) Check() error {
|
func (x *GetUsersOnlineStatusReq) Check() error {
|
||||||
if x.UserIDs == nil {
|
if x.UserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("UserIDs is empty")
|
return errs.ErrArgs.Wrap("UserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *KickUserOfflineReq) Check() error {
|
func (x *KickUserOfflineReq) Check() error {
|
||||||
if x.PlatformID < 1 || x.PlatformID > 9 {
|
if x.PlatformID < 1 || x.PlatformID > 9 {
|
||||||
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
||||||
@ -56,9 +63,11 @@ func (x *KickUserOfflineReq) Check() error {
|
|||||||
if x.KickUserIDList == nil {
|
if x.KickUserIDList == nil {
|
||||||
return errs.ErrArgs.Wrap("KickUserIDList is empty")
|
return errs.ErrArgs.Wrap("KickUserIDList is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MultiTerminalLoginCheckReq) Check() error {
|
func (x *MultiTerminalLoginCheckReq) Check() error {
|
||||||
if x.PlatformID < 1 || x.PlatformID > 9 {
|
if x.PlatformID < 1 || x.PlatformID > 9 {
|
||||||
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
||||||
@ -69,5 +78,6 @@ func (x *MultiTerminalLoginCheckReq) Check() error {
|
|||||||
if x.Token == "" {
|
if x.Token == "" {
|
||||||
return errs.ErrArgs.Wrap("Token is empty")
|
return errs.ErrArgs.Wrap("Token is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@ package push
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *PushMsgReq) Check() error {
|
func (x *PushMsgReq) Check() error {
|
||||||
if x.MsgData == nil {
|
if x.MsgData == nil {
|
||||||
return errs.ErrArgs.Wrap("MsgData is empty")
|
return errs.ErrArgs.Wrap("MsgData is empty")
|
||||||
@ -26,9 +27,11 @@ func (x *PushMsgReq) Check() error {
|
|||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("ConversationID is empty")
|
return errs.ErrArgs.Wrap("ConversationID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *DelUserPushTokenReq) Check() error {
|
func (x *DelUserPushTokenReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
@ -36,5 +39,6 @@ func (x *DelUserPushTokenReq) Check() error {
|
|||||||
if x.PlatformID < 1 || x.PlatformID > 9 {
|
if x.PlatformID < 1 || x.PlatformID > 9 {
|
||||||
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *MsgData) Check() error {
|
func (x *MsgData) Check() error {
|
||||||
if x.SendID == "" {
|
if x.SendID == "" {
|
||||||
return errs.ErrArgs.Wrap("sendID is empty")
|
return errs.ErrArgs.Wrap("sendID is empty")
|
||||||
@ -42,5 +43,6 @@ func (x *MsgData) Check() error {
|
|||||||
return errs.ErrArgs.Wrap("GroupID is empty")
|
return errs.ErrArgs.Wrap("GroupID is empty")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,7 +16,7 @@ package third
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
//func (x *ApplyPutReq) Check() error {
|
// func (x *ApplyPutReq) Check() error {
|
||||||
// if x.PutID == "" {
|
// if x.PutID == "" {
|
||||||
// return errs.ErrArgs.Wrap("PutID is empty")
|
// return errs.ErrArgs.Wrap("PutID is empty")
|
||||||
// }
|
// }
|
||||||
@ -24,36 +24,37 @@ import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
|||||||
// return errs.ErrArgs.Wrap("ContentType is empty")
|
// return errs.ErrArgs.Wrap("ContentType is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *ConfirmPutReq) Check() error {
|
// func (x *ConfirmPutReq) Check() error {
|
||||||
// if x.PutID == "" {
|
// if x.PutID == "" {
|
||||||
// return errs.ErrArgs.Wrap("PutID is empty")
|
// return errs.ErrArgs.Wrap("PutID is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *GetUrlReq) Check() error {
|
// func (x *GetUrlReq) Check() error {
|
||||||
// if x.Name == "" {
|
// if x.Name == "" {
|
||||||
// return errs.ErrArgs.Wrap("Name is empty")
|
// return errs.ErrArgs.Wrap("Name is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *GetPutReq) Check() error {
|
// func (x *GetPutReq) Check() error {
|
||||||
// if x.PutID == "" {
|
// if x.PutID == "" {
|
||||||
// return errs.ErrArgs.Wrap("PutID is empty")
|
// return errs.ErrArgs.Wrap("PutID is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
//
|
//
|
||||||
//func (x *GetHashInfoReq) Check() error {
|
// func (x *GetHashInfoReq) Check() error {
|
||||||
// if x.Hash == "" {
|
// if x.Hash == "" {
|
||||||
// return errs.ErrArgs.Wrap("Hash is empty")
|
// return errs.ErrArgs.Wrap("Hash is empty")
|
||||||
// }
|
// }
|
||||||
// return nil
|
// return nil
|
||||||
//}
|
// }
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *FcmUpdateTokenReq) Check() error {
|
func (x *FcmUpdateTokenReq) Check() error {
|
||||||
if x.PlatformID < 1 || x.PlatformID > 9 {
|
if x.PlatformID < 1 || x.PlatformID > 9 {
|
||||||
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
return errs.ErrArgs.Wrap("PlatformID is invalid")
|
||||||
@ -64,12 +65,15 @@ func (x *FcmUpdateTokenReq) Check() error {
|
|||||||
if x.Account == "" {
|
if x.Account == "" {
|
||||||
return errs.ErrArgs.Wrap("Account is empty")
|
return errs.ErrArgs.Wrap("Account is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetAppBadgeReq) Check() error {
|
func (x *SetAppBadgeReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,6 +16,7 @@ package user
|
|||||||
|
|
||||||
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
import "github.com/OpenIMSDK/Open-IM-Server/pkg/errs"
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetAllUserIDReq) Check() error {
|
func (x *GetAllUserIDReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -23,23 +24,29 @@ func (x *GetAllUserIDReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *AccountCheckReq) Check() error {
|
func (x *AccountCheckReq) Check() error {
|
||||||
if x.CheckUserIDs == nil {
|
if x.CheckUserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("CheckUserIDs is empty")
|
return errs.ErrArgs.Wrap("CheckUserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetDesignateUsersReq) Check() error {
|
func (x *GetDesignateUsersReq) Check() error {
|
||||||
if x.UserIDs == nil {
|
if x.UserIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("UserIDs is empty")
|
return errs.ErrArgs.Wrap("UserIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *UpdateUserInfoReq) Check() error {
|
func (x *UpdateUserInfoReq) Check() error {
|
||||||
if x.UserInfo == nil {
|
if x.UserInfo == nil {
|
||||||
return errs.ErrArgs.Wrap("UserInfo is empty")
|
return errs.ErrArgs.Wrap("UserInfo is empty")
|
||||||
@ -47,9 +54,11 @@ func (x *UpdateUserInfoReq) Check() error {
|
|||||||
if x.UserInfo.UserID == "" {
|
if x.UserInfo.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetGlobalRecvMessageOptReq) Check() error {
|
func (x *SetGlobalRecvMessageOptReq) Check() error {
|
||||||
if x.GlobalRecvMsgOpt > 2 || x.GlobalRecvMsgOpt < 0 {
|
if x.GlobalRecvMsgOpt > 2 || x.GlobalRecvMsgOpt < 0 {
|
||||||
return errs.ErrArgs.Wrap("GlobalRecvMsgOpt is invalid")
|
return errs.ErrArgs.Wrap("GlobalRecvMsgOpt is invalid")
|
||||||
@ -57,9 +66,11 @@ func (x *SetGlobalRecvMessageOptReq) Check() error {
|
|||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetConversationReq) Check() error {
|
func (x *SetConversationReq) Check() error {
|
||||||
if err := x.Conversation.Check(); err != nil {
|
if err := x.Conversation.Check(); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -67,9 +78,11 @@ func (x *SetConversationReq) Check() error {
|
|||||||
if x.NotificationType < 1 || x.NotificationType > 3 {
|
if x.NotificationType < 1 || x.NotificationType > 3 {
|
||||||
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *SetRecvMsgOptReq) Check() error {
|
func (x *SetRecvMsgOptReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
@ -83,9 +96,11 @@ func (x *SetRecvMsgOptReq) Check() error {
|
|||||||
if x.NotificationType < 1 || x.NotificationType > 3 {
|
if x.NotificationType < 1 || x.NotificationType > 3 {
|
||||||
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationReq) Check() error {
|
func (x *GetConversationReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
@ -93,9 +108,11 @@ func (x *GetConversationReq) Check() error {
|
|||||||
if x.ConversationID == "" {
|
if x.ConversationID == "" {
|
||||||
return errs.ErrArgs.Wrap("ConversationID is empty")
|
return errs.ErrArgs.Wrap("ConversationID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetConversationsReq) Check() error {
|
func (x *GetConversationsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
@ -103,16 +120,20 @@ func (x *GetConversationsReq) Check() error {
|
|||||||
if x.ConversationIDs == nil {
|
if x.ConversationIDs == nil {
|
||||||
return errs.ErrArgs.Wrap("ConversationIDs is empty")
|
return errs.ErrArgs.Wrap("ConversationIDs is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetAllConversationsReq) Check() error {
|
func (x *GetAllConversationsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *BatchSetConversationsReq) Check() error {
|
func (x *BatchSetConversationsReq) Check() error {
|
||||||
if x.OwnerUserID == "" {
|
if x.OwnerUserID == "" {
|
||||||
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
return errs.ErrArgs.Wrap("OwnerUserID is empty")
|
||||||
@ -123,9 +144,11 @@ func (x *BatchSetConversationsReq) Check() error {
|
|||||||
if x.NotificationType < 1 || x.NotificationType > 3 {
|
if x.NotificationType < 1 || x.NotificationType > 3 {
|
||||||
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
return errs.ErrArgs.Wrap("NotificationType is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetPaginationUsersReq) Check() error {
|
func (x *GetPaginationUsersReq) Check() error {
|
||||||
if x.Pagination == nil {
|
if x.Pagination == nil {
|
||||||
return errs.ErrArgs.Wrap("pagination is empty")
|
return errs.ErrArgs.Wrap("pagination is empty")
|
||||||
@ -133,23 +156,29 @@ func (x *GetPaginationUsersReq) Check() error {
|
|||||||
if x.Pagination.PageNumber < 1 {
|
if x.Pagination.PageNumber < 1 {
|
||||||
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
return errs.ErrArgs.Wrap("pageNumber is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *UserRegisterReq) Check() error {
|
func (x *UserRegisterReq) Check() error {
|
||||||
if x.Users == nil {
|
if x.Users == nil {
|
||||||
return errs.ErrArgs.Wrap("Users is empty")
|
return errs.ErrArgs.Wrap("Users is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *GetGlobalRecvMessageOptReq) Check() error {
|
func (x *GetGlobalRecvMessageOptReq) Check() error {
|
||||||
if x.UserID == "" {
|
if x.UserID == "" {
|
||||||
return errs.ErrArgs.Wrap("UserID is empty")
|
return errs.ErrArgs.Wrap("UserID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check
|
||||||
func (x *UserRegisterCountReq) Check() error {
|
func (x *UserRegisterCountReq) Check() error {
|
||||||
if x.Start <= 0 {
|
if x.Start <= 0 {
|
||||||
return errs.ErrArgs.Wrap("start is invalid")
|
return errs.ErrArgs.Wrap("start is invalid")
|
||||||
@ -157,5 +186,6 @@ func (x *UserRegisterCountReq) Check() error {
|
|||||||
if x.End <= 0 {
|
if x.End <= 0 {
|
||||||
return errs.ErrArgs.Wrap("end is invalid")
|
return errs.ErrArgs.Wrap("end is invalid")
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,137 +20,172 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Double
|
||||||
func Double(value float64) *DoubleValue {
|
func Double(value float64) *DoubleValue {
|
||||||
return &DoubleValue{Value: value}
|
return &DoubleValue{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Float
|
||||||
func Float(value float32) *FloatValue {
|
func Float(value float32) *FloatValue {
|
||||||
return &FloatValue{Value: value}
|
return &FloatValue{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Int64
|
||||||
func Int64(value int64) *Int64Value {
|
func Int64(value int64) *Int64Value {
|
||||||
return &Int64Value{Value: value}
|
return &Int64Value{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UInt64
|
||||||
func UInt64(value uint64) *UInt64Value {
|
func UInt64(value uint64) *UInt64Value {
|
||||||
return &UInt64Value{Value: value}
|
return &UInt64Value{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Int32
|
||||||
func Int32(value int32) *Int32Value {
|
func Int32(value int32) *Int32Value {
|
||||||
return &Int32Value{Value: value}
|
return &Int32Value{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UInt32
|
||||||
func UInt32(value uint32) *UInt32Value {
|
func UInt32(value uint32) *UInt32Value {
|
||||||
return &UInt32Value{Value: value}
|
return &UInt32Value{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Bool
|
||||||
func Bool(value bool) *BoolValue {
|
func Bool(value bool) *BoolValue {
|
||||||
return &BoolValue{Value: value}
|
return &BoolValue{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// String
|
||||||
func String(value string) *StringValue {
|
func String(value string) *StringValue {
|
||||||
return &StringValue{Value: value}
|
return &StringValue{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Bytes
|
||||||
func Bytes(value []byte) *BytesValue {
|
func Bytes(value []byte) *BytesValue {
|
||||||
return &BytesValue{Value: value}
|
return &BytesValue{Value: value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DoublePtr
|
||||||
func DoublePtr(value *float64) *DoubleValue {
|
func DoublePtr(value *float64) *DoubleValue {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &DoubleValue{Value: *value}
|
return &DoubleValue{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FloatPtr
|
||||||
func FloatPtr(value *float32) *FloatValue {
|
func FloatPtr(value *float32) *FloatValue {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &FloatValue{Value: *value}
|
return &FloatValue{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Int64Ptr
|
||||||
func Int64Ptr(value *int64) *Int64Value {
|
func Int64Ptr(value *int64) *Int64Value {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &Int64Value{Value: *value}
|
return &Int64Value{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UInt64Ptr
|
||||||
func UInt64Ptr(value *uint64) *UInt64Value {
|
func UInt64Ptr(value *uint64) *UInt64Value {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &UInt64Value{Value: *value}
|
return &UInt64Value{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Int32Ptr
|
||||||
func Int32Ptr(value *int32) *Int32Value {
|
func Int32Ptr(value *int32) *Int32Value {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &Int32Value{Value: *value}
|
return &Int32Value{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UInt32Ptr
|
||||||
func UInt32Ptr(value *uint32) *UInt32Value {
|
func UInt32Ptr(value *uint32) *UInt32Value {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &UInt32Value{Value: *value}
|
return &UInt32Value{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// BoolPtr
|
||||||
func BoolPtr(value *bool) *BoolValue {
|
func BoolPtr(value *bool) *BoolValue {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &BoolValue{Value: *value}
|
return &BoolValue{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// StringPtr
|
||||||
func StringPtr(value *string) *StringValue {
|
func StringPtr(value *string) *StringValue {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &StringValue{Value: *value}
|
return &StringValue{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// BytesPtr
|
||||||
func BytesPtr(value *[]byte) *BytesValue {
|
func BytesPtr(value *[]byte) *BytesValue {
|
||||||
if value == nil {
|
if value == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &BytesValue{Value: *value}
|
return &BytesValue{Value: *value}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *DoubleValue) UnmarshalJSON(p []byte) error {
|
func (m *DoubleValue) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseFloat(string(p), 64)
|
value, err := strconv.ParseFloat(string(p), 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = value
|
m.Value = value
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *DoubleValue) MarshalJSON() ([]byte, error) {
|
func (m *DoubleValue) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatFloat(m.Value, 'f', -1, 64)), nil
|
return []byte(strconv.FormatFloat(m.Value, 'f', -1, 64)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *FloatValue) UnmarshalJSON(p []byte) error {
|
func (m *FloatValue) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseFloat(string(p), 64)
|
value, err := strconv.ParseFloat(string(p), 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = float32(value)
|
m.Value = float32(value)
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *FloatValue) MarshalJSON() ([]byte, error) {
|
func (m *FloatValue) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatFloat(float64(m.Value), 'f', -1, 32)), nil
|
return []byte(strconv.FormatFloat(float64(m.Value), 'f', -1, 32)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *Int64Value) UnmarshalJSON(p []byte) error {
|
func (m *Int64Value) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseInt(string(p), 10, 64)
|
value, err := strconv.ParseInt(string(p), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = value
|
m.Value = value
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -158,70 +193,86 @@ func (m *Int64Value) MarshalJSON() ([]byte, error) {
|
|||||||
return []byte(strconv.FormatInt(m.Value, 10)), nil
|
return []byte(strconv.FormatInt(m.Value, 10)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *UInt64Value) UnmarshalJSON(p []byte) error {
|
func (m *UInt64Value) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseUint(string(p), 10, 64)
|
value, err := strconv.ParseUint(string(p), 10, 64)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = value
|
m.Value = value
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *UInt64Value) MarshalJSON() ([]byte, error) {
|
func (m *UInt64Value) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatUint(m.Value, 10)), nil
|
return []byte(strconv.FormatUint(m.Value, 10)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *Int32Value) UnmarshalJSON(p []byte) error {
|
func (m *Int32Value) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseInt(string(p), 10, 32)
|
value, err := strconv.ParseInt(string(p), 10, 32)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = int32(value)
|
m.Value = int32(value)
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *Int32Value) MarshalJSON() ([]byte, error) {
|
func (m *Int32Value) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatInt(int64(m.Value), 10)), nil
|
return []byte(strconv.FormatInt(int64(m.Value), 10)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *UInt32Value) UnmarshalJSON(p []byte) error {
|
func (m *UInt32Value) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseUint(string(p), 10, 32)
|
value, err := strconv.ParseUint(string(p), 10, 32)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = uint32(value)
|
m.Value = uint32(value)
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *UInt32Value) MarshalJSON() ([]byte, error) {
|
func (m *UInt32Value) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatUint(uint64(m.Value), 10)), nil
|
return []byte(strconv.FormatUint(uint64(m.Value), 10)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *BoolValue) UnmarshalJSON(p []byte) error {
|
func (m *BoolValue) UnmarshalJSON(p []byte) error {
|
||||||
value, err := strconv.ParseBool(string(p))
|
value, err := strconv.ParseBool(string(p))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = value
|
m.Value = value
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *BoolValue) MarshalJSON() ([]byte, error) {
|
func (m *BoolValue) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(strconv.FormatBool(m.Value)), nil
|
return []byte(strconv.FormatBool(m.Value)), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *StringValue) UnmarshalJSON(p []byte) error {
|
func (m *StringValue) UnmarshalJSON(p []byte) error {
|
||||||
if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' {
|
if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' {
|
||||||
return errors.New("invalid string value")
|
return errors.New("invalid string value")
|
||||||
}
|
}
|
||||||
m.Value = string(p[1 : len(p)-1])
|
m.Value = string(p[1 : len(p)-1])
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *StringValue) MarshalJSON() ([]byte, error) {
|
func (m *StringValue) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(`"` + m.Value + `"`), nil
|
return []byte(`"` + m.Value + `"`), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// UnmarshalJSON
|
||||||
func (m *BytesValue) UnmarshalJSON(p []byte) error {
|
func (m *BytesValue) UnmarshalJSON(p []byte) error {
|
||||||
if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' {
|
if len(p) < 2 || p[0] != '"' || p[len(p)-1] != '"' {
|
||||||
return errors.New("invalid bytes value")
|
return errors.New("invalid bytes value")
|
||||||
@ -231,38 +282,48 @@ func (m *BytesValue) UnmarshalJSON(p []byte) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
m.Value = value
|
m.Value = value
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MarshalJSON
|
||||||
func (m *BytesValue) MarshalJSON() ([]byte, error) {
|
func (m *BytesValue) MarshalJSON() ([]byte, error) {
|
||||||
return []byte(`"` + base64.StdEncoding.EncodeToString(m.Value) + `"`), nil
|
return []byte(`"` + base64.StdEncoding.EncodeToString(m.Value) + `"`), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *DoubleValue) GetValuePtr() *float64 {
|
func (m *DoubleValue) GetValuePtr() *float64 {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *FloatValue) GetValuePtr() *float32 {
|
func (m *FloatValue) GetValuePtr() *float32 {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *Int64Value) GetValuePtr() *int64 {
|
func (m *Int64Value) GetValuePtr() *int64 {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *UInt64Value) GetValuePtr() *uint64 {
|
func (m *UInt64Value) GetValuePtr() *uint64 {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -270,9 +331,11 @@ func (m *Int32Value) GetValuePtr() *int32 {
|
|||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *UInt32Value) GetValuePtr() *uint32 {
|
func (m *UInt32Value) GetValuePtr() *uint32 {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
@ -280,23 +343,29 @@ func (m *UInt32Value) GetValuePtr() *uint32 {
|
|||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *BoolValue) GetValuePtr() *bool {
|
func (m *BoolValue) GetValuePtr() *bool {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *StringValue) GetValuePtr() *string {
|
func (m *StringValue) GetValuePtr() *string {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetValuePtr
|
||||||
func (m *BytesValue) GetValuePtr() *[]byte {
|
func (m *BytesValue) GetValuePtr() *[]byte {
|
||||||
if m == nil {
|
if m == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return &m.Value
|
return &m.Value
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,15 +24,18 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/proto/auth"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// NewAuth
|
||||||
func NewAuth(discov discoveryregistry.SvcDiscoveryRegistry) *Auth {
|
func NewAuth(discov discoveryregistry.SvcDiscoveryRegistry) *Auth {
|
||||||
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImAuthName)
|
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImAuthName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
client := auth.NewAuthClient(conn)
|
client := auth.NewAuthClient(conn)
|
||||||
|
|
||||||
return &Auth{discov: discov, conn: conn, Client: client}
|
return &Auth{discov: discov, conn: conn, Client: client}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Auth
|
||||||
type Auth struct {
|
type Auth struct {
|
||||||
conn grpc.ClientConnInterface
|
conn grpc.ClientConnInterface
|
||||||
Client auth.AuthClient
|
Client auth.AuthClient
|
||||||
|
|||||||
@ -26,27 +26,33 @@ import (
|
|||||||
pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation"
|
pbConversation "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/conversation"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Conversation
|
||||||
type Conversation struct {
|
type Conversation struct {
|
||||||
Client pbConversation.ConversationClient
|
Client pbConversation.ConversationClient
|
||||||
conn grpc.ClientConnInterface
|
conn grpc.ClientConnInterface
|
||||||
discov discoveryregistry.SvcDiscoveryRegistry
|
discov discoveryregistry.SvcDiscoveryRegistry
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewConversation
|
||||||
func NewConversation(discov discoveryregistry.SvcDiscoveryRegistry) *Conversation {
|
func NewConversation(discov discoveryregistry.SvcDiscoveryRegistry) *Conversation {
|
||||||
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImConversationName)
|
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImConversationName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
client := pbConversation.NewConversationClient(conn)
|
client := pbConversation.NewConversationClient(conn)
|
||||||
|
|
||||||
return &Conversation{discov: discov, conn: conn, Client: client}
|
return &Conversation{discov: discov, conn: conn, Client: client}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ConversationRpcClient
|
||||||
type ConversationRpcClient Conversation
|
type ConversationRpcClient Conversation
|
||||||
|
|
||||||
|
// NewConversationRpcClient
|
||||||
func NewConversationRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) ConversationRpcClient {
|
func NewConversationRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) ConversationRpcClient {
|
||||||
return ConversationRpcClient(*NewConversation(discov))
|
return ConversationRpcClient(*NewConversation(discov))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetSingleConversationRecvMsgOpt
|
||||||
func (c *ConversationRpcClient) GetSingleConversationRecvMsgOpt(ctx context.Context, userID, conversationID string) (int32, error) {
|
func (c *ConversationRpcClient) GetSingleConversationRecvMsgOpt(ctx context.Context, userID, conversationID string) (int32, error) {
|
||||||
var req pbConversation.GetConversationReq
|
var req pbConversation.GetConversationReq
|
||||||
req.OwnerUserID = userID
|
req.OwnerUserID = userID
|
||||||
@ -55,45 +61,59 @@ func (c *ConversationRpcClient) GetSingleConversationRecvMsgOpt(ctx context.Cont
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return conversation.GetConversation().RecvMsgOpt, err
|
return conversation.GetConversation().RecvMsgOpt, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SingleChatFirstCreateConversation
|
||||||
func (c *ConversationRpcClient) SingleChatFirstCreateConversation(ctx context.Context, recvID, sendID string) error {
|
func (c *ConversationRpcClient) SingleChatFirstCreateConversation(ctx context.Context, recvID, sendID string) error {
|
||||||
_, err := c.Client.CreateSingleChatConversations(ctx, &pbConversation.CreateSingleChatConversationsReq{RecvID: recvID, SendID: sendID})
|
_, err := c.Client.CreateSingleChatConversations(ctx, &pbConversation.CreateSingleChatConversationsReq{RecvID: recvID, SendID: sendID})
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GroupChatFirstCreateConversation
|
||||||
func (c *ConversationRpcClient) GroupChatFirstCreateConversation(ctx context.Context, groupID string, userIDs []string) error {
|
func (c *ConversationRpcClient) GroupChatFirstCreateConversation(ctx context.Context, groupID string, userIDs []string) error {
|
||||||
_, err := c.Client.CreateGroupChatConversations(ctx, &pbConversation.CreateGroupChatConversationsReq{UserIDs: userIDs, GroupID: groupID})
|
_, err := c.Client.CreateGroupChatConversations(ctx, &pbConversation.CreateGroupChatConversationsReq{UserIDs: userIDs, GroupID: groupID})
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetConversationMaxSeq
|
||||||
func (c *ConversationRpcClient) SetConversationMaxSeq(ctx context.Context, ownerUserIDs []string, conversationID string, maxSeq int64) error {
|
func (c *ConversationRpcClient) SetConversationMaxSeq(ctx context.Context, ownerUserIDs []string, conversationID string, maxSeq int64) error {
|
||||||
_, err := c.Client.SetConversationMaxSeq(ctx, &pbConversation.SetConversationMaxSeqReq{OwnerUserID: ownerUserIDs, ConversationID: conversationID, MaxSeq: maxSeq})
|
_, err := c.Client.SetConversationMaxSeq(ctx, &pbConversation.SetConversationMaxSeqReq{OwnerUserID: ownerUserIDs, ConversationID: conversationID, MaxSeq: maxSeq})
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SetConversations
|
||||||
func (c *ConversationRpcClient) SetConversations(ctx context.Context, userIDs []string, conversation *pbConversation.ConversationReq) error {
|
func (c *ConversationRpcClient) SetConversations(ctx context.Context, userIDs []string, conversation *pbConversation.ConversationReq) error {
|
||||||
_, err := c.Client.SetConversations(ctx, &pbConversation.SetConversationsReq{UserIDs: userIDs, Conversation: conversation})
|
_, err := c.Client.SetConversations(ctx, &pbConversation.SetConversationsReq{UserIDs: userIDs, Conversation: conversation})
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConversationIDs
|
||||||
func (c *ConversationRpcClient) GetConversationIDs(ctx context.Context, ownerUserID string) ([]string, error) {
|
func (c *ConversationRpcClient) GetConversationIDs(ctx context.Context, ownerUserID string) ([]string, error) {
|
||||||
resp, err := c.Client.GetConversationIDs(ctx, &pbConversation.GetConversationIDsReq{UserID: ownerUserID})
|
resp, err := c.Client.GetConversationIDs(ctx, &pbConversation.GetConversationIDsReq{UserID: ownerUserID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.ConversationIDs, nil
|
return resp.ConversationIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConversation
|
||||||
func (c *ConversationRpcClient) GetConversation(ctx context.Context, ownerUserID, conversationID string) (*pbConversation.Conversation, error) {
|
func (c *ConversationRpcClient) GetConversation(ctx context.Context, ownerUserID, conversationID string) (*pbConversation.Conversation, error) {
|
||||||
resp, err := c.Client.GetConversation(ctx, &pbConversation.GetConversationReq{OwnerUserID: ownerUserID, ConversationID: conversationID})
|
resp, err := c.Client.GetConversation(ctx, &pbConversation.GetConversationReq{OwnerUserID: ownerUserID, ConversationID: conversationID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Conversation, nil
|
return resp.Conversation, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConversationsByConversationID
|
||||||
func (c *ConversationRpcClient) GetConversationsByConversationID(ctx context.Context, conversationIDs []string) ([]*pbConversation.Conversation, error) {
|
func (c *ConversationRpcClient) GetConversationsByConversationID(ctx context.Context, conversationIDs []string) ([]*pbConversation.Conversation, error) {
|
||||||
if len(conversationIDs) == 0 {
|
if len(conversationIDs) == 0 {
|
||||||
return nil, nil
|
return nil, nil
|
||||||
@ -105,9 +125,11 @@ func (c *ConversationRpcClient) GetConversationsByConversationID(ctx context.Con
|
|||||||
if len(resp.Conversations) == 0 {
|
if len(resp.Conversations) == 0 {
|
||||||
return nil, errs.ErrRecordNotFound.Wrap(fmt.Sprintf("conversationIDs: %v not found", conversationIDs))
|
return nil, errs.ErrRecordNotFound.Wrap(fmt.Sprintf("conversationIDs: %v not found", conversationIDs))
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Conversations, nil
|
return resp.Conversations, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetConversations
|
||||||
func (c *ConversationRpcClient) GetConversations(
|
func (c *ConversationRpcClient) GetConversations(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
ownerUserID string,
|
ownerUserID string,
|
||||||
@ -123,5 +145,6 @@ func (c *ConversationRpcClient) GetConversations(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Conversations, nil
|
return resp.Conversations, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,27 +25,33 @@ import (
|
|||||||
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
sdkws "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/sdkws"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Friend
|
||||||
type Friend struct {
|
type Friend struct {
|
||||||
conn grpc.ClientConnInterface
|
conn grpc.ClientConnInterface
|
||||||
Client friend.FriendClient
|
Client friend.FriendClient
|
||||||
discov discoveryregistry.SvcDiscoveryRegistry
|
discov discoveryregistry.SvcDiscoveryRegistry
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewFriend
|
||||||
func NewFriend(discov discoveryregistry.SvcDiscoveryRegistry) *Friend {
|
func NewFriend(discov discoveryregistry.SvcDiscoveryRegistry) *Friend {
|
||||||
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImFriendName)
|
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImFriendName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
client := friend.NewFriendClient(conn)
|
client := friend.NewFriendClient(conn)
|
||||||
|
|
||||||
return &Friend{discov: discov, conn: conn, Client: client}
|
return &Friend{discov: discov, conn: conn, Client: client}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FriendRpcClient
|
||||||
type FriendRpcClient Friend
|
type FriendRpcClient Friend
|
||||||
|
|
||||||
|
// NewFriendRpcClient
|
||||||
func NewFriendRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) FriendRpcClient {
|
func NewFriendRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) FriendRpcClient {
|
||||||
return FriendRpcClient(*NewFriend(discov))
|
return FriendRpcClient(*NewFriend(discov))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetFriendsInfo
|
||||||
func (f *FriendRpcClient) GetFriendsInfo(
|
func (f *FriendRpcClient) GetFriendsInfo(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
ownerUserID, friendUserID string,
|
ownerUserID, friendUserID string,
|
||||||
@ -58,31 +64,37 @@ func (f *FriendRpcClient) GetFriendsInfo(
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
resp = r.FriendsInfo[0]
|
resp = r.FriendsInfo[0]
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// possibleFriendUserID是否在userID的好友中.
|
// IsFriend possibleFriendUserID是否在userID的好友中.
|
||||||
func (f *FriendRpcClient) IsFriend(ctx context.Context, possibleFriendUserID, userID string) (bool, error) {
|
func (f *FriendRpcClient) IsFriend(ctx context.Context, possibleFriendUserID, userID string) (bool, error) {
|
||||||
resp, err := f.Client.IsFriend(ctx, &friend.IsFriendReq{UserID1: userID, UserID2: possibleFriendUserID})
|
resp, err := f.Client.IsFriend(ctx, &friend.IsFriendReq{UserID1: userID, UserID2: possibleFriendUserID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.InUser1Friends, nil
|
return resp.InUser1Friends, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetFriendIDs
|
||||||
func (f *FriendRpcClient) GetFriendIDs(ctx context.Context, ownerUserID string) (friendIDs []string, err error) {
|
func (f *FriendRpcClient) GetFriendIDs(ctx context.Context, ownerUserID string) (friendIDs []string, err error) {
|
||||||
req := friend.GetFriendIDsReq{UserID: ownerUserID}
|
req := friend.GetFriendIDsReq{UserID: ownerUserID}
|
||||||
resp, err := f.Client.GetFriendIDs(ctx, &req)
|
resp, err := f.Client.GetFriendIDs(ctx, &req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.FriendIDs, nil
|
return resp.FriendIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IsBlocked
|
||||||
func (b *FriendRpcClient) IsBlocked(ctx context.Context, possibleBlackUserID, userID string) (bool, error) {
|
func (b *FriendRpcClient) IsBlocked(ctx context.Context, possibleBlackUserID, userID string) (bool, error) {
|
||||||
r, err := b.Client.IsBlack(ctx, &friend.IsBlackReq{UserID1: possibleBlackUserID, UserID2: userID})
|
r, err := b.Client.IsBlack(ctx, &friend.IsBlackReq{UserID1: possibleBlackUserID, UserID2: userID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return r.InUser2Blacks, nil
|
return r.InUser2Blacks, nil
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,27 +29,33 @@ import (
|
|||||||
"github.com/OpenIMSDK/Open-IM-Server/pkg/utils"
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// Group
|
||||||
type Group struct {
|
type Group struct {
|
||||||
conn grpc.ClientConnInterface
|
conn grpc.ClientConnInterface
|
||||||
Client group.GroupClient
|
Client group.GroupClient
|
||||||
discov discoveryregistry.SvcDiscoveryRegistry
|
discov discoveryregistry.SvcDiscoveryRegistry
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewGroup
|
||||||
func NewGroup(discov discoveryregistry.SvcDiscoveryRegistry) *Group {
|
func NewGroup(discov discoveryregistry.SvcDiscoveryRegistry) *Group {
|
||||||
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImGroupName)
|
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImGroupName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
client := group.NewGroupClient(conn)
|
client := group.NewGroupClient(conn)
|
||||||
|
|
||||||
return &Group{discov: discov, conn: conn, Client: client}
|
return &Group{discov: discov, conn: conn, Client: client}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GroupRpcClient
|
||||||
type GroupRpcClient Group
|
type GroupRpcClient Group
|
||||||
|
|
||||||
|
// NewGroupRpcClient
|
||||||
func NewGroupRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) GroupRpcClient {
|
func NewGroupRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) GroupRpcClient {
|
||||||
return GroupRpcClient(*NewGroup(discov))
|
return GroupRpcClient(*NewGroup(discov))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupInfos
|
||||||
func (g *GroupRpcClient) GetGroupInfos(
|
func (g *GroupRpcClient) GetGroupInfos(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupIDs []string,
|
groupIDs []string,
|
||||||
@ -71,14 +77,17 @@ func (g *GroupRpcClient) GetGroupInfos(
|
|||||||
return resp.GroupInfos, nil
|
return resp.GroupInfos, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupInfo
|
||||||
func (g *GroupRpcClient) GetGroupInfo(ctx context.Context, groupID string) (*sdkws.GroupInfo, error) {
|
func (g *GroupRpcClient) GetGroupInfo(ctx context.Context, groupID string) (*sdkws.GroupInfo, error) {
|
||||||
groups, err := g.GetGroupInfos(ctx, []string{groupID}, true)
|
groups, err := g.GetGroupInfos(ctx, []string{groupID}, true)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return groups[0], nil
|
return groups[0], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupInfoMap
|
||||||
func (g *GroupRpcClient) GetGroupInfoMap(
|
func (g *GroupRpcClient) GetGroupInfoMap(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupIDs []string,
|
groupIDs []string,
|
||||||
@ -88,11 +97,13 @@ func (g *GroupRpcClient) GetGroupInfoMap(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return utils.SliceToMap(groups, func(e *sdkws.GroupInfo) string {
|
return utils.SliceToMap(groups, func(e *sdkws.GroupInfo) string {
|
||||||
return e.GroupID
|
return e.GroupID
|
||||||
}), nil
|
}), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupMemberInfos
|
||||||
func (g *GroupRpcClient) GetGroupMemberInfos(
|
func (g *GroupRpcClient) GetGroupMemberInfos(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupID string,
|
groupID string,
|
||||||
@ -113,9 +124,11 @@ func (g *GroupRpcClient) GetGroupMemberInfos(
|
|||||||
return nil, errs.ErrNotInGroupYet.Wrap(strings.Join(ids, ","))
|
return nil, errs.ErrNotInGroupYet.Wrap(strings.Join(ids, ","))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Members, nil
|
return resp.Members, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupMemberInfo
|
||||||
func (g *GroupRpcClient) GetGroupMemberInfo(
|
func (g *GroupRpcClient) GetGroupMemberInfo(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupID string,
|
groupID string,
|
||||||
@ -125,9 +138,11 @@ func (g *GroupRpcClient) GetGroupMemberInfo(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return members[0], nil
|
return members[0], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupMemberInfoMap
|
||||||
func (g *GroupRpcClient) GetGroupMemberInfoMap(
|
func (g *GroupRpcClient) GetGroupMemberInfoMap(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupID string,
|
groupID string,
|
||||||
@ -138,11 +153,13 @@ func (g *GroupRpcClient) GetGroupMemberInfoMap(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return utils.SliceToMap(members, func(e *sdkws.GroupMemberFullInfo) string {
|
return utils.SliceToMap(members, func(e *sdkws.GroupMemberFullInfo) string {
|
||||||
return e.UserID
|
return e.UserID
|
||||||
}), nil
|
}), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetOwnerAndAdminInfos
|
||||||
func (g *GroupRpcClient) GetOwnerAndAdminInfos(
|
func (g *GroupRpcClient) GetOwnerAndAdminInfos(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupID string,
|
groupID string,
|
||||||
@ -154,17 +171,21 @@ func (g *GroupRpcClient) GetOwnerAndAdminInfos(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Members, nil
|
return resp.Members, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetOwnerInfo
|
||||||
func (g *GroupRpcClient) GetOwnerInfo(ctx context.Context, groupID string) (*sdkws.GroupMemberFullInfo, error) {
|
func (g *GroupRpcClient) GetOwnerInfo(ctx context.Context, groupID string) (*sdkws.GroupMemberFullInfo, error) {
|
||||||
resp, err := g.Client.GetGroupMemberRoleLevel(ctx, &group.GetGroupMemberRoleLevelReq{
|
resp, err := g.Client.GetGroupMemberRoleLevel(ctx, &group.GetGroupMemberRoleLevelReq{
|
||||||
GroupID: groupID,
|
GroupID: groupID,
|
||||||
RoleLevels: []int32{constant.GroupOwner},
|
RoleLevels: []int32{constant.GroupOwner},
|
||||||
})
|
})
|
||||||
|
|
||||||
return resp.Members[0], err
|
return resp.Members[0], err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupMemberIDs
|
||||||
func (g *GroupRpcClient) GetGroupMemberIDs(ctx context.Context, groupID string) ([]string, error) {
|
func (g *GroupRpcClient) GetGroupMemberIDs(ctx context.Context, groupID string) ([]string, error) {
|
||||||
resp, err := g.Client.GetGroupMemberUserIDs(ctx, &group.GetGroupMemberUserIDsReq{
|
resp, err := g.Client.GetGroupMemberUserIDs(ctx, &group.GetGroupMemberUserIDsReq{
|
||||||
GroupID: groupID,
|
GroupID: groupID,
|
||||||
@ -172,9 +193,11 @@ func (g *GroupRpcClient) GetGroupMemberIDs(ctx context.Context, groupID string)
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.UserIDs, nil
|
return resp.UserIDs, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupInfoCache
|
||||||
func (g *GroupRpcClient) GetGroupInfoCache(ctx context.Context, groupID string) (*sdkws.GroupInfo, error) {
|
func (g *GroupRpcClient) GetGroupInfoCache(ctx context.Context, groupID string) (*sdkws.GroupInfo, error) {
|
||||||
resp, err := g.Client.GetGroupInfoCache(ctx, &group.GetGroupInfoCacheReq{
|
resp, err := g.Client.GetGroupInfoCache(ctx, &group.GetGroupInfoCacheReq{
|
||||||
GroupID: groupID,
|
GroupID: groupID,
|
||||||
@ -182,9 +205,11 @@ func (g *GroupRpcClient) GetGroupInfoCache(ctx context.Context, groupID string)
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.GroupInfo, nil
|
return resp.GroupInfo, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetGroupMemberCache
|
||||||
func (g *GroupRpcClient) GetGroupMemberCache(
|
func (g *GroupRpcClient) GetGroupMemberCache(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
groupID string,
|
groupID string,
|
||||||
@ -197,13 +222,16 @@ func (g *GroupRpcClient) GetGroupMemberCache(
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return resp.Member, nil
|
return resp.Member, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DismissGroup
|
||||||
func (g *GroupRpcClient) DismissGroup(ctx context.Context, groupID string) error {
|
func (g *GroupRpcClient) DismissGroup(ctx context.Context, groupID string) error {
|
||||||
_, err := g.Client.DismissGroup(ctx, &group.DismissGroupReq{
|
_, err := g.Client.DismissGroup(ctx, &group.DismissGroupReq{
|
||||||
GroupID: groupID,
|
GroupID: groupID,
|
||||||
DeleteMember: true,
|
DeleteMember: true,
|
||||||
})
|
})
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@ -121,29 +121,36 @@ func newSessionTypeConf() map[int32]int32 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Message
|
||||||
type Message struct {
|
type Message struct {
|
||||||
conn grpc.ClientConnInterface
|
conn grpc.ClientConnInterface
|
||||||
Client msg.MsgClient
|
Client msg.MsgClient
|
||||||
discov discoveryregistry.SvcDiscoveryRegistry
|
discov discoveryregistry.SvcDiscoveryRegistry
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewMessage
|
||||||
func NewMessage(discov discoveryregistry.SvcDiscoveryRegistry) *Message {
|
func NewMessage(discov discoveryregistry.SvcDiscoveryRegistry) *Message {
|
||||||
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImMsgName)
|
conn, err := discov.GetConn(context.Background(), config.Config.RpcRegisterName.OpenImMsgName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
client := msg.NewMsgClient(conn)
|
client := msg.NewMsgClient(conn)
|
||||||
|
|
||||||
return &Message{discov: discov, conn: conn, Client: client}
|
return &Message{discov: discov, conn: conn, Client: client}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// MessageRpcClient
|
||||||
type MessageRpcClient Message
|
type MessageRpcClient Message
|
||||||
|
|
||||||
|
// NewMessageRpcClient
|
||||||
func NewMessageRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) MessageRpcClient {
|
func NewMessageRpcClient(discov discoveryregistry.SvcDiscoveryRegistry) MessageRpcClient {
|
||||||
return MessageRpcClient(*NewMessage(discov))
|
return MessageRpcClient(*NewMessage(discov))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SendMsg
|
||||||
func (m *MessageRpcClient) SendMsg(ctx context.Context, req *msg.SendMsgReq) (*msg.SendMsgResp, error) {
|
func (m *MessageRpcClient) SendMsg(ctx context.Context, req *msg.SendMsgReq) (*msg.SendMsgResp, error) {
|
||||||
resp, err := m.Client.SendMsg(ctx, req)
|
resp, err := m.Client.SendMsg(ctx, req)
|
||||||
|
|
||||||
return resp, err
|
return resp, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -597,6 +597,7 @@ func (g *GroupNotificationSender) GroupMemberSetToOrdinaryUserNotification(ctx c
|
|||||||
if err := g.fillOpUser(ctx, &tips.OpUser, tips.Group.GroupID); err != nil {
|
if err := g.fillOpUser(ctx, &tips.OpUser, tips.Group.GroupID); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return g.Notification(ctx, mcontext.GetOpUserID(ctx), group.GroupID, constant.GroupMemberSetToOrdinaryUserNotification, tips)
|
return g.Notification(ctx, mcontext.GetOpUserID(ctx), group.GroupID, constant.GroupMemberSetToOrdinaryUserNotification, tips)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -35,12 +35,10 @@ func (s *Statistics) output() {
|
|||||||
defer t.Stop()
|
defer t.Stop()
|
||||||
var sum uint64
|
var sum uint64
|
||||||
var timeIntervalNum uint64
|
var timeIntervalNum uint64
|
||||||
outputCh := make(chan struct{})
|
|
||||||
for {
|
for {
|
||||||
sum = *s.AllCount
|
sum = *s.AllCount
|
||||||
select {
|
select {
|
||||||
case <-t.C:
|
case <-t.C:
|
||||||
outputCh <- struct{}{}
|
|
||||||
}
|
}
|
||||||
if *s.AllCount-sum <= 0 {
|
if *s.AllCount-sum <= 0 {
|
||||||
intervalCount = 0
|
intervalCount = 0
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user