[ACORD-18] CORD 3.0 integration for monitoring service
Adding the new files
-Updating models
-Fixing synchronizer
Change-Id: I148e06d421a42acdeb8366a7816d0589f8a39e54
diff --git a/xos/attic/monitoringpublisher_model.py b/xos/attic/monitoringpublisher_model.py
new file mode 100644
index 0000000..9769591
--- /dev/null
+++ b/xos/attic/monitoringpublisher_model.py
@@ -0,0 +1,33 @@
+default_attributes = {}
+def __init__(self, *args, **kwargs):
+ ceilometer_services = CeilometerService.get_service_objects().all()
+ if ceilometer_services:
+ self._meta.get_field("provider_service").default = ceilometer_services[0].id
+ super(MonitoringPublisher, self).__init__(*args, **kwargs)
+
+def can_update(self, user):
+ #Allow creation of this model instances for non-admin users also
+ return True
+
+@property
+def creator(self):
+ from core.models import User
+ if getattr(self, "cached_creator", None):
+ return self.cached_creator
+ creator_id=self.get_attribute("creator_id")
+ if not creator_id:
+ return None
+ users=User.objects.filter(id=creator_id)
+ if not users:
+ return None
+ user=users[0]
+ self.cached_creator = users[0]
+ return user
+
+@creator.setter
+def creator(self, value):
+ if value:
+ value = value.id
+ if (value != self.get_attribute("creator_id", None)):
+ self.cached_creator=None
+ self.set_attribute("creator_id", value)
\ No newline at end of file