[Owncloud] help with csync/Desktop Client

Klaas Freitag freitag at owncloud.com
Thu Jul 12 11:14:55 UTC 2012


On 11.07.2012 19:59, Bartek Przybylski wrote:
Hi Bartek,

>>
>> our awesome team that builds the ownCloud Desktop Syncing Client is doing a fantastic job. I think we have a great cross platform client. :-)
>>
>> Unfortunately the feature requests are coming in more quickly than they can be implemented.
>> So does someone want to contribute in this area and help Klaas, Andreas and the others to push this forward?
>>
>>
>> Two topics come to mind here:
>>
>> - We want to improve csync to support file chunking to support big file uploads and suspend/resume. Bart implemented the server part already but we need someone to dive into the C code of csync to support it on the client side too.
>>
> sounds awesome :) sign me up
This is great!

The idea to realize big file upload is basically to cut the big files in 
reasonable chunks and upload them one by one with a transmission and 
sequence number. The server reassembles the file once all parts were 
uploaded.

For the client that means that the owncloud csync plugin must support 
that. So you first would have to analyse the existing csync module code 
and understand the interface between csync and the module. It works on a 
open - write - close base which means that csync calls an open-function 
within the module, followed by multiple write calls delivering data, 
followed by a close.

Currently, for big files, in the open call, a temporar file is created, 
on write, the data is written to the file, and on close, the temp file 
is transmitted to the ownCloud server using libneon functions.

The (first iteration) change here would be to create multiple temp files 
with the given size for the chunked upload and in the csync close 
callback, send the chunks one by one to the server.

This is it in a nutshell - I hope it sounds still appealing for you :-)

So the concrete start would be to get a development setup for csync and 
understand the plugin architecture so far. See [1] on how to build  csync.

I am always happy to help of course :-)

thanks a lot,
Klaas


[1] http://owncloud.org/dev/sync-clients/linux-build/



>
>> - Cross platform work. It would be great if people with deep Mac and Windows knowledge would help to test and help to implement the platform specific features.
>
> What kind of integration we are talking about here ? I wanted to
> volunteer but it depends on integration level ;)
>
>>
>> You donĀ“t need to be an expert. Everybody can help.
>>
>>
>> So it this sounds cool than contact Klaas or me. :-)
>>
>>
>> Frank
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Owncloud mailing list
>> Owncloud at kde.org
>> https://mail.kde.org/mailman/listinfo/owncloud
> _______________________________________________
> Owncloud mailing list
> Owncloud at kde.org
> https://mail.kde.org/mailman/listinfo/owncloud




More information about the Owncloud mailing list