1
0
mirror of https://github.com/mainflux/mainflux.git synced 2025-04-28 13:48:49 +08:00

32 lines
740 B
Go
Raw Normal View History

// Copyright (c) Mainflux
// SPDX-License-Identifier: Apache-2.0
package api
import "github.com/mainflux/mainflux/readers"
type apiReq interface {
validate() error
}
type listMessagesReq struct {
chanID string
pageMeta readers.PageMetadata
}
func (req listMessagesReq) validate() error {
if req.pageMeta.Limit < 1 || req.pageMeta.Offset < 0 {
return errInvalidRequest
}
if req.pageMeta.Comparator != "" &&
req.pageMeta.Comparator != readers.EqualKey &&
req.pageMeta.Comparator != readers.LowerThanKey &&
req.pageMeta.Comparator != readers.LowerThanEqualKey &&
req.pageMeta.Comparator != readers.GreaterThanKey &&
req.pageMeta.Comparator != readers.GreaterThanEqualKey {
return errInvalidRequest
}
return nil
}