def update_route(self, request, *args, **kwargs): socket = self.get_object() if not socket.install_url: raise SocketWithUrlRequired() if socket.is_locked: raise SocketLocked() socket.update() return Response(status=status.HTTP_200_OK, data=self.serializer_class(socket, context=self.get_serializer_context()).data)
def perform_update(self, serializer): socket = serializer.instance if socket.is_locked: # Retry process to make sure it runs ok. if socket.status == Socket.STATUSES.CHECKING: SocketCheckerTask.delay(instance_pk=self.request.instance.pk) elif socket.status == Socket.STATUSES.PROCESSING: SocketProcessorTask.delay(instance_pk=self.request.instance.pk) raise SocketLocked() old_env = socket.environment super().perform_update(serializer) self.check_environment(socket.pk, old_env, socket.environment_id)
def perform_update(self, serializer): env = serializer.instance if env.is_locked: raise SocketLocked() super().perform_update(serializer)
def perform_destroy(self, instance): if instance.is_locked: raise SocketLocked() super().perform_destroy(instance) self.check_environment(instance.pk, instance.environment, None)