You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@libcloud.apache.org by Kyle Kelley <rg...@gmail.com> on 2014/04/18 17:32:47 UTC

[dev] Copy object semantics

Hey all,

Several providers have a copy object semantic that works within one
datacenter. [Azure copy Blob](
http://msdn.microsoft.com/library/azure/dd894037.aspx), [OpenStack Swift
object copy](
http://docs.openstack.org/api/openstack-object-storage/1.0/content/copy-object.html
).

I have not dug into Amazon S3 or any others, so I could use some guidance
there.

I'd like to design it to be used cross-providers instead of ex_copy_object,
as discussed in
https://issues.apache.org/jira/browse/LIBCLOUD-275?focusedCommentId=13959367&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13959367
.

I'm imagining that the StorageDriver class would get this function header:

def copy_object(self, src_container_name, src_object_name,
dst_container_name, dst_object_name)

That layout works for both OpenStack/Rackspace/HP and Azure, minus any
additional metadata headers that you might want to send for these
providers. Is there a clean way to handle that?

I'll open up an issue next and we'll roll from there!

Cheers,

Kyle

[dev] Re: Copy object semantics

Posted by Kyle Kelley <rg...@gmail.com>.
Issue opened on the tracker:
https://issues.apache.org/jira/browse/LIBCLOUD-540


On Fri, Apr 18, 2014 at 10:32 AM, Kyle Kelley <rg...@gmail.com> wrote:

> Hey all,
>
> Several providers have a copy object semantic that works within one
> datacenter. [Azure copy Blob](
> http://msdn.microsoft.com/library/azure/dd894037.aspx), [OpenStack Swift
> object copy](
> http://docs.openstack.org/api/openstack-object-storage/1.0/content/copy-object.html
> ).
>
> I have not dug into Amazon S3 or any others, so I could use some guidance
> there.
>
> I'd like to design it to be used cross-providers instead of
> ex_copy_object, as discussed in
> https://issues.apache.org/jira/browse/LIBCLOUD-275?focusedCommentId=13959367&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13959367
> .
>
> I'm imagining that the StorageDriver class would get this function header:
>
> def copy_object(self, src_container_name, src_object_name,
> dst_container_name, dst_object_name)
>
> That layout works for both OpenStack/Rackspace/HP and Azure, minus any
> additional metadata headers that you might want to send for these
> providers. Is there a clean way to handle that?
>
> I'll open up an issue next and we'll roll from there!
>
> Cheers,
>
> Kyle
>
>
>
>