All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.yestech.notify.objectmodel.Sender Maven / Gradle / Ivy

Go to download

Framework to sent emails using templates. Currently xsl and velocity template engines are supported.

There is a newer version: 1.1.0
Show newest version
/*
 * Copyright LGPL3
 * YES Technology Association
 * http://yestech.org
 *
 * http://www.opensource.org/licenses/lgpl-3.0.html
 */

package org.yestech.notify.objectmodel;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;

/**
 * Represents the sender of a {@link INotification}.
 */
@XStreamAlias("sender")
public class Sender implements ISender
{
    @XStreamAsAttribute
    private String emailAddress;

    @XStreamAsAttribute
    private String replyAddress;

    @XStreamAsAttribute
    private String displayName;

    public Sender()
    {
        super();
    }

    public String getEmailAddress()
    {
        return emailAddress;
    }

    public void setEmailAddress(String emailAddress)
    {
        this.emailAddress = emailAddress;
    }

    public String getReplyAddress()
    {
        return replyAddress;
    }

    public void setReplyAddress(String replyAddress)
    {
        this.replyAddress = replyAddress;
    }

    public String getDisplayName()
    {
        return displayName;
    }

    public void setDisplayName(String displayName)
    {
        this.displayName = displayName;
    }

    @Override
    public boolean equals(Object o)
    {
        if (this == o) return true;
        if (!(o instanceof ISender)) return false;

        Sender sender = (Sender) o;

        if (displayName != null ? !displayName.equals(sender.displayName) : sender.displayName != null) return false;
        if (emailAddress != null ? !emailAddress.equals(sender.emailAddress) : sender.emailAddress != null)
            return false;
        if (replyAddress != null ? !replyAddress.equals(sender.replyAddress) : sender.replyAddress != null)
            return false;

        return true;
    }

    @Override
    public int hashCode()
    {
        int result = emailAddress != null ? emailAddress.hashCode() : 0;
        result = 31 * result + (replyAddress != null ? replyAddress.hashCode() : 0);
        result = 31 * result + (displayName != null ? displayName.hashCode() : 0);
        return result;
    }

    public int compareTo(ISender o)
    {
        return emailAddress.compareTo(o.getEmailAddress());
    }

    @Override
    public String toString() {
        return "Sender{" +
                "emailAddress='" + emailAddress + '\'' +
                ", replyAddress='" + replyAddress + '\'' +
                ", displayName='" + displayName + '\'' +
                '}';
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy