Example #1
0
 def handler(request):
     if int(code) in deproxy.messages_by_response_code:
         message = deproxy.messages_by_response_code[int(code)]
     else:
         message = 'Something'
     logger.debug('Returning {0}'.format(code))
     return deproxy.Response(code=code, message=message)
Example #2
0
    def handler(self, request):
        logger.debug('Handling a request')
        if self.has_entry:
            template = atom_with_entry_template
        else:
            template = atom_empty_template

        params = {
            'atom_port': self.atom_port,
            'time': datetime.datetime.now().strftime('%Y-%m-%dT%H:%M:%SZ'),
            'token': client_token,
            'tenant': client_tenant,
        }

        body = template.safe_substitute(params)
        logger.debug(body)

        headers = {
            'Connection': 'close',
            'Content-type': 'application/xml',
        }

        self.has_entry = False

        return deproxy.Response(code=200,
                                message='OK',
                                headers=headers,
                                body=body)
Example #3
0
 def custom_handler(request):
     headers = deproxy.HeaderCollection()
     headers.add('Name', 'Value1')
     headers.add('Name', 'Value2')
     return deproxy.Response(code=200,
                             message='OK',
                             headers=headers,
                             body=None)
Example #4
0
def make_response(code, message=None, headers=None, body=None):
    """ Kludge to get around a bug in deproxy 0.8 """
    if message is None:
        if code in deproxy.messages_by_response_code:
            message = deproxy.messages_by_response_code[code]
        elif int(code) in deproxy.messages_by_response_code:
            message = deproxy.messages_by_response_code[int(code)]
        else:
            message = ''
    return deproxy.Response(code, message, headers, body)
Example #5
0
 def custom_handler2(request):
     return deproxy.Response(code='606', message='Spoiler', headers={},
                             body=None)
Example #6
0
 def custom_handler1(request):
     return deproxy.Response(code='605', message='Custom', headers={},
                             body=None)
Example #7
0
 def custom_handler(request):
     return deproxy.Response(code=200, message='OK',
                             headers={'transfer-encoding': 'chunked'},
                             body=chunked_body)
Example #8
0
 def custom_handler(request):
     return deproxy.Response(code=200, message='OK', headers=None,
                             body=body)
Example #9
0
 def handler3(self, request):
     return (deproxy.Response(code=606, message="Spoiler",
                              headers={"Header-Name": "Header-Value"},
                              body='Snape Kills Dumbledore'), False)
Example #10
0
 def custom_handler_method(self, request):
     return deproxy.Response(code='604', message='Custom', headers={},
                             body=None)
Example #11
0
 def custom_handler(request):
     return deproxy.Response(code=606, message="Spoiler",
                             headers={"Header-Name": "Header-Value"},
                             body='Snape Kills Dumbledore')
Example #12
0
    def handler(self, request):
        logger.debug('Handling a request')
        xml = False
        if 'Accept' in request.headers:
            for value in request.headers.find_all('Accept'):
                if 'application/xml' in value:
                    xml = True
                    break

        t = datetime.datetime.now() + datetime.timedelta(days=1)

        if request.method == 'GET':

            if 'tokens' in request.path:
                # validating a client token
                self.validations += 1

                params = {
                    'expires': t.strftime('%Y-%m-%dT%H:%M:%S%z'),
                    'userid': client_userid,
                    'username': client_username,
                    'tenant': client_tenant,
                    'token': client_token,
                }

                if self.ok:
                    code = 200
                    message = 'OK'
                    if xml:
                        template = identity_success_xml_template
                    else:
                        template = identity_success_json_template
                else:
                    code = 404
                    message = 'Not Found'
                    if xml:
                        template = identity_failure_xml_template
                    else:
                        template = identity_failure_json_template
            else:
                # getting groups
                if xml:
                    template = groups_xml_template
                else:
                    template = groups_json_template
                params = {}
                code = 200
                message = 'OK'

        elif request.method == 'POST':
            # get admin token

            params = {
                'expires': t.strftime('%Y-%m-%dT%H:%M:%S%z'),
                'userid': admin_userid,
                'username': admin_username,
                'tenant': admin_tenant,
                'token': admin_token
            }

            code = 200
            message = 'OK'
            if xml:
                template = identity_success_xml_template
            else:
                template = identity_success_json_template
            pass
        else:
            raise 'Unknown request: %r' % request

        body = template.safe_substitute(params)
        headers = {
            'Connection': 'close',
        }
        if xml:
            headers['Content-type'] = 'application/xml'
        else:
            headers['Content-type'] = 'application/json'
        return deproxy.Response(code=code,
                                message=message,
                                headers=headers,
                                body=body)