Beispiel #1
0
 def func_wrapper(request, *args, **kwargs):
     key = location_lock_key(request.domain)
     client = get_redis_client()
     lock = client.lock(key, timeout=LOCK_LOCATIONS_TIMEOUT)
     if lock.acquire(blocking=False):
         try:
             return func(request, *args, **kwargs)
         finally:
             release_lock(lock, True)
     else:
         message = _("Some of the location edits are still in progress, "
                     "please wait until they finish and then try again")
         messages.warning(request, message)
         if request.method == 'DELETE':
             # handle delete_location view
             return json_response({'success': False, 'message': message})
         else:
             return HttpResponseRedirect(request.META['HTTP_REFERER'])
Beispiel #2
0
 def func_wrapper(request, *args, **kwargs):
     key = location_lock_key(request.domain)
     client = get_redis_client()
     lock = client.lock(key, LOCK_LOCATIONS_TIMEOUT)
     if lock.acquire(blocking=False):
         try:
             return func(request, *args, **kwargs)
         finally:
             release_lock(lock, True)
     else:
         message = _("Some of the location edits are still in progress, "
                     "please wait until they finish and then try again")
         messages.warning(request, message)
         if request.method == 'DELETE':
             # handle delete_location view
             return json_response({'success': False, 'message': message})
         else:
             return HttpResponseRedirect(request.META['HTTP_REFERER'])