Rename observer to openstack_observer, making room for more convenient
[plstackapi.git] / planetstack / openstack_observer / deleters / network_deleter.py
diff --git a/planetstack/openstack_observer/deleters/network_deleter.py b/planetstack/openstack_observer/deleters/network_deleter.py
new file mode 100644 (file)
index 0000000..0d21fda
--- /dev/null
@@ -0,0 +1,19 @@
+from core.models import Network, NetworkDeployments
+from observer.deleter import Deleter
+from observer.deleters.network_deployment_deleter import NetworkDeploymentDeleter
+from util.logger import Logger, logging
+
+logger = Logger(level=logging.INFO)
+
+class NetworkDeleter(Deleter):
+    model='Network'
+
+    def call(self, pk):
+        network = Network.objects.get(pk=pk) 
+        network_deployment_deleter = NetworkDeploymentDeleter()
+        for network_deployment in NetworkDeployments.objects.filter(network=network):
+            try:
+                network_deployment_deleter(network_deployment.id)    
+            except:
+                logger.log_exc("Failed to delte network deployment %s" % network_deployment)
+        network.delete()