"""Distribution ws scheduled update failed/processed notification schema.""" from marshmallow import Schema, fields class Product(Schema): """Schema for product.""" name = fields.String(required=True) _id = fields.Integer(data_key='id', required=True) upc = fields.String(required=True) class DistributionWsScheduledUpdateNotification(Schema): """Schema for distribution ws scheduled update notification. Properties: recipients (list): emails of the recipients product (dict): product details """ recipients = fields.List(fields.String, required=True) product = fields.Nested(Product, required=True) class DistributionWsScheduledUpdateFailedNotification(DistributionWsScheduledUpdateNotification): """Schema for distribution ws scheduled update failed notification.""" class DistributionWsScheduledUpdateProcessedNotification(DistributionWsScheduledUpdateNotification): """Schema for distribution ws scheduled update processed notification."""