/// <summary> /// Initializes a new instance of the <see cref="NotificationAllOf" /> class. /// </summary> /// <param name="id">Notification id will be returned in response and will indicate that the notification was processed successfully. .</param> /// <param name="impressionId">Impression id is used to stitch (link) the current notification with a previous notification or execute request. In case they both of them match, the second and other subsequent requests will not generate a new impression to the activity, experience etc. .</param> /// <param name="type">type.</param> /// <param name="timestamp">Timestamp of the notification, in milliseconds elapsed since UNIX epoch..</param> /// <param name="tokens">A list of tokens for displayed content or clicked selectors, based on the type of notification..</param> /// <param name="mbox">mbox.</param> /// <param name="view">view.</param> /// <param name="pageLoad">pageLoad.</param> public NotificationAllOf(string id = default(string), string impressionId = default(string), MetricType?type = default(MetricType?), long timestamp = default(long), List <string> tokens = default(List <string>), NotificationMbox mbox = default(NotificationMbox), NotificationView view = default(NotificationView), NotificationPageLoad pageLoad = default(NotificationPageLoad)) { this.Id = id; this.ImpressionId = impressionId; this.Type = type; this.Timestamp = timestamp; this.Tokens = tokens; this.Mbox = mbox; this.View = view; this.PageLoad = pageLoad; }
/// <summary> /// Initializes a new instance of the <see cref="Notification" /> class. /// </summary> /// <param name="address">address.</param> /// <param name="parameters">Parameters map. Same object is reused for mbox or profile parameters with slight validation differences. Following names are not allowed for mbox parameters: 'orderId', 'orderTotal', productPurchasedIds' Validation (for both mbox and profile parameters): * Max 50 parameters limit. * Parameter name should not be blank. * Parameter name max length 128. * Parameter name should not start with 'profile.' * Parameter value length max 5000. .</param> /// <param name="profileParameters">Parameters map. Same object is reused for mbox or profile parameters with slight validation differences. Following names are not allowed for mbox parameters: 'orderId', 'orderTotal', productPurchasedIds' Validation (for both mbox and profile parameters): * Max 50 parameters limit. * Parameter name should not be blank. * Parameter name max length 128. * Parameter name should not start with 'profile.' * Parameter value length max 5000. .</param> /// <param name="order">order.</param> /// <param name="product">product.</param> /// <param name="id">Notification id will be returned in response and will indicate that the notification was processed successfully. (required).</param> /// <param name="impressionId">Impression id is used to stitch (link) the current notification with a previous notification or execute request. In case they both of them match, the second and other subsequent requests will not generate a new impression to the activity, experience etc. .</param> /// <param name="type">type (required).</param> /// <param name="timestamp">Timestamp of the notification, in milliseconds elapsed since UNIX epoch. (required).</param> /// <param name="tokens">A list of tokens for displayed content or clicked selectors, based on the type of notification..</param> /// <param name="mbox">mbox.</param> /// <param name="view">view.</param> /// <param name="pageLoad">pageLoad.</param> public Notification(Address address = default(Address), Dictionary <string, string> parameters = default(Dictionary <string, string>), Dictionary <string, string> profileParameters = default(Dictionary <string, string>), Order order = default(Order), Product product = default(Product), string id = default(string), string impressionId = default(string), MetricType type = default(MetricType), long?timestamp = default(long?), List <string> tokens = default(List <string>), NotificationMbox mbox = default(NotificationMbox), NotificationView view = default(NotificationView), NotificationPageLoad pageLoad = default(NotificationPageLoad)) { // to ensure "id" is required (not null) this.Id = id ?? throw new ArgumentNullException("id is a required property for Notification and cannot be null"); this.Type = type; this.Timestamp = timestamp; this.Address = address; this.Parameters = parameters; this.ProfileParameters = profileParameters; this.Order = order; this.Product = product; this.ImpressionId = impressionId; this.Tokens = tokens; this.Mbox = mbox; this.View = view; this.PageLoad = pageLoad; }