Andrew Mayorov
45e3b62dc4
refactor(ft): prefer plain files over exports in generic APIs
...
So there's no more `exports` magically becomings `files` in the
REST API which was slightly confusing.
2023-04-07 17:25:22 +03:00
Andrew Mayorov
b6b044f429
feat(ft): move out exporter concept into dedicated modules
2023-04-07 17:25:22 +03:00
Andrew Mayorov
4132f5a5fb
feat(ft): introduce exporter concept in local storage backend
...
The exporter is responsible for keeping fully transferred and
successfully assembled files. This was on the local storage itself
before. This abstraction is needed to give us an ability to
support S3 destinations more easily, just by swapping the storage
exporter.
Also implement local filesystem exporter and reimplement parts of
the `emqx_ft` API on top of it.
2023-04-07 17:25:22 +03:00
Ilya Averyanov
f6a0598f27
feat(ft): add file transfer tests
2023-04-07 17:25:21 +03:00
Ilya Averyanov
2e889f4ac7
feat(ft): add emqx_ft tests and fixes
2023-04-07 17:25:21 +03:00
Ilya Averyanov
9e4a37a398
fix(ft): fix typespecs
2023-04-07 17:25:21 +03:00
Ilya Averyanov
8038a3fd4a
feat(ft): add tests for remote reader
2023-04-07 17:25:21 +03:00
Ilya Averyanov
b7d0bad970
feat(ft): improve remote reader
2023-04-07 17:25:21 +03:00
Ilya Averyanov
0aefd4a8c7
feat(ft): add streaming of file content when downloading
2023-04-07 17:25:21 +03:00
Ilya Averyanov
197ce32669
feat(ft): add proxy module for emqx_ft_storage_fs
2023-04-07 17:25:21 +03:00
Ilya Averyanov
04e5378bda
feat(ft): add API
2023-04-07 17:25:21 +03:00
Andrew Mayorov
92670bfe3d
feat(ft): add fs storage bpapi and use it in assembler
2023-04-07 17:25:21 +03:00