""" LabelAudit ================= Thin model object that encapsulates a label audit. This provides a structured container for the data from and can be used to access and/or modify properties of an audit. Persistence of changes is not handled here. """ class LabelAudit: def __init__(self): self.youtube_audit_id = None self.vendor_id = None self.report_location = None self.initiated_by_id = None self.audit_status = None self.updated_timestamp = None def from_vapi(vapi_data): """Creates a model object with the given data from VAPI. Args: vapi_data (dict): Camel-case data from VAPI Return: LabelAudit: model object populated with the given data """ audit = LabelAudit() audit.audit_status = vapi_data.get('auditStatus') audit.initiated_by_id = int(vapi_data.get('initiatedById')) audit.report_location = vapi_data.get('reportLocation') audit.updated_timestamp = vapi_data.get('updatedTimestamp') audit.vendor_id = int(vapi_data.get('vendorId')) audit.youtube_audit_id = int(vapi_data.get('youtubeAuditId')) return audit