From b9a877e481f815aa615a270af988f25b8a4f2b56 Mon Sep 17 00:00:00 2001
From: h4-rahman <hamidur2.rahman@live.uwe.ac.uk>
Date: Mon, 22 Apr 2024 16:50:26 +0100
Subject: [PATCH] Removed exposed ports from Tensorflow container so it cannot
 be accessed outside docker network. Token Count decreases by 1 when using
 model.

---
 myproject/docker-compose.yml |  2 --
 myproject/myapp/views.py     | 11 +++++++++++
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/myproject/docker-compose.yml b/myproject/docker-compose.yml
index f753025..cbfb0f2 100644
--- a/myproject/docker-compose.yml
+++ b/myproject/docker-compose.yml
@@ -41,8 +41,6 @@ services:
 
   tensorflow_serving:
     image: tensorflow/serving
-    ports:
-      - "8501:8501"
     volumes:
       - ./models:/models
     environment:
diff --git a/myproject/myapp/views.py b/myproject/myapp/views.py
index 40b209f..b99c876 100644
--- a/myproject/myapp/views.py
+++ b/myproject/myapp/views.py
@@ -262,6 +262,17 @@ def generate_pdf(request):
 # Running the audio file through the model
 class InstrumentDetectionView(APIView):
     def post(self, request):
+        # Get the user's token count
+        user_token_count = UserTokenCount.objects.get(user=request.user)
+
+        # Check if the user has more than one token
+        if user_token_count.token_count < 1:
+            return Response({'error': 'Insufficient tokens'}, status=status.HTTP_403_FORBIDDEN)
+
+        # Decrease the user's token count by one
+        user_token_count.token_count -= 1
+        user_token_count.save()
+        
         serializer = InstrumentDetectionSerializer(data=request.data)
         if serializer.is_valid():
             audio_file = serializer.validated_data['audio_file']
-- 
GitLab