* Add things auth and auth
Signed-off-by: Rodney Osodo <28790446+rodneyosodo@users.noreply.github.com>
* feat(auth): add environment variable prefix for authorization gRPC client
This commit adds the environment variable prefix `MF_THINGS_AUTH_G` for the authorization gRPC client in the `internal/clients/grpc/auth/client.go` file. The prefix is used to configure the gRPC client for authorization.
Signed-off-by: Rodney Osodo <28790446+rodneyosodo@users.noreply.github.com>
* feat(auth): add mock implementation
This commit adds a new file `auth.go` to the `mocks` package. The file contains a mock implementation of the `mainflux.AuthzServiceClient` interface. This mock implementation is used for testing purposes and allows for easier unit testing of code that depends on the `AuthzServiceClient` interface.
The `auth.go` file includes the necessary imports and initializes a new struct that embeds the `mock.Mock` struct from the `github.com/stretchr/testify/mock` package. This struct provides methods for setting expectations and returning predefined responses during tests.
This addition will improve the testability of the codebase and facilitate the testing of components that rely on the `AuthzServiceClient` interface.
Signed-off-by: Rodney Osodo <28790446+rodneyosodo@users.noreply.github.com>
* feat(readers): add user authentication to listMessagesEndpoint
This commit adds user authentication to the listMessagesEndpoint function in the readers package. The function now takes an additional parameter, uauth, which is an instance of the mainflux.AuthServiceClient. This change allows the endpoint to verify the user's authentication before returning the list of messages.
Signed-off-by: Rodney Osodo <28790446+rodneyosodo@users.noreply.github.com>
---------
Signed-off-by: Rodney Osodo <28790446+rodneyosodo@users.noreply.github.com>
* MF-1314 - Add value comparison filters for readers
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Check if comparison parameter is valid
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use eq, lt, lte, gt, gte as comparison operator keys
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use consts for comparison operators
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use comparator naming instead of comparison
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix openapi.yml
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* MF-1061 - Add PageMetadata to readers
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix merge conflicts
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Mv Total to MessagesPage
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix review
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix readers mock and add filters tests
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add Total check and allow combinations of query parameters
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use slices length as Total
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Simplify readers mock
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add empty lines
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* MF-1061 - Implement v, vb, vs, vd and from/to mongodb-reader filters
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rm duplicated test parameters
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use pubID2 naming
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix merge
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix merge
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Rm unecessary *bson.D pointer
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use from >= and to <= conditions and add tests
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Revert to half open interva
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* NOISSUE - Rename pkg aliases uuidProvider into uuid and fix authn typo
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Add missing error checks
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use global uuidProvider
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use expTime globally
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix user uuid provider
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Fix review
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use idProvider name
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use idProvider instead of uuidProvider
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use idProvider instead of uuidProvider
Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
* Use Normalizer as a lib
To normalize messages on the consumer side, Normalizer is moved
to the internal pkgs. Writers being message consumers are modified to
do message normalization instead of subscribing to normalized messages
subject.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix logging middleware for readers and writers
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove normalizer interface
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Use Normalizer in writers
As we agreed on #919, we'll use normalizer as an interface and provide
the default SenML implementation. Because of that, Normalizer is removed
from `internal` and we'll use the project structure proposed in the
aforementioned issue.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Fix tests
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove unused batch settings from influxDB reader
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update docs
Move Normalizer service to `addons`.
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Rename channels input topic
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update Noramlizer docs
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Remove commented code
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update readers logging
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update addons docker-compose files
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
* Update topcis explanations
Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>