Documentation
¶
Index ¶
- type CursorUpdater
- type DBBasedCursorUpdater
- type IPayerInfoFetcher
- type PayerInfoFetcher
- type PayerInfoGroupBy
- type Service
- func (s *Service) GetPayerInfo(ctx context.Context, req *metadata_api.GetPayerInfoRequest) (*metadata_api.GetPayerInfoResponse, error)
- func (s *Service) GetSyncCursor(_ context.Context, _ *metadata_api.GetSyncCursorRequest) (*metadata_api.GetSyncCursorResponse, error)
- func (s *Service) GetVersion(_ context.Context, _ *metadata_api.GetVersionRequest) (*metadata_api.GetVersionResponse, error)
- func (s *Service) SubscribeSyncCursor(_ *metadata_api.GetSyncCursorRequest, ...) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CursorUpdater ¶
type CursorUpdater interface {
GetCursor() *envelopes.Cursor
AddSubscriber(clientID string, updateChan chan struct{})
RemoveSubscriber(clientID string)
Stop()
}
func NewCursorUpdater ¶
type DBBasedCursorUpdater ¶
type DBBasedCursorUpdater struct {
// contains filtered or unexported fields
}
func (*DBBasedCursorUpdater) AddSubscriber ¶
func (cu *DBBasedCursorUpdater) AddSubscriber(clientID string, updateChan chan struct{})
func (*DBBasedCursorUpdater) GetCursor ¶
func (cu *DBBasedCursorUpdater) GetCursor() *envelopes.Cursor
func (*DBBasedCursorUpdater) RemoveSubscriber ¶
func (cu *DBBasedCursorUpdater) RemoveSubscriber(clientID string)
func (*DBBasedCursorUpdater) Stop ¶
func (cu *DBBasedCursorUpdater) Stop()
type IPayerInfoFetcher ¶ added in v0.5.0
type IPayerInfoFetcher interface {
GetPayerByAddress(ctx context.Context, address string) (int32, error)
GetPayerInfo(
ctx context.Context,
payerID int32,
groupBy PayerInfoGroupBy,
) (*metadata_api.GetPayerInfoResponse_PayerInfo, error)
}
type PayerInfoFetcher ¶ added in v0.5.0
type PayerInfoFetcher struct {
// contains filtered or unexported fields
}
func NewPayerInfoFetcher ¶ added in v0.5.0
func NewPayerInfoFetcher(db *sql.DB) *PayerInfoFetcher
func (*PayerInfoFetcher) GetPayerByAddress ¶ added in v0.5.0
GetPayerByAddress looks up a payer ID by address
func (*PayerInfoFetcher) GetPayerInfo ¶ added in v0.5.0
func (f *PayerInfoFetcher) GetPayerInfo( ctx context.Context, payerID int32, groupBy PayerInfoGroupBy, ) (*metadata_api.GetPayerInfoResponse_PayerInfo, error)
Gets the total spend and message count for a payer between the two timestamps, grouped by the appropriate granularity.
type PayerInfoGroupBy ¶ added in v0.5.0
type PayerInfoGroupBy string
const ( PayerInfoGroupByHour PayerInfoGroupBy = "hour" PayerInfoGroupByDay PayerInfoGroupBy = "day" )
type Service ¶
type Service struct {
metadata_api.UnimplementedMetadataApiServer
// contains filtered or unexported fields
}
func NewMetadataApiService ¶
func NewMetadataApiService( ctx context.Context, log *zap.Logger, updater CursorUpdater, version *semver.Version, payerInfoFetcher IPayerInfoFetcher, ) (*Service, error)
func (*Service) GetPayerInfo ¶ added in v0.5.0
func (s *Service) GetPayerInfo( ctx context.Context, req *metadata_api.GetPayerInfoRequest, ) (*metadata_api.GetPayerInfoResponse, error)
func (*Service) GetSyncCursor ¶
func (s *Service) GetSyncCursor( _ context.Context, _ *metadata_api.GetSyncCursorRequest, ) (*metadata_api.GetSyncCursorResponse, error)
func (*Service) GetVersion ¶ added in v0.5.0
func (s *Service) GetVersion( _ context.Context, _ *metadata_api.GetVersionRequest, ) (*metadata_api.GetVersionResponse, error)
func (*Service) SubscribeSyncCursor ¶
func (s *Service) SubscribeSyncCursor( _ *metadata_api.GetSyncCursorRequest, stream metadata_api.MetadataApi_SubscribeSyncCursorServer, ) error
Click to show internal directories.
Click to hide internal directories.