Package mireka.address

Examples of mireka.address.RemotePart


    public boolean isSatisfiedBy(Recipient recipient) {
        if (recipient.isGlobalPostmaster())
            return true;
        if (!recipient.isDomainPostmaster())
            return false;
        RemotePart remotePart =
                ((DomainPostmaster) recipient).getMailbox().getRemotePart();
        return localDomains.isSatisfiedBy(remotePart);
    }
View Full Code Here


    public boolean isSatisfiedBy(Recipient recipient) {
        if (!localPartSpecification.isSatisfiedBy(recipient.localPart()))
            return false;
        if (!(recipient instanceof RemotePartContainingRecipient))
            return false;
        RemotePart recipientRemotePart =
                ((RemotePartContainingRecipient) recipient).getMailbox()
                        .getRemotePart();
        return remotePart.equals(recipientRemotePart);
    }
View Full Code Here

    @Override
    public boolean isSatisfiedBy(Recipient recipient) {
        if (!(recipient instanceof RemotePartContainingRecipient))
            return false;

        RemotePart recipientRemotePart =
                ((RemotePartContainingRecipient) recipient).getMailbox()
                        .getRemotePart();
        if (!remotePartObject.equals(recipientRemotePart))
            return false;
        return pattern.matcher(recipient.localPart().displayableName())
View Full Code Here

    @Override
    public boolean isSatisfiedBy(Recipient recipient) {
        if (!(recipient instanceof DomainPostmaster))
            return false;
        RemotePart recipientRemotePart =
                ((DomainPostmaster) recipient).getMailbox().getRemotePart();
        return remotePart.equals(recipientRemotePart);
    }
View Full Code Here

            throw new IllegalArgumentException();
    }

    private FilterReply verifyRemotePartContainingRecipient(
            RemotePartContainingRecipient recipient) throws RejectException {
        RemotePart remotePart = recipient.getMailbox().getRemotePart();
        for (RemotePartSpecification remotePartSpecification : localDomainSpecifications) {
            if (remotePartSpecification.isSatisfiedBy(remotePart))
                return FilterReply.NEUTRAL;
        }
        throw new RejectException(550,
View Full Code Here

    private RemotePartSpecification localDomains;

    @Override
    public Destination lookup(Recipient recipient) {
        if (recipient instanceof RemotePartContainingRecipient) {
            RemotePart remotePart =
                    ((RemotePartContainingRecipient) recipient).getMailbox()
                            .getRemotePart();
            if (!localDomains.isSatisfiedBy(remotePart))
                return null;
        }
View Full Code Here

            DomainPostmasterRecipientAST domainPostmasterRecipientAST =
                    (DomainPostmasterRecipientAST) recipientAST;
            DomainPostmasterSpecification domainPostmaster =
                    new DomainPostmasterSpecification();

            RemotePart remotePart =
                    mailAddressFactory
                            .createRemotePartFromAST(domainPostmasterRecipientAST.mailboxAST.remotePartAST);
            domainPostmaster.setRemotePart(remotePart);
            return domainPostmaster;

        } else if (recipientAST instanceof MailboxRecipientAST) {
            MailboxRecipientAST mailboxRecipientAST = (MailboxRecipientAST) recipientAST;
            LocalPartSpecification localPart =
                    new CaseInsensitiveLocalPartSpecification(
                            mailboxRecipientAST.pathAST.mailboxAST.localPartAST.spelling);
            RemotePart remotePart =
                    mailAddressFactory
                            .createRemotePartFromAST(mailboxRecipientAST.pathAST.mailboxAST.remotePartAST);
            return new LocalRemoteCombinedRecipientSpecification(localPart,
                    remotePart);
        } else {
View Full Code Here

    private List<List<Recipient>> groupRecipientsByDomain(
            List<Recipient> recipients) {
        Map<RemotePart, List<Recipient>> map =
                new LinkedHashMap<RemotePart, List<Recipient>>();
        for (Recipient recipient : recipients) {
            RemotePart remotePart =
                    ((RemotePartContainingRecipient) recipient).getMailbox()
                            .getRemotePart();
            List<Recipient> remotePartRecipientList = map.get(remotePart);
            if (remotePartRecipientList == null) {
                remotePartRecipientList = new ArrayList<Recipient>();
View Full Code Here

     */
    public void send(Mail mail) throws SendException,
            RecipientsWereRejectedException, IllegalArgumentException,
            PostponeException {
        this.mail = mail;
        RemotePart remotePart = commonRecipientRemotePart();
        if (remotePart instanceof AddressLiteral) {
            AddressLiteral addressLiteral = (AddressLiteral) remotePart;
            sendToAddressLiteral(addressLiteral);
        } else if (remotePart instanceof DomainPart) {
            Domain domain = ((DomainPart) remotePart).domain;
View Full Code Here

        }
    }

    private RemotePart commonRecipientRemotePart()
            throws IllegalArgumentException {
        RemotePart result = null;
        for (Recipient recipient : mail.recipients) {
            if (!(recipient instanceof RemotePartContainingRecipient))
                throw new IllegalArgumentException(
                        "Cannot send mail to non-remote address: " + recipient);
            RemotePart remotePart =
                    ((RemotePartContainingRecipient) recipient).getMailbox()
                            .getRemotePart();
            if (result == null) {
                result = remotePart;
            } else {
View Full Code Here

TOP

Related Classes of mireka.address.RemotePart

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.