Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider unifying csync_file_stat_s and csync_vio_file_stat_s #1817

Closed
guruz opened this issue May 27, 2014 · 2 comments
Closed

Consider unifying csync_file_stat_s and csync_vio_file_stat_s #1817

guruz opened this issue May 27, 2014 · 2 comments

Comments

@guruz
Copy link
Contributor

guruz commented May 27, 2014

Even though we mostly got rid of the vio abstraction, this is a layer that is still there.
The conversion is handled in _csync_detect_update in csync_update.c

Related to #1813

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/2358904-consider-unifying-csync_file_stat_s-and-csync_vio_file_stat_s?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github).
@guruz
Copy link
Contributor Author

guruz commented Apr 14, 2015

csync_vio_file_stat_s -> csync_file_stat_s -> TREE_WALK_FILE -> SyncFileItem?

@guruz
Copy link
Contributor Author

guruz commented Jul 9, 2015

<klaas> olivier: like csync_tree_walk_file_t and FileSyncItem and friends
<klaas> we should consolidate that somewhen

@guruz guruz modified the milestones: 2.2-next, backlog Sep 28, 2015
@jturcotte jturcotte removed this from the 2.2-next milestone Jan 14, 2016
@ogoffart ogoffart removed the csync label Nov 16, 2016
jturcotte added a commit that referenced this issue Aug 22, 2017
This is the first commit trying to unify csync_file_stat_s,
csync_vio_file_stat_s and csync_tree_walk_file_s. Use QByteArray
and unique_ptr already since I'm not used to track memory allocations
and this will make the transition easier.

Issue #1817
jturcotte added a commit that referenced this issue Aug 22, 2017
Also move csync_normalize_etag to common/utility since we
don't need the char* function anymore.

Remove the single space file_stat->remotePerm codepath since
this won't be used in csync anymore since
8de3bda.

Issue #1817
jturcotte added a commit that referenced this issue Aug 22, 2017
Just expose csync_file_stat_t since we don't need an abstraction layer
anymore. Also pass the nodes of both trees directly to the visitor
function.

Issue #1817
jturcotte added a commit that referenced this issue Aug 23, 2017
Now that they use the same structure, avoid _csync_detect_update
having to recreate another instance and transfer everything manually.
Any instance created during discovery should now be used all the way
up to SyncEngine::treewalkFile.

This also makes sure that the path and types are properly set in that
object instead of having to pass everything as separate parameters.

This gets rid of csync_ftw_flags_e which was now converted from,
and to csync_ftw_type_e, already in the csync_file_stat_t.

Issue #1817
@guruz guruz added this to the 2.5.0 milestone Aug 25, 2017
jturcotte added a commit that referenced this issue Sep 5, 2017
This is the first commit trying to unify csync_file_stat_s,
csync_vio_file_stat_s and csync_tree_walk_file_s. Use QByteArray
and unique_ptr already since I'm not used to track memory allocations
and this will make the transition easier.

Issue #1817
jturcotte added a commit that referenced this issue Sep 5, 2017
Also move csync_normalize_etag to common/utility since we
don't need the char* function anymore.

Remove the single space file_stat->remotePerm codepath since
this won't be used in csync anymore since
8de3bda.

Issue #1817
jturcotte added a commit that referenced this issue Sep 5, 2017
Just expose csync_file_stat_t since we don't need an abstraction layer
anymore. Also pass the nodes of both trees directly to the visitor
function.

Issue #1817
jturcotte added a commit that referenced this issue Sep 6, 2017
Also move csync_normalize_etag to common/utility since we
don't need the char* function anymore.

Remove the single space file_stat->remotePerm codepath since
this won't be used in csync anymore since
8de3bda.

Issue #1817
jturcotte added a commit that referenced this issue Sep 6, 2017
Just expose csync_file_stat_t since we don't need an abstraction layer
anymore. Also pass the nodes of both trees directly to the visitor
function.

Issue #1817
jturcotte added a commit that referenced this issue Sep 15, 2017
Now that they use the same structure, avoid _csync_detect_update
having to recreate another instance and transfer everything manually.
Any instance created during discovery should now be used all the way
up to SyncEngine::treewalkFile.

This also makes sure that the path and types are properly set in that
object instead of having to pass everything as separate parameters.

This gets rid of csync_ftw_flags_e which was now converted from,
and to csync_ftw_type_e, already in the csync_file_stat_t.

Issue #1817
jturcotte added a commit that referenced this issue Sep 18, 2017
Now that they use the same structure, avoid _csync_detect_update
having to recreate another instance and transfer everything manually.
Any instance created during discovery should now be used all the way
up to SyncEngine::treewalkFile.

This also makes sure that the path and types are properly set in that
object instead of having to pass everything as separate parameters.

This gets rid of csync_ftw_flags_e which was now converted from,
and to csync_ftw_type_e, already in the csync_file_stat_t.

Issue #1817
@guruz guruz modified the milestones: 2.5.0, 2.4.0 Oct 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants