Minor updates

Signed-off-by: Deepanshu Agarwal <deepanshu.agarwal1984@gmail.com>
This commit is contained in:
Deepanshu Agarwal 2022-09-08 14:08:59 +05:30
parent 9512ed284d
commit 335e8d9935
2 changed files with 10 additions and 10 deletions

View File

@ -30,6 +30,7 @@ type PubSub interface {
Close() error
}
// BulkMessager is the interface defining BulkPublish and BulkSubscribe definitions for message buses
type BulkMessager interface {
BulkPublish(req *BulkPublishRequest) (BulkPublishResponse, error)
BulkSubscribe(ctx context.Context, req SubscribeRequest, handler BulkHandler) (BulkSubscribeResponse, error)
@ -61,10 +62,9 @@ type DefaultBulkMessager struct {
// NewDefaultBulkMessager to create new DefaultBulkMessager for a PubSub
func NewDefaultBulkMessager(pubsub PubSub) DefaultBulkMessager {
defaultBulkMessager := DefaultBulkMessager{}
defaultBulkMessager.p = pubsub
return defaultBulkMessager
return DefaultBulkMessager{
p: pubsub,
}
}
// BulkPublish Default Implementation

View File

@ -24,7 +24,7 @@ type PublishRequest struct {
// BulkPublishRequest is the request to publish mutilple messages.
type BulkPublishRequest struct {
Data []BulkMessageEntry `json:"data"`
Entries []BulkMessageEntry `json:"entries"`
PubsubName string `json:"pubsubname"`
Topic string `json:"topic"`
Metadata map[string]string `json:"metadata"`
@ -45,14 +45,14 @@ type NewMessage struct {
ContentType *string `json:"contentType,omitempty"`
}
// BulkMessage Represents bulk message arriving from a message bus instance
// BulkMessage represents bulk message arriving from a message bus instance
type BulkMessage struct {
Entries []BulkMessageEntry `json:"entries"`
Topic string `json:"topic"`
Metadata map[string]string `json:"metadata"`
}
// BulkMessageEntry represents Single message inside bulk request
// BulkMessageEntry represents a single message inside a bulk request
type BulkMessageEntry struct {
EntryID string `json:entryID`
Event []byte `json:"event"`
@ -63,7 +63,7 @@ type BulkMessageEntry struct {
// BulkSubscribeConfig defines the Configurations that can be applied to control bulk subscribe
// behavior - beahvior may depend per building block
type BulkSubscribeConfig struct {
MaxBulkCount int `json:"maxBulkCount"`
MaxBulkLatencyInSeconds int `json:"maxBulkLatencyInSeconds"` // todo - change to millis
MaxBulkSizeInBytes int `json:"maxBulkSizeInBytes"`
MaxBulkCount int `json:"maxBulkCount"`
MaxBulkLatencyMilliSeconds int `json:"maxBulkLatencyMilliSeconds"`
MaxBulkSizeBytes int `json:"maxBulkSizeBytes"`
}