/// <summary> /// Create a new information object for resetting user passwords. /// </summary> /// <param name="User">A valid user.</param> /// <param name="SecurityToken1">A security token to authorize the password reset.</param> /// <param name="SecurityToken2">An optional second security token to authorize the password reset.</param> /// <param name="EventTrackingId">An optional unique event tracking identification for correlating this request with other events.</param> public PasswordReset(User User, SecurityToken_Id SecurityToken1, SecurityToken_Id?SecurityToken2 = null, EventTracking_Id EventTrackingId = null) : this(org.GraphDefined.Vanaheimr.Illias.Timestamp.Now, new User[] { User }, SecurityToken1, SecurityToken2, EventTrackingId) { }
/// <summary> /// Create a new information object for resetting user passwords. /// </summary> /// <param name="Users">An enumeration of valid users.</param> /// <param name="SecurityToken1">A security token to authorize the password reset.</param> /// <param name="SecurityToken2">An optional second security token to authorize the password reset.</param> /// <param name="EventTrackingId">An optional unique event tracking identification for correlating this request with other events.</param> public PasswordReset(IEnumerable <User> Users, SecurityToken_Id SecurityToken1, SecurityToken_Id?SecurityToken2 = null, EventTracking_Id EventTrackingId = null) : this(org.GraphDefined.Vanaheimr.Illias.Timestamp.Now, Users, SecurityToken1, SecurityToken2, EventTrackingId) { }
/// <summary> /// Create a new information object for resetting user passwords. /// </summary> /// <param name="Timestamp">The creation timestamp of the password-reset-information.</param> /// <param name="Users">An enumeration of valid users.</param> /// <param name="SecurityToken1">A security token to authorize the password reset.</param> /// <param name="SecurityToken2">An optional second security token to authorize the password reset.</param> /// <param name="EventTrackingId">An optional unique event tracking identification for correlating this request with other events.</param> public PasswordReset(DateTime Timestamp, IEnumerable <User> Users, SecurityToken_Id SecurityToken1, SecurityToken_Id?SecurityToken2 = null, EventTracking_Id EventTrackingId = null) { if (Users is null || !Users.Any()) { throw new ArgumentNullException(nameof(Users), "The given enumeration of users must not be null or empty!"); } this.Timestamp = Timestamp; this.Users = new HashSet <User>(Users); this.SecurityToken1 = SecurityToken1; this.SecurityToken2 = SecurityToken2; this.EventTrackingId = EventTrackingId ?? EventTracking_Id.New; }