'WSGI entry point'

def __call__(self, env, start_response):

    if env.get('swift.slo_override'):
        return self.app(env, start_response)
    req = Request(env)
    try:
        (vrs, account, container, obj) = req.split_path(4, 4, True)
    except ValueError:
        return self.app(env, start_response)
    try:
        if ((req.method == 'PUT') and (req.params.get('multipart-manifest') == 'put')):
            return self.handle_multipart_put(req, start_response)
        if ((req.method == 'DELETE') and (req.params.get('multipart-manifest') == 'delete')):
            return self.handle_multipart_delete(req)(env, start_response)
        if ((req.method == 'GET') or (req.method == 'HEAD')):
            return self.handle_multipart_get_or_head(req, start_response)
        if ('X-Static-Large-Object' in req.headers):
            raise HTTPBadRequest(request=req, body='X-Static-Large-Object    is    a    reserved    header.    To    create    a    static    large    object    add    query    param    multipart-manifest=put.')
    except HTTPException as err_resp:
        return err_resp(env, start_response)
    return self.app(env, start_response)
