From dbfcd02e062dfe645dd19cfe49ee3ac9bf9be512 Mon Sep 17 00:00:00 2001
From: Sara Djordjevic <sarasdj@stud.ntnu.no>
Date: Mon, 5 Feb 2024 14:47:09 +0100
Subject: [PATCH] :add: update_map endpoint, not tested2

---
 .../__pycache__/data_structs.cpython-311.pyc   | Bin 0 -> 916 bytes
 .../__pycache__/update_map.cpython-311.pyc     | Bin 0 -> 1137 bytes
 server/calc_model/update_map.py                |   2 +-
 server/{sturcts.py => data_structs.py}         |   2 --
 server/main.py                                 |  17 +++++++++++++++++
 server/stub/stub.py                            |   2 +-
 6 files changed, 19 insertions(+), 4 deletions(-)
 create mode 100644 server/__pycache__/data_structs.cpython-311.pyc
 create mode 100644 server/calc_model/__pycache__/update_map.cpython-311.pyc
 rename server/{sturcts.py => data_structs.py} (83%)

diff --git a/server/__pycache__/data_structs.cpython-311.pyc b/server/__pycache__/data_structs.cpython-311.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..637f0e2f98054a92e7adcb5e251233a6d0ad1dbd
GIT binary patch
literal 916
zcmZ3^%ge>Uz`)@8>_F;SCI*JbAPx+3KpCG+7#J9)Go*kZBba1LVNPM0!yd)J#Nf`5
z!rH=+!nTZwfnhZhR0l&8V+vz1gC=`AOu!Gy;&6D$$-uy{lKmEEPJUi`W=UyE>Mf3(
z#1aULx1cCBIkO<MB(WqjKkpW2Nk(RJc3x_6@hz_0#ESUx)XemZl3P5*iD{`NmGL>L
zWvMy0I1-bSON$bdE0bZCfoMh$!N9=qSp@9(RFIPxqL@+`TNt94Q<#DoG?{O4x+In)
z2IObvl_bOb3epAg1v5x%23TtiV+}(*NF0o7m}(f}VTLo*FxN1|gVaOhSZWyJK{_Ek
z)*6O*7BG{6fuV-2h9RC6&SS4(h-ZWGQW%06G#UMhKw339Zm|@n=A;#YbQXa$6oJ$g
zu`@6*6oFh>1PZ?*P^=Y$xC&74%P-j~CbT%Us5mCCB(F5aKQGm#D6=e8L07>q#4j|)
zCAB!aB)=dgAjsd{$kM<drYN-_AIvCDEh<Ybib+W<NsKQpDJo4aDb_2fyu}e8pP83g
z5+7eB1P>-Xm>3@e14FST0|P??!wpHL4wfFi8xjf~EIqt8WVJe2u5d`fM5R<ZSbF$x
z$Y_8>C83HscsqDMgFNr2$pW$`FEKYYKK>S0e0*+xN@)&=%@ZGASelpvktq@YB^iby
zK~Na*g9siN!3%PTGT0#v3=sH%iJevP0|O=j(GSw9$#jda02J@>C8@auIf*5yMIhlK
zQIN54TYhoaK-^<jB+kIV0E+bDC<X?G56p~=j33w-ghX!$2;UHuydfxZLrC<7i1-Zw
k!4Lc#LQEeRIE0uQ_&$hnFe-jvz$89`#J+$CG+D3<0Z72nwg3PC

literal 0
HcmV?d00001

diff --git a/server/calc_model/__pycache__/update_map.cpython-311.pyc b/server/calc_model/__pycache__/update_map.cpython-311.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..3459a0a2d6913cc3d8585f946f395a5140620cfe
GIT binary patch
literal 1137
zcmZ3^%ge>Uz`(HP>48*#CI*JbAPx*OLm8iQ7#J9)Go&!2Fy=5sfoP^2#$2W-rd;MI
zW=0U7F^46JC6y(M6{>?_0UL~kOs6m}V`N}h%?J|%>t)Gd&*g~XU}Q*PZDEMwOkoUW
z&}4fFQsSq{bc@w3C$TvD7JF84eqLr;Wfha2o+jfhPM5@z#DM(Fypm+NVGIlmAnQSn
z{(J@OU`~b-B-t!DyM`f)31mJ9qdKUTv4kBY3c)puXtGQ-Oeu_MOu-Dw3?&>8H6T)j
zp-8`$xr7_UhTs&Y8s^yybD2=}Gcq8Xp2D2Ml8I(R3TqluGE*c&3PUY(9dj_0E@v!f
zs9=s{C}-4U^Lu%Mfq|h)!?ma=zepi7Pa!!!uPn8wBr`8vp#T&h3Mq*ti3%n83SPnf
zepU*%SW`hNt3*BXN>YpR5_1%SQ;W({ixj{HWPV{}V9;c{#R3Z6TdXOixdp|yIO5||
zGLuW<<BM1r7#MDGx>h8o7L;V>=iOp0D9X$$(PX*B1+pX_Y~L+TkluKZz%7oV)Z&8t
zyyDbbjH$&S%?b(%3ctdWtztrpQ;UjY@=EebWBl_{U5YZxQWbO+{6hRfV_Z^;vrF;|
zVgiEv-Hj{_3}T8>3-ZB?Vz5hNk`r^1<8$*<QgdQT3sMqGQsZ+I3-k&qZwVC?<tL{W
z7lSQ_xTZ*$fq?-Og~d}D7#JEDJ}_~!Ixs#Jk(lB&qw0#h(M1vCD<Z}noL|`(M5Jd}
zUKCcnBCOiM@qk}^hHyvi1rC`XcezDAFfg+^Fd~z8Ie0Jd+3XO!z-M!T&*mbB?G+B&
z3mmpj`Nd|iUr@BTAZ~e)-|7m#)eh$i{Pq_((9w?{KYn~*2O0X~$B$wu1_p*EZ9Rr{
zT#o9@J5(H%m=DS@I;t}tRAO~hXV&B@;sgadYZ@rw7lD#9Bp#THD~oTj6eN~p++s^C
zC`ipqxy1tt_4wkFqSEA&;v!J$2m5~|!)H)3ED~a1VEDyhlbfGXnv-f*B+bCU0LlZ!
z#S9D#AD9^#8E-IfH-O;{289dQ&<zHz1~9zAz}&*o&fmm8f#o8D=oJRh3k;$+7?duc
Rq7N)QjG%zSP8NYY4gjD(9*F<|

literal 0
HcmV?d00001

diff --git a/server/calc_model/update_map.py b/server/calc_model/update_map.py
index 05e67323..ab93991e 100644
--- a/server/calc_model/update_map.py
+++ b/server/calc_model/update_map.py
@@ -2,7 +2,7 @@ import json
 from flask import Flask, jsonify
 import sys
 sys.path.append('..')  # Add root directory to the system path
-from server import DataPoint
+from data_structs import DataPoint
 
 def process_data_point(data_point):
     try:
diff --git a/server/sturcts.py b/server/data_structs.py
similarity index 83%
rename from server/sturcts.py
rename to server/data_structs.py
index 1bc01706..a0709b8e 100644
--- a/server/sturcts.py
+++ b/server/data_structs.py
@@ -20,6 +20,4 @@ class DataPoint:
         self.safety_level = safety_level
         self.accuracy = accuracy
 
-# Test instance
-test_instance = DataPoint(longitude=1.5, latitude=2.5, precipitation=10.0, thickness = 10.0, safety_level= 5, max_weight= 80)
 
diff --git a/server/main.py b/server/main.py
index 503048ae..552c4918 100644
--- a/server/main.py
+++ b/server/main.py
@@ -3,6 +3,8 @@ from http.server import HTTPServer, BaseHTTPRequestHandler
 from pymongo import MongoClient
 from pymongo.server_api import ServerApi
 from consts import DB_NAME, COLLECTION, MONGO_URI, MONGO_CERT_PATH, SSL_CERT_PATH, SSL_KEY_PATH, HOST, PORT
+from calc_model.update_map import process_data_point
+from data_structs import DataPoint
 import atexit
 import ssl
 
@@ -29,6 +31,21 @@ class IceHTTP(BaseHTTPRequestHandler):
             self.send_header("Content-type", "text/plain")
             self.end_headers()
             self.wfile.write(b"Root path hit!")
+        elif self.path == '/update_map':
+            # NB temporary test data
+            data_point_instance = DataPoint(longitude=1.0, latitude=2.0, precipitation=10.5, thickness=3.0, max_weight=50.0, safety_level=3, accuracy=8)
+
+            # Get response from process_data_point
+            response, status_code = process_data_point(data_point_instance)
+
+            # Send the response
+            self.send_response(status_code)
+            self.send_header("Content-type", "application/json")
+            self.end_headers()
+
+            # Write response to response object
+            self.wfile.write(response.encode('utf-8'))
+
 
 # Start a server on port 8443 using defined HTTP class
 if __name__ == "__main__":
diff --git a/server/stub/stub.py b/server/stub/stub.py
index cac8d74f..9abbfba8 100644
--- a/server/stub/stub.py
+++ b/server/stub/stub.py
@@ -1,6 +1,6 @@
 import sys
 sys.path.append('..')  # Add root directory to the system path
-from server import DataPoint
+from data_structs import DataPoint
 
 # Test instances
 test_data1 = DataPoint(longitude=1.0, latitude=2.0, precipitation=10.5, thickness=3.0, max_weight=50.0, safety_level=2.5, accuracy=8)
-- 
GitLab