diff --git a/iotclient/iot_client.py b/iotclient/iot_client.py index 31d7f95..b986a13 100644 --- a/iotclient/iot_client.py +++ b/iotclient/iot_client.py @@ -126,6 +126,23 @@ else: # main input loop command = "dummy" + + +def delete_all_image(): + print("Deleting all images") + + baseurl = "http://127.0.0.1:8000" + get_url = "/image/delete/all" + + try: + response = requests.delete(baseurl + get_url) + payload = response.json() + print(payload) + except os.error: + print("Error deleting request") + return True + + while (command.lower() not in ["exit", "quit", "end"]): try: @@ -261,6 +278,16 @@ while (command.lower() not in ["exit", "quit", "end"]): delete_image(filename[:-4]) index = index + 1 + if command.lower() == "deleteall": + if metadata is None: + print("No metadata loaded") + continue + if image_folder is None: + print("No image folder selected") + continue + delete_all_image() + index = index + 1 + if command.lower() == "rapid": if metadata is None: print("No metadata loaded") diff --git a/middleware/app_be/services/mongodbservice.py b/middleware/app_be/services/mongodbservice.py index 2d44a02..ebf031c 100644 --- a/middleware/app_be/services/mongodbservice.py +++ b/middleware/app_be/services/mongodbservice.py @@ -72,4 +72,14 @@ class MongoDBService: @staticmethod def deleteAll(): - print("im Delete all") \ No newline at end of file + instance = MongoManager.getInstance() + + db = instance.AIC + col = db.metadata + + try: + resp = col.delete_many({}) + return resp + except: + print("Could not delete Metadata") + return resp \ No newline at end of file diff --git a/middleware/app_be/urls.py b/middleware/app_be/urls.py index 1896baa..3f4723d 100644 --- a/middleware/app_be/urls.py +++ b/middleware/app_be/urls.py @@ -25,6 +25,7 @@ urlpatterns = [ url(r'^test/', TestApiClass.test_api), url(r'^image/get/all$', ImageEndpoint.image_api_get_all), url(r'^image/get/(?P[\w-]+)$', ImageEndpoint.image_api_get_single), + url(r'^image/delete/all$', ImageEndpoint.image_api_delete_all), url(r'^image/delete/(?P[\w-]+)$', ImageEndpoint.image_api_delete), url(r'^image/post$', ImageEndpoint.image_api_post) ] diff --git a/middleware/app_be/views/rest_api.py b/middleware/app_be/views/rest_api.py index 5a3a545..a02cf03 100644 --- a/middleware/app_be/views/rest_api.py +++ b/middleware/app_be/views/rest_api.py @@ -114,3 +114,14 @@ class ImageEndpoint: print(resp) return JsonResponse({'Result': 'success1'}, safe=False) + + @staticmethod + @api_view(['DELETE']) + def image_api_delete_all(request: HttpRequest): + + logger.debug('Image DELETE single call: {}'.format(request)) + + resp = MongoDBService.deleteAll() + print(resp) + + return JsonResponse({'Result': 'success1'}, safe=False)