Skip to content

Commit

Permalink
examples/gcoap_fileserver: make use of callbacks
Browse files Browse the repository at this point in the history
  • Loading branch information
benpicco committed Jan 16, 2023
1 parent 47295cc commit 65a8b71
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 0 deletions.
1 change: 1 addition & 0 deletions examples/gcoap_fileserver/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ USEMODULE += shell_commands

# enable the fileserver module
USEMODULE += gcoap_fileserver
USEMODULE += gcoap_fileserver_callback
USEMODULE += gcoap_fileserver_delete
USEMODULE += gcoap_fileserver_put

Expand Down
26 changes: 26 additions & 0 deletions examples/gcoap_fileserver/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
* @}
*/

#include <stdio.h>
#include "kernel_defines.h"
#include "net/gcoap.h"
#include "net/gcoap/fileserver.h"
Expand Down Expand Up @@ -45,11 +46,36 @@ static gcoap_listener_t _listener = {
.resources_len = ARRAY_SIZE(_resources),
};

static void _event_cb(gcoap_fileserver_event_t event, gcoap_fileserver_event_ctx_t *ctx)
{
switch (event) {
case GCOAP_FILESERVER_GET_FILE_START:
printf("gcoap fileserver: Download started: %s\n", ctx->path);
break;
case GCOAP_FILESERVER_GET_FILE_END:
printf("gcoap fileserver: Download finished: %s\n", ctx->path);
break;
case GCOAP_FILESERVER_PUT_FILE_START:
printf("gcoap fileserver: Upload started: %s\n", ctx->path);
break;
case GCOAP_FILESERVER_PUT_FILE_END:
printf("gcoap fileserver: Upload finished: %s\n", ctx->path);
break;
case GCOAP_FILESERVER_DELETE_FILE:
printf("gcoap fileserver: Delete %s\n", ctx->path);
break;
}
}

int main(void)
{
msg_init_queue(_main_msg_queue, MAIN_QUEUE_SIZE);
gcoap_register_listener(&_listener);

if (IS_USED(MODULE_GCOAP_FILESERVER_CALLBACK)) {
gcoap_fileserver_set_event_cb(_event_cb, NULL);
}

char line_buf[SHELL_DEFAULT_BUFSIZE];
shell_run(NULL, line_buf, SHELL_DEFAULT_BUFSIZE);

Expand Down

0 comments on commit 65a8b71

Please sign in to comment.