)]}'
{"vitrage/api_handler/apis/base.py":[{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"a73574e64db48c11767be4ae7e5ac7a0cb4d08ab","unresolved":false,"context_lines":[{"line_number":135,"context_line":"        return query_with_project_id"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"def lock_graph(func):"},{"line_number":139,"context_line":"    def api_backend_func(*args, **kwargs):"},{"line_number":140,"context_line":"        try:"},{"line_number":141,"context_line":"            args[0].entity_graph.lock.acquire()"},{"line_number":142,"context_line":"            #LOG.info(\"API - ACQUIRED\")"},{"line_number":143,"context_line":"            result \u003d func(*args, **kwargs)"},{"line_number":144,"context_line":"            return result"},{"line_number":145,"context_line":"        finally:"},{"line_number":146,"context_line":"            args[0].entity_graph.lock.release()"},{"line_number":147,"context_line":"            #LOG.info(\"API - RELEASED\")"},{"line_number":148,"context_line":"    return api_backend_func"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_713cbd2d","line":148,"range":{"start_line":138,"start_character":1,"end_line":148,"end_character":27},"updated":"2018-12-19 14:13:57.000000000","message":"def lock_graph(func):\n   @functools.wraps(api_backend_func)\n    def api_backend_func(*args, **kwargs):\n       with args[0].entity_graph.lock\n          return func(*args, **kwargs)\n    return api_backend_func","commit_id":"2b584685cce2b6b2c6db6b839a88f31bba2643f7"}]}
