dav/sync.h

changeset 503
f84e64afee61
parent 492
7bde663719dc
child 523
923a4528a2ae
--- a/dav/sync.h	Tue Jan 08 16:37:13 2019 +0100
+++ b/dav/sync.h	Fri Jan 25 17:01:59 2019 +0100
@@ -59,6 +59,22 @@
     SyncDirectory *dir;
     char *path;
 } SyncFile;
+
+enum RemoteChangeType {
+    REMOTE_NO_CHANGE = 0,
+    REMOTE_CHANGE_MODIFIED,
+    REMOTE_CHANGE_NEW,
+    REMOTE_CHANGE_DELETED,
+    REMOTE_CHANGE_CONFLICT_LOCAL_MODIFIED,
+    REMOTE_CHANGE_METADATA,
+    REMOTE_CHANGE_MKDIR
+};
+typedef enum RemoteChangeType RemoteChangeType;
+
+typedef struct RemoteChange {
+    DavResource      *resource;
+    RemoteChangeType type;
+} RemoteChange;
     
 void print_usage(char *cmd);
 
@@ -71,15 +87,20 @@
 int cmd_push(CmdArgs *args, DavBool archive);
 int cmd_restore(CmdArgs *args);
 
+RemoteChangeType resource_get_remote_change(
+        CmdArgs *a,
+        DavResource *res,
+        SyncDirectory *dir,
+        SyncDatabase *db);
+
 int sync_get_resource(
         CmdArgs *a,
         SyncDirectory *dir,
         DavResource *res,
         SyncDatabase *db,
-        DavBool force,
         int *counter);
 int sync_remove_local_resource(SyncDirectory *dir, LocalResource *res);
-void sync_remove_local_directory(SyncDirectory *dir, LocalResource *res);
+int sync_remove_local_directory(SyncDirectory *dir, LocalResource *res);
 void rename_conflict_file(SyncDirectory *dir, SyncDatabase *db, char *path);
 char* create_tmp_download_path(char *path);
 void move_to_trash(SyncDirectory *dir, char *path);

mercurial