package carpool.model.identityVerification; import java.util.Calendar; import org.json.JSONException; import org.json.JSONObject; import carpool.common.DateUtility; import carpool.configurations.EnumConfig.LicenseType; import carpool.configurations.EnumConfig.VerificationState; import carpool.configurations.EnumConfig.VerificationType; import carpool.interfaces.PseudoModel; import carpool.model.Letter; public class DriverVerification extends IdentityVerification{ private Calendar licenseIssueDate; private String licenseImgLink; public DriverVerification(int userId, String realName, String licenseNumber, LicenseType licenseType, Calendar licenseIssueDate, String licenseImgLink) { super(VerificationType.driver, -1, userId, realName, licenseNumber, licenseType, Calendar.getInstance(), Calendar.getInstance(), VerificationState.pending, Calendar.getInstance(), -1, -1); this.licenseIssueDate = licenseIssueDate; this.licenseImgLink = licenseImgLink; } public DriverVerification(VerificationType type, int verificationId, int userId, String realName, String licenseNumber, LicenseType licenseType, Calendar submissionDate, Calendar expireDate, VerificationState state, Calendar reviewDate, int reviewerId, int recommenderId, Calendar licenseIssueDate, String licenseImgLink) { super(type, verificationId, userId, realName, licenseNumber, licenseType, submissionDate, expireDate, state, reviewDate, reviewerId, recommenderId); this.licenseIssueDate = licenseIssueDate; this.licenseImgLink = licenseImgLink; } public Calendar getLicenseIssueDate() { return licenseIssueDate; } public void setLicenseIssueDate(Calendar licenseIssueDate) { this.licenseIssueDate = licenseIssueDate; } public String getLicenseImgLink() { return licenseImgLink; } public void setLicenseImgLink(String licenseImgLink) { this.licenseImgLink = licenseImgLink; } @Override public JSONObject toJSON() { JSONObject jsonVerification = super.toJSON(); try { jsonVerification .put("licenseIssueDate", DateUtility.castToAPIFormat(this.getLicenseIssueDate())); jsonVerification .put("licenseImgLink", this.getLicenseImgLink()); } catch (JSONException e) { e.printStackTrace(); } return jsonVerification; } public boolean equals(DriverVerification v){ return super.equals(v) && this.licenseIssueDate.getTime().toString().equals(v.licenseIssueDate.getTime().toString()) && this.licenseImgLink.equals(v.licenseImgLink); } }