diff options
Diffstat (limited to 'controller-api/src/main/java/com/yahoo/vespa/hosted/controller/tenant/PendingMailVerification.java')
-rw-r--r-- | controller-api/src/main/java/com/yahoo/vespa/hosted/controller/tenant/PendingMailVerification.java | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/tenant/PendingMailVerification.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/tenant/PendingMailVerification.java new file mode 100644 index 00000000000..af5ae746d22 --- /dev/null +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/tenant/PendingMailVerification.java @@ -0,0 +1,81 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.hosted.controller.tenant; + +import com.yahoo.config.provision.TenantName; + +import java.time.Instant; +import java.util.List; +import java.util.Objects; + +/** + * @author olaa + */ +public class PendingMailVerification { + + private final TenantName tenantName; + private final String mailAddress; + private final String verificationCode; + private final Instant verificationDeadline; + private final MailType mailType; + + public PendingMailVerification(TenantName tenantName, String mailAddress, String verificationCode, Instant verificationDeadline, MailType mailType) { + this.tenantName = tenantName; + this.mailAddress = mailAddress; + this.verificationCode = verificationCode; + this.verificationDeadline = verificationDeadline; + this.mailType = mailType; + } + + public TenantName getTenantName() { + return tenantName; + } + + public String getMailAddress() { + return mailAddress; + } + + public String getVerificationCode() { + return verificationCode; + } + + public Instant getVerificationDeadline() { + return verificationDeadline; + } + + public MailType getMailType() { + return mailType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PendingMailVerification that = (PendingMailVerification) o; + return Objects.equals(tenantName, that.tenantName) && + Objects.equals(mailAddress, that.mailAddress) && + Objects.equals(verificationCode, that.verificationCode) && + Objects.equals(verificationDeadline, that.verificationDeadline) && + mailType == that.mailType; + } + + @Override + public int hashCode() { + return Objects.hash(tenantName, mailAddress, verificationCode, verificationDeadline, mailType); + } + + @Override + public String toString() { + return "PendingMailVerification{" + + "tenantName=" + tenantName + + ", mailAddress='" + mailAddress + '\'' + + ", verificationCode='" + verificationCode + '\'' + + ", verificationDeadline=" + verificationDeadline + + ", mailType=" + mailType + + '}'; + } + + public enum MailType { + TENANT_CONTACT, + NOTIFICATIONS + } +} |