Ejemplo n.º 1
0
def _xml_formatter_list():
    root = XML('services')
    access_service_obj = AccessService(engine_config)
    service_list = access_service_obj.getServiceList()
    for service in service_list:
        root.append(XML('service').append_dict(service))
    return repr(root)
Ejemplo n.º 2
0
 def _get_data():
     try:
         req = urllib2.Request(url, headers=headers)
         resp = urllib2.urlopen(req)
         return resp.read()
     except urllib2.HTTPError, e:
         tree = XML.loads(e.read())
         raise S3Error(tree, e.code)
Ejemplo n.º 3
0
    def _parse_list_buckets(self, data):
        tree = XML.loads(data)
        owner = AmazonUser.from_xml(tree.find('Owner'))

        buckets = []
        for ele in tree.find('Buckets').getchildren():
            buckets.append(S3Bucket.from_xml(ele))

        return owner, buckets
Ejemplo n.º 4
0
 def _parse_get_service(self, data):
     tree = XML.loads(data)
     owner = GSUser.from_xml(tree.find('Owner'))
     
     buckets = []
     for ele in tree.find('Buckets').getchildren():
         buckets.append(GSBucket.from_xml(ele))
         
     return owner, buckets
Ejemplo n.º 5
0
 def _parse_list_buckets(self, data):
     tree = XML.loads(data)
     owner = AmazonUser.from_xml(tree.find('Owner'))
     
     buckets = []
     for ele in tree.find('Buckets').getchildren():
         buckets.append(S3Bucket.from_xml(ele))
         
     return owner, buckets
Ejemplo n.º 6
0
 def _parse_get_acl(self, data):
     tree = XML.loads(data)
     
     owner = GSUser.from_xml(tree.find('Owner'))
     
     grants = []
     for entry in tree.find('Entries').getchildren():
         grants.append(GSAclGrant.from_xml(entry))
            
     return owner, grants
Ejemplo n.º 7
0
    def make_xml(self):
        """Returns a utils' XML object"""

        with XML('mime-info', xmlns=XMLNS) as xml:

            mimetype = XML.tag('mime-type', type=self.mimetype)

            mimetype.extend([
                XML.tag('comment', self.comment or ""),
                XML.tag('glob-deleteall')
            ])

            mimetype.extend([
                XML.tag('glob-pattern', pattern) 
                for pattern in self.patterns
            ])

            xml.elem.append(mimetype)

        return xml
Ejemplo n.º 8
0
 def _get_data():
     headers = self.get_headers()
     try:
         opener = urllib2.build_opener(urllib2.HTTPHandler)
         req = urllib2.Request(self.end_point, data=self.data, headers=headers)
         req.get_method = lambda: self.action
         resp = opener.open(req)
         
         if include_headers:
             return resp.read(), resp.headers.dict
         return resp.read()
     except urllib2.HTTPError, e:
         tree = XML.loads(e.read())
         raise S3Error(e.code, tree)
Ejemplo n.º 9
0
        def _get_data():
            headers = self.get_headers()
            try:
                opener = urllib2.build_opener(urllib2.HTTPHandler)
                req = urllib2.Request(self.end_point,
                                      data=self.data,
                                      headers=headers)
                req.get_method = lambda: self.action
                resp = opener.open(req)

                if include_headers:
                    return resp.read(), resp.headers.dict
                return resp.read()
            except urllib2.HTTPError, e:
                tree = XML.loads(e.read())
                raise S3Error(e.code, tree)
Ejemplo n.º 10
0
def _xml_formatter_req(*args, **kwargs):
    root = XML('service_requests')
    access_service_obj = AccessService(engine_config)
    type = kwargs.pop('type')
    subroot = XML('request')

    if(type == 'post'):
        form = kwargs.pop('form')
        post_service_requests = access_service_obj.postServiceRequests(form)
        subroot.append_dict(post_service_requests)
    else:
        args = kwargs.pop('args')
        get_service_requests = access_service_obj.getServiceRequests(args)
        for request in get_service_requests:
            subroot.append_dict(request)

    root.append(subroot)
    return repr(root)
Ejemplo n.º 11
0
 def _parse_get_bucket(self, data):
     tree = XML.loads(data)
     bucket = GSBucket.from_xml(tree)
     has_next = True if bucket.is_truncated == 'true' else False
     
     objs = []
     for ele in tree.findall('Contents'):
         obj = GSObject.from_xml(ele)
         obj.bucket = bucket
         objs.append(obj)
         
     common_prefix = []
     for ele in tree.findall('CommonPrefixes'):
         prefix = ele.find('Prefix')
         if hasattr(prefix, 'text'):
             common_prefix.append(prefix.text)
         
     return objs, common_prefix, has_next
Ejemplo n.º 12
0
 def _parse_get_bucket(self, data):
     tree = XML.loads(data)
     bucket = S3Bucket.from_xml(tree)
     has_next = True if bucket.is_truncated == 'true' else False
     
     objs = []
     for ele in tree.findall('Contents'):
         obj = S3Object.from_xml(ele)
         obj.bucket = bucket
         objs.append(obj)
         
     common_prefix = []
     for ele in tree.findall('CommonPrefixes'):
         prefix = ele.find('Prefix')
         if hasattr(prefix, 'text'):
             common_prefix.append(prefix.text)
         
     return objs, common_prefix, has_next
Ejemplo n.º 13
0
 def _parse_get_acl(self, data):
     tree = XML.loads(data)
     
     owner = AmazonUser.from_xml(tree.find('Owner'))
     
     grants = {}
     for grant in tree.findall('AccessControlList/Grant'):
         user = AmazonUser.from_xml(grant.find('Grantee'))
         permission = grant.find('Permission').text
         
         if not user.display_name and user.uri == ALL_USERS_URI:
             user.display_name = 'AllUsers'
         
         if user not in grants:
             grants[user] = [permission]
         else:
             if permission not in grants[user]:
                 grants[user].append(permission)
            
     return owner, grants
Ejemplo n.º 14
0
    def _parse_get_acl(self, data):
        tree = XML.loads(data)

        owner = AmazonUser.from_xml(tree.find('Owner'))

        grants = {}
        for grant in tree.findall('AccessControlList/Grant'):
            user = AmazonUser.from_xml(grant.find('Grantee'))
            permission = grant.find('Permission').text

            if not user.display_name and user.uri == ALL_USERS_URI:
                user.display_name = 'AllUsers'

            if user not in grants:
                grants[user] = [permission]
            else:
                if permission not in grants[user]:
                    grants[user].append(permission)

        return owner, grants
Ejemplo n.º 15
0
def _xml_formatter_def(service_code):
    root = XML('service_definition')
    access_service_obj = AccessService(engine_config)
    service_definition = access_service_obj.getServiceDefinition(service_code)
    root.append_dict(service_definition)
    return repr(root)
Ejemplo n.º 16
0
def _xml_formatter():
    contents = _contents_from_yaml()
    element = XML('discovery')
    return repr(element.append_dict(contents))
Ejemplo n.º 17
0
def _xml_formatter():
    contents = _contents_from_yaml()
    element = XML('discovery')
    return repr(element.append_dict(contents))
Ejemplo n.º 18
0
    def generate_response(self, result, path, *, client_id, **params):
        try:
            return (  # NOQA: E124
                XML(
                    'rss',
                    XML(
                        'channel',
                        XML('title', f'Results for {path}'),
                        XML('description', f'With parameters "{params}"'),
                        XML('link', f'https://{soundcloud.Client.host}{path}'),
                        XML('atom:link', f'{self.HOST}{path}'),
                        *[
                            XML(
                                'item',
                                XML('title', item.title),
                                XML('description', item.description),
                                XML('enclosure',
                                    type='audio/mpeg',
                                    url=get_stream_url(item, client_id)),
                                XML('link', item.permalink_url),
                                XML('guid', item.id),
                            ) for item in result
                        ],
                    ),
                    version='2.0',
                    **{'xmlns:atom': 'http://www.w3.org/2005/Atom'},
                ))

        except AttributeError as attribute_error:
            return ExecutionException(
                bytes_message=str(attribute_error).encode())