Add the command that registers to the SMO; Make the create registration and create...
[pti/o2.git] / o2ims / domain / subscription_obj.py
index 846bf95..ff8beaf 100644 (file)
@@ -30,14 +30,6 @@ class Subscription(AgRoot, Serializer):
         self.filter = filter
 
 
-class Registration(AgRoot, Serializer):
-    def __init__(self, id: str, url: str) -> None:
-        super().__init__()
-        self.registrationId = id
-        self.callback = url
-        self.notified = False
-
-
 class NotificationEventEnum(str, Enum):
     CREATE = 'CREATE'
     MODIFY = 'MODIFY'
@@ -53,6 +45,30 @@ class Message2SMO(Serializer):
         self.updatetime = updatetime
 
 
+class RegistrationStatusEnum(str, Enum):
+    CREATED = 'CREATED'
+    NOTIFIED = 'NOTIFIED'
+    FAILED = 'FAILED'
+
+
+class Registration(AgRoot, Serializer):
+    def __init__(self, id: str, url: str,
+                 status: RegistrationStatusEnum =
+                 RegistrationStatusEnum.CREATED,
+                 comments: str = '') -> None:
+        super().__init__()
+        self.registrationId = id
+        self.callback = url
+        self.status = status
+        self.comments = comments
+
+
+class RegistrationMessage(Serializer):
+    def __init__(self, is_all: bool = None, id: str = '') -> None:
+        self.all = is_all if is_all is not None else False
+        self.id = id
+
+
 @dataclass
 class EventState():
     Initial = 0