Metadata-Version: 1.1
Name: real-django-s3
Version: 1.2
Summary: A simple API for download and upload graphics resources to/from a Amazon S3 bucket
Home-page: https://github.com/RaydelMiranda/django-s3
Author: Raydel Miranda
Author-email: raydel.miranda.gomez@gmail.com
License: GPL
Description: Django application for handling graphics resources served in a S3 Amazon webservice
        ===================================================================================
        
        Settings
        --------
        
        Settings example:
        
        .. code:: python
        
            # Configuration example
        
            S3_BUCKET_NAME = 'bucket-name'                      # The name of the bucket we are working with
            S3_AWS_ACCESS_KEY_ID = 'AWS_ACCESS_KEY_ID'          # AWS access key
            S3_AWS_SECRET_ACCESS_KEY = 'AWS_SECRET_ACCESS_KEY'  # AWS secret access key
            S3_LOCAL_PATH = tempfile.gettempdir()               # Path where to put downloaded files.
            S3_UPLOAD_DIR_PATH = tempfile.gettempdir()          # Path where to search files for uploading.
            S3_AWS_BASE_URL = 'http://s3.amazonaws.com/'        # Base url for Amazon S3 services.
            S3_CATEGORY_MAP = {                                 # Map code - category, this is for organizing the 
                'B':  'BACKGROUND',                              # the folders in the bucket.
                'F':  'VASE',
                'CF': 'CLIPPING-FLOWER',
                'WF': 'WRAPPING-FLOWER',
                'CR': 'CATALOGUE-PRODUCT',
                'PP': 'PERSONALIZED-PRODUCT',
                'CM': 'COMPOSITION'
            }
        
            INSTALLED_APPS = [
                'django_s3',                                    # Add the app to installed apps.
            ]
        
        Transport
        =========
        
        Transport is the class for download and upload resources.
        
        Downloading a resource
        ----------------------
        
        .. code:: python
        
             from django_s3.transport import Transport
             from django_s3.resource import Resource
        
             rource = Resource('some_name.jpg')
             transport = Transport()
             filename = transport.download(resource)
             
        
        Uploading a resource
        --------------------
        
        .. code:: python
        
             from django_s3.transport import Transport
             from django_s3.resource import Resource
        
             rource = Resource('some_name.jpg')
             transport = Transport()
             filename = transport.upload(resource)
        
        Downloading a resource by name
        ------------------------------
        
        .. code:: python
        
             from django_s3.transport import Transport
             from django_s3.resource import Resource
        
             filename = transport.download('some_name.jpg')
        
        Resource
        ========
        
        Class for holding information about resources. A resource's name has to
        follow the following name convention:
        
        ``<code><serial>_<rest_of_the_resource_name><size>.<extension>``
        
        -  : Upper case letters that identify the resource type (Ex. 'BG' for
           Backgrounds)
        -  : A serial number unique for every resource.
        -  : String for a name.
        -  : The size of the image (Ex. 800x600)
        -  : The image's extension.
        
        .. code:: python
        
            # Example that shows how to get info about a resource.
        
            from django_s3.resource import Resource
        
             rource = Resource('some_name.jpg')
             code = resource.code               # The code of the type.
             size = resource.size               # The size, as a 2-tuple value.    
             extension = resource.extension     # The extension
             category = resource.category       # The category mapped to the code.
             url = resource.url                 # The url where to find the resource
        
            All this attributes are read-only, and computed at creation time.
        
        Browser
        =======
        
        A class for walking through the bucket filesystem.
        
        .. code:: python
        
        
            from django_s3.browser import Browser
            from django_s3.browser import FileTreeNode
        
        
            browser = Browser()
            root_node = browser.walk()                  # Returns the whole directory tree. 
            node = browser.walk('path/to/some/node')    # Returns the directory tree relative to the path
                                                        # passed by parameter
                                                        
            # You can check for the node type as well
            if node.type == FileTreeNode.DIR:
                pass
        
            if node.type == FileTreeNode.File:
                pass
        
        Accessing resource info using Resource class.
        ---------------------------------------------
        
        Just create a new resource instance and query it for its metadata.
        
        .. code:: python
        
        
            from django_s3.browser import Browser
        
            browser = Browser()
            node = browser.walk('path/to/some/node')    # Returns the directory tree relative to the path
                                                        # passed by parameter
            resource = Resource(node.name)              # Now you can see metadata for resources.                                         
        
Keywords: development web django amazon s3
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
