Package org.subethamail.smtp.io

Examples of org.subethamail.smtp.io.DeferredFileOutputStream


        Delivery delivery = this.deliveries.get(0);
        delivery.getListener().deliver(this.from, delivery.getRecipient(), data);
      }
      else
      {
        DeferredFileOutputStream dfos = new DeferredFileOutputStream(SimpleMessageListenerAdapter.this.dataDeferredSize);

        try
        {
          int value;
          while ((value = data.read()) >= 0)
          {
            dfos.write(value);
          }

          for (Delivery delivery: this.deliveries)
          {
            delivery.getListener().deliver(this.from, delivery.getRecipient(), dfos.getInputStream());
          }
        }
        finally
        {
          dfos.close();
        }
      }
    }
View Full Code Here


    }

    @Override
    public void data(InputStream data) throws RejectException,
            TooMuchDataException, IOException {
        DeferredFileOutputStream deferredFileOutputStream = null;
        DeferredFileMailData deferredFileMailData = null;
        try {
            deferredFileOutputStream = copyDataToDeferredFileOutputStream(data);
            deferredFileMailData =
                    new DeferredFileMailData(deferredFileOutputStream);
            mailTransaction.setData(deferredFileMailData);
            filterChain.getHead().data(mailTransaction.getData());
            checkResponsibilityHasBeenTakenForAllRecipients();
        } catch (RejectExceptionExt e) {
            throw e.toRejectException();
        } finally {
            if (mailTransaction.getData() != null)
                mailTransaction.getData().dispose();
            if (deferredFileOutputStream != null)
                deferredFileOutputStream.close();
        }
    }
View Full Code Here

    }

    private DeferredFileOutputStream copyDataToDeferredFileOutputStream(
            InputStream src) throws IOException {
        byte[] buffer = new byte[8192];
        DeferredFileOutputStream deferredFileOutputStream =
                new DeferredFileOutputStream(32768);
        int cRead;
        while ((cRead = src.read(buffer)) > 0) {
            deferredFileOutputStream.write(buffer, 0, cRead);
        }
        return deferredFileOutputStream;
    }
View Full Code Here

public class MimeMessageConverter {
    private Logger logger = LoggerFactory.getLogger(MimeMessageConverter.class);

    public MailData createMailDataInSmtpSession(MimeMessage mimeMessage)
            throws RejectExceptionExt {
        DeferredFileOutputStream deferredFileOutputStream =
                new DeferredFileOutputStream(32768);
        try {
            mimeMessage.writeTo(deferredFileOutputStream);
        } catch (IOException e) {
            logger.error("Cannot write MimeMessage", e);
            try {
                deferredFileOutputStream.close();
            } catch (IOException e1) {
                logger.warn("Cannot close deferredFileOutputStream", e1);
            }
            throw new RejectExceptionExt(
                    EnhancedStatus.TRANSIENT_LOCAL_ERROR_IN_PROCESSING);
        } catch (MessagingException e) {
            logger.error("Cannot write MimeMessage", e);
            try {
                deferredFileOutputStream.close();
            } catch (IOException e1) {
                logger.warn("Cannot close deferredFileOutputStream", e1);
            }
            throw new RejectExceptionExt(
                    EnhancedStatus.TRANSIENT_LOCAL_ERROR_IN_PROCESSING);
View Full Code Here

        Delivery delivery = this.deliveries.get(0);
        delivery.getListener().deliver(this.from, delivery.getRecipient(), data);
      }
      else
      {
        DeferredFileOutputStream dfos = new DeferredFileOutputStream(SimpleMessageListenerAdapter.this.dataDeferredSize);

        try
        {
          int value;
          while ((value = data.read()) >= 0)
          {
            dfos.write(value);
          }

          for (Delivery delivery: this.deliveries)
          {
            delivery.getListener().deliver(this.from, delivery.getRecipient(), dfos.getInputStream());
          }
        }
        finally
        {
          dfos.close();
        }
      }
    }
View Full Code Here

      {
        this.deliveries.get(0).deliver(data);
      }
      else
      {
        DeferredFileOutputStream dfos = new DeferredFileOutputStream(SmarterMessageListenerAdapter.this.dataDeferredSize);

        try
        {
          int value;
          while ((value = data.read()) >= 0)
          {
            dfos.write(value);
          }

          for (Receiver rec: this.deliveries)
          {
            rec.deliver(dfos.getInputStream());
          }
        }
        finally
        {
          dfos.close();
        }
      }
    }
View Full Code Here

TOP

Related Classes of org.subethamail.smtp.io.DeferredFileOutputStream

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.