* Make CopyPartSource constructor private
... and make individual record accessors exported. This change allows
adding of additional record members to CopyPartSource without breaking
applications.
* Move high-level copyObject functions to CopyObject module
* Make copyObject use SourceInfo, DestinationInfo
... to allow supporting features like client-side and server-side
encryption subsequently.
- fix warnings in tests/LiveServer.hs
- Add full examples for presignedGetObjectUrl and
presignedPutObjectUrl
- Lower-case `*URL` API functions to `*Url` to adopt a Haskell naming
convention
Finishes and fixes#35, #36 and #37.
This change adds 3 functions to main API: presignedGetObjectURL,
presignedPutObjectURL and presignedHeadObjectURL.
A fourth more generic API is added to `Network.Minio.S3API` -
makePresignedURL.
Additionally, refactors signing code for readability and the ability
to reuse for pre-signing.
* Performs server side copy of an object by creating a new object that
is a copy of an existing object or part of an existing object.
* The user may specify an object on server of any size, and optionally
specify a byte range to only copy a part of the object.
* Copy conditions are also supported.