1
0
mirror of https://github.com/falk-werner/webfuse-provider synced 2026-03-02 04:09:18 +00:00

added stub of client implementation

This commit is contained in:
Falk Werner
2020-06-11 09:10:14 +02:00
parent 81fd41f46a
commit dcbe4f075a
7 changed files with 194 additions and 35 deletions

View File

@@ -0,0 +1,87 @@
#include "webfuse/adapter/impl/client.h"
#include <stdlib.h>
struct wf_client
{
wf_client_callback_fn * callback;
void * user_data;
};
struct wf_client *
wf_impl_client_create(
wf_client_callback_fn * callback,
void * user_data)
{
struct wf_client * client = malloc(sizeof(struct wf_client));
client->callback = callback;
client->user_data = user_data;
client->callback(client, WF_CLIENT_CREATED, NULL);
return client;
}
void
wf_impl_client_dispose(
struct wf_client * client)
{
client->callback(client, WF_CLIENT_DISPOSING, NULL);
free(client);
}
void *
wf_impl_client_get_userdata(
struct wf_client * client)
{
return client->user_data;
}
void
wf_impl_client_service(
struct wf_client * client)
{
(void) client;
}
void
wf_impl_client_interrupt(
struct wf_client * client)
{
(void) client;
}
void
wf_impl_client_connect(
struct wf_client * client,
char const * url)
{
(void) url;
client->callback(client, WF_CLIENT_DISCONNECTED, NULL);
}
void
wf_impl_client_disconnect(
struct wf_client * client)
{
(void) client;
}
void
wf_impl_client_authenticate(
struct wf_client * client)
{
client->callback(client, WF_CLIENT_AUTHENTICATION_FAILED, NULL);
}
void
wf_impl_client_add_filesystem(
struct wf_client * client,
char const * local_path,
char const * name)
{
(void) local_path;
(void) name;
client->callback(client, WF_CLIENT_FILESYSTEM_ADD_FAILED, NULL);
}

View File

@@ -0,0 +1,57 @@
#ifndef WF_ADAPTER_IMPL_CLIENT_H
#define WF_ADAPTER_IMPL_CLIENT_H
#include "webfuse/adapter/client_callback.h"
#ifdef __cplusplus
extern "C"
{
#endif
extern struct wf_client *
wf_impl_client_create(
wf_client_callback_fn * callback,
void * user_data);
extern void
wf_impl_client_dispose(
struct wf_client * client);
extern void *
wf_impl_client_get_userdata(
struct wf_client * client);
extern void
wf_impl_client_service(
struct wf_client * client);
extern void
wf_impl_client_interrupt(
struct wf_client * client);
extern void
wf_impl_client_connect(
struct wf_client * client,
char const * url);
extern void
wf_impl_client_disconnect(
struct wf_client * client);
extern void
wf_impl_client_authenticate(
struct wf_client * client);
extern void
wf_impl_client_add_filesystem(
struct wf_client * client,
char const * local_path,
char const * name);
#ifdef __cplusplus
}
#endif
#endif