Files
open-im-server/pkg/rpcclient/meta.go
T

46 lines
943 B
Go
Raw Normal View History

2023-04-21 20:29:08 +08:00
package rpcclient
import (
2023-04-26 14:10:12 +08:00
"context"
2023-04-21 20:29:08 +08:00
"github.com/OpenIMSDK/Open-IM-Server/pkg/discoveryregistry"
"google.golang.org/grpc"
)
type MetaClient struct {
// contains filtered or unexported fields
client discoveryregistry.SvcDiscoveryRegistry
rpcRegisterName string
}
2023-04-26 14:10:12 +08:00
func NewMetaClient(client discoveryregistry.SvcDiscoveryRegistry, rpcRegisterName string, opts ...MetaClientOptions) *MetaClient {
c := &MetaClient{
2023-04-21 20:29:08 +08:00
client: client,
rpcRegisterName: rpcRegisterName,
}
2023-04-26 14:10:12 +08:00
for _, opt := range opts {
opt(c)
}
return c
2023-04-21 20:29:08 +08:00
}
2023-04-26 14:10:12 +08:00
type MetaClientOptions func(*MetaClient)
2023-05-08 12:39:45 +08:00
func (m *MetaClient) getConn(ctx context.Context) (*grpc.ClientConn, error) {
return m.client.GetConn(ctx, m.rpcRegisterName)
2023-04-23 14:21:36 +08:00
}
type CommonUser interface {
GetNickname() string
GetFaceURL() string
GetUserID() string
GetEx() string
}
2023-04-24 19:45:29 +08:00
type CommonGroup interface {
GetNickname() string
GetFaceURL() string
GetGroupID() string
GetEx() string
}