Jarek Kowalski
741fdbda3d
added ReadStreamRange() method to efficiently read a range of data
...
It passes "Range: bytes=X-Y" and if the server returns HTTP 206,
we know it complied with the request.
For servers that don't understand range and return HTTP 200 instead we
discard some bytes and limit the result to emulate this behavior.
This will greatly help https://github.com/kopia/kopia which relies on
partial reads from pack blobs.
2021-11-04 23:32:32 -07:00
Felix Pojtinger
4145fa842c
Add ability to define custom interceptors ( fixes #35 )
2021-04-27 23:12:51 +02:00
Nick Kratzke
d02a1ebcd2
switched to PathUnescape
2021-02-03 21:16:30 +01:00
Nick
3ed042db71
fix unescape
2021-02-03 15:25:12 +01:00
Jarek Kowalski
617404b525
fixed panic due to concurrent map writes
...
Fixes #36
2020-09-28 11:17:19 +02:00
vitalii
8de8ce169b
Merge remote-tracking branch 'upstream/master'
2018-07-17 14:00:43 +03:00
Vitalii
83e3d1e31e
Creating parent collection method was added ( #22 )
...
* method for creating parent collection was added to Client struct
"func (c *Client) createParentCollection(itemPath string) error" was added to request.go file
* using Client's method to create parent collection
in following methods:
Client.Write()
Client.WriteStream()
Client.copymove()
deadlock is impossible in method Client.copymove() because of paragraph #6 section 9.8.5 (https://tools.ietf.org/html/rfc4918#section-9.8.5 ) and paragraph #6 section 9.9.4 (https://tools.ietf.org/html/rfc4918#section-9.9.4 ) of RFC 4918 (https://tools.ietf.org/html/rfc4918 )
* install dependencies script was added to Travis-CI file
* testing was added to Travis-CI file
* error wrapping was removed from Client.put() method
* using an early return on error in case of 409 in Client.Write() method
2018-07-14 01:48:30 +02:00
vitalii
68824ef55e
createParentCollection() function was added
2018-06-21 16:37:02 +03:00
vitalii
876ef52924
not all webdav servers returns "Dav" header
2018-06-20 03:21:30 +03:00
David
b45378c08f
Check status on every request to fix #14
2018-06-18 10:02:01 -05:00
Christoph Polcin
fbcb29d33e
docs
2018-05-25 23:59:53 +02:00
David
6d8c168f72
Add Authenticator interface and Digest auth support
2018-05-25 22:40:13 +02:00
Christoph Polcin
1e4b7a5554
refactor client
2018-05-24 01:24:27 +02:00
Christoph Polcin
34368960d0
refactor
2018-05-23 14:15:46 +02:00
Christoph Polcin
7ea52a8e4f
fix close
2018-05-17 01:24:14 +02:00
Abdurrahman
0e7fe90d28
Fetch ContentType and ETag
2018-05-17 01:22:58 +02:00
Christoph Polcin
410e447c49
simplify 409 write error handler
2018-05-16 23:39:37 +02:00
Keith Ball
73b90bf27e
Do not do a read on the root on connect
2018-05-16 14:17:35 +02:00
Keith Ball
9c695fe0df
Return codes
2018-05-16 14:15:47 +02:00
Christoph Polcin
732590873e
docs
2018-05-16 14:05:18 +02:00
Aaron Bieber
b290410ef9
add a bit of doc, cleanup some warnings
2018-05-16 10:42:38 +02:00
Christoph Polcin
49e0e45d8f
fmt
2018-05-15 11:51:59 +02:00
Christoph Polcin
a3c4dbab4a
add SetTimeout
2018-05-15 11:51:53 +02:00
Olof-Joachim Frahm
a11466bd13
Handle error response when reading a file.
2017-12-20 10:53:49 +01:00
Christoph Polcin
e3cd1f98e7
Merge pull request #6 from ProgramYazar/master
...
fix delete for yandex
2017-09-19 07:22:16 +02:00
Engin KIZILGÜN
2b5dab74d3
fix delete for yandex
...
204 success added
2017-09-18 15:54:19 +03:00
Alejandro Alvarez Ayllon
79a29f3ad5
Add SetTransport method
2017-08-07 12:13:13 +02:00
Daniel Eyring
12fe295146
SetHeader method added to client
2016-07-27 14:36:21 +02:00
Christoph Polcin
8f99657223
client: dry
2015-12-09 10:02:37 +01:00
Christoph Polcin
b12f1c1b33
Merge pull request #2 from mattn/handle-href
...
look href if displayname not exists
thanks!
2015-12-09 09:56:31 +01:00
Yasuhiro Matsumoto
33816041d6
Use href instead of displayname for Name()
2015-12-09 17:35:24 +09:00
Yasuhiro Matsumoto
87bbafc0c0
directory should have mod-time
2015-11-16 22:41:20 +09:00
Christoph Polcin
a3cc4ebe01
add Stat()
2014-10-27 17:02:28 +01:00
Christoph Polcin
0c00ff98a3
close body
2014-10-27 16:29:57 +01:00
Christoph Polcin
b947e819ed
refactor req & reqDo
2014-10-27 16:19:17 +01:00
Christoph Polcin
05b47fd0dc
add ReadStream & WriteStream
2014-10-27 15:17:54 +01:00
Christoph Polcin
e4fac5eebf
implement READ & WRITE
2014-10-27 14:32:16 +01:00
Christoph Polcin
47076d6487
add Rename and Copy
2014-10-24 14:09:50 +02:00
Christoph Polcin
b8d7beb48c
Connect() will fail on non collection roots
2014-10-24 12:40:49 +02:00
Christoph Polcin
f728828956
ReadDir will fail on non collections
2014-10-24 12:39:35 +02:00
Christoph Polcin
4f95c70fb3
add RemoveAll
2014-10-24 12:01:54 +02:00
Christoph Polcin
eb64a8f4bd
uses newPathError
2014-10-24 11:38:11 +02:00
Christoph Polcin
3a09040ecb
add MkdirAll
2014-10-24 11:31:16 +02:00
Christoph Polcin
9e2acd491b
fix Mkdir signature
2014-10-24 11:30:08 +02:00
Christoph Polcin
3e22786a18
ref TODOs
2014-10-24 11:26:21 +02:00
Christoph Polcin
544a4735b6
don't export requests
2014-10-23 15:31:34 +02:00
Christoph Polcin
c1fc968bc9
implement MkDir aka MKCOL
2014-10-23 15:00:20 +02:00
Christoph Polcin
7caa8c8b7d
fix slashes
2014-10-23 14:26:08 +02:00
Christoph Polcin
d4b8ebb4b2
implement Remove
2014-10-23 14:10:31 +02:00
Christoph Polcin
a5b6eb39ff
skip self on ReadDir
2014-10-23 13:38:49 +02:00