/// <summary> /// To initialize the class members /// </summary> /// <param name="ticketNumber">The name</param> /// <param name="policeId">The police id</param> /// <param name="date">The insedent date</param> /// <param name="location">The location</param> /// <param name="infractionType">The infraction type</param> public Infraction(string ticketNumber, string policeId, string date, string location, string infractionType) { if (!DataValidation.IsValid(ticketNumber, Patterns.InfractionTicketId)) { throw new ArgumentException("Invalid infraction ticket number"); } if (!DataValidation.IsValid(policeId, Patterns.PoliceId)) { throw new ArgumentException("Invalid police Id"); } if (!DataValidation.IsValid(date, Patterns.Date)) { throw new ArgumentException("Invalid date"); } if (!DataValidation.IsNotFutureDate(date)) { throw new ArgumentException("It is a future date"); } if (!DataValidation.IsValid(location, Patterns.CharecterDigitAndSpace)) { throw new ArgumentException("Invalid location"); } if (!DataValidation.IsValid(infractionType, Patterns.CharecterWithSpace)) { throw new ArgumentException("Invalid infraction format"); } _ticketNumber = ticketNumber; _policeId = policeId; _date = date; _location = location; _infractionType = infractionType; }
/// <summary> /// To initialize the class members /// </summary> /// <param name="licenseNumber">The DL number</param> /// <param name="name">The name</param> /// <param name="address">The Address</param> /// <param name="dateOfBirth">The Date Of Birth</param> /// <param name="dateOfIssue">The Date Of Issue</param> /// <param name="category">The License Category</param> public Driver(string licenseNumber, string name, string address, string dateOfBirth, string dateOfIssue, string category) { if (!DataValidation.IsValid(licenseNumber, Patterns.DrivingLicenseNumber)) { throw new ArgumentException("Invalid Driver License Id"); } if (!DataValidation.IsValid(name, Patterns.CharecterWithSpace)) { throw new ArgumentException("Invalid Name"); } if (!DataValidation.IsValid(address, Patterns.CharecterDigitAndSpace)) { throw new ArgumentException("Invalid Address"); } if (!DataValidation.IsValid(dateOfBirth, Patterns.Date)) { throw new ArgumentException("Invalid DOB Formate"); } if (!DataValidation.IsValidAge(dateOfBirth)) { throw new ArgumentException("Invalid DOB Formate"); } if (!DataValidation.IsValid(dateOfIssue, Patterns.Date)) { throw new ArgumentException("Invalid DOI Formate"); } if (!DataValidation.IsNotFutureDate(dateOfIssue)) { throw new ArgumentException("Invalid DOI"); } if (!DataValidation.IsContain(category, Patterns.DrivingLicenseCategorys)) { throw new ArgumentException("License Category Is Not Found"); } _licenseNumber = licenseNumber; _name = name; _address = address; _dateOfBirth = dateOfBirth; _dateOfIssue = dateOfIssue; _category = category; }