Exemplo n.º 1
0
 def validate_fields(self):
     super(TransportEvent, self).validate_fields()
     self.assert_field_present(
         'user_message_id',
         'event_id',
         'event_type',
     )
     event_type = self.payload['event_type']
     if event_type not in self.EVENT_TYPES:
         raise InvalidMessageField("Unknown event_type %r" % (event_type, ))
     for extra_field, check in self.EVENT_TYPES[event_type].items():
         self.assert_field_present(extra_field)
         if not check(self[extra_field]):
             raise InvalidMessageField(extra_field)
Exemplo n.º 2
0
 def validate_fields(self):
     self.assert_field_value('message_version', self.MESSAGE_VERSION)
     self.assert_field_present(
         'message_type',
         'timestamp',
         )
     if self['message_type'] is None:
         raise InvalidMessageField('message_type')
Exemplo n.º 3
0
    def validate_fields(self):
        super(TransportStatus, self).validate_fields()
        self.assert_field_present('component')
        self.assert_field_present('status')
        self.assert_field_present('type')
        self.assert_field_present('message')

        if self.payload['status'] not in self.STATUSES:
            raise InvalidMessageField(
                "Unknown status %r" % (self.payload['status'],))
Exemplo n.º 4
0
 def validate_fields(self):
     self.assert_field_value('message_version', self.MESSAGE_VERSION)
     # We might get older event messages without the `helper_metadata`
     # field.
     self.payload.setdefault('helper_metadata', {})
     self.assert_field_present(
         'message_type',
         'timestamp',
         'helper_metadata',
     )
     if self['message_type'] is None:
         raise InvalidMessageField('message_type')
Exemplo n.º 5
0
 def validate_fields(self):
     super(TransportUserMessage, self).validate_fields()
     # We might get older message versions without the `group` field.
     self.payload.setdefault('group', None)
     self.assert_field_present(
         'message_id',
         'to_addr',
         'from_addr',
         'in_reply_to',
         'session_event',
         'content',
         'transport_name',
         'transport_type',
         'transport_metadata',
         'group',
     )
     if self['session_event'] not in self.SESSION_EVENTS:
         raise InvalidMessageField("Invalid session_event %r" %
                                   (self['session_event'], ))
Exemplo n.º 6
0
 def assert_field_value(self, field, *values):
     self.assert_field_present(field)
     if self.payload[field] not in values:
         raise InvalidMessageField(field)