Author: tomaz
Date: Sun Jun  3 08:09:06 2012
New Revision: 1345631

URL: http://svn.apache.org/viewvc?rev=1345631&view=rev
Log:
Allow user to specify container CDN TTL by passing in ex_ttl keyword argument in
the CloudFiles driver.

Modified:
    libcloud/trunk/libcloud/storage/base.py
    libcloud/trunk/libcloud/storage/drivers/cloudfiles.py

Modified: libcloud/trunk/libcloud/storage/base.py
URL: 
http://svn.apache.org/viewvc/libcloud/trunk/libcloud/storage/base.py?rev=1345631&r1=1345630&r2=1345631&view=diff
==============================================================================
--- libcloud/trunk/libcloud/storage/base.py (original)
+++ libcloud/trunk/libcloud/storage/base.py Sun Jun  3 08:09:06 2012
@@ -76,8 +76,8 @@ class Object(object):
     def get_cdn_url(self):
         return self.driver.get_object_cdn_url(obj=self)
 
-    def enable_cdn(self):
-        return self.driver.enable_object_cdn(obj=self)
+    def enable_cdn(self, **kwargs):
+        return self.driver.enable_object_cdn(obj=self, **kwargs)
 
     def download(self, destination_path, overwrite_existing=False,
                  delete_on_failure=True):
@@ -122,8 +122,8 @@ class Container(object):
     def get_cdn_url(self):
         return self.driver.get_container_cdn_url(container=self)
 
-    def enable_cdn(self):
-        return self.driver.enable_container_cdn(container=self)
+    def enable_cdn(self, **kwargs):
+        return self.driver.enable_container_cdn(container=self, **kwargs)
 
     def get_object(self, object_name):
         return self.driver.get_object(container_name=self.name,

Modified: libcloud/trunk/libcloud/storage/drivers/cloudfiles.py
URL: 
http://svn.apache.org/viewvc/libcloud/trunk/libcloud/storage/drivers/cloudfiles.py?rev=1345631&r1=1345630&r2=1345631&view=diff
==============================================================================
--- libcloud/trunk/libcloud/storage/drivers/cloudfiles.py (original)
+++ libcloud/trunk/libcloud/storage/drivers/cloudfiles.py Sun Jun  3 08:09:06 
2012
@@ -274,9 +274,13 @@ class CloudFilesStorageDriver(StorageDri
         container_cdn_url = self.get_container_cdn_url(container=obj.container)
         return '%s/%s' % (container_cdn_url, obj.name)
 
-    def enable_container_cdn(self, container):
+    def enable_container_cdn(self, container, ex_ttl=None):
         container_name = container.name
         headers = {'X-CDN-Enabled': 'True'}
+
+        if ex_ttl:
+            headers['X-TTL'] = ex_ttl
+
         response = self.connection.request('/%s' % (container_name),
                                            method='PUT',
                                            headers=headers,


Reply via email to