Object

spinoco.fs2.mail.smtp.SMTPClient

impl

Related Doc: package SMTPClient

Permalink

object impl

Source
SMTPClient.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. impl
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def command[F[_]](s: String): Stream[F, Byte]

    Permalink

    prepares single stream chunk of command data terminated by crlf to send *

  7. def computeCramMD5(nonce: String, secret: String): Option[ByteVector]

    Permalink

    computes cram md5 hash, yields to None on invalid Nonce.

    computes cram md5 hash, yields to None on invalid Nonce. *

  8. def connect[F[_]](domain: String): Stream[F, Byte]

    Permalink

    issues EHLO $domain command *

  9. val cr: ByteVector

    Permalink
  10. val dotDotLine: ByteVector

    Permalink
  11. val dotLine: ByteVector

    Permalink
  12. def encodeMimeBody[F[_]](header: EmailHeader, body: MIMEPart[F], emailHeaderCodec: Codec[EmailHeader], mimeHeaderCodec: Codec[MIMEHeader]): Stream[F, Byte]

    Permalink

    Encodes mail body based on supplied body and header.

    Encodes mail body based on supplied body and header.

    header

    Header to encode before the message. Note this will strp any Content-Type header from the email header and instead this will use Content-Type from the supplied body.

    body

    Body to send to client

    emailHeaderCodec

    Codec for the email header

    mimeHeaderCodec

    Codec for the mime header

  13. def encodeTextBody[F[_]](header: EmailHeader, text: Stream[F, Char], emailHeaderCodec: Codec[EmailHeader], mimeHeaderCodec: Codec[MIMEHeader])(implicit arg0: Sync[F]): Stream[F, Byte]

    Permalink

    Encodes the supplied character body as single MIME text email body.

    Encodes the supplied character body as single MIME text email body. The type of the charset and encoding is queried from email header, if not present then text/plain and UTF8 will be used.

    header

    Header

    text

    Text to encode

    emailHeaderCodec

    codec to encode email header

    mimeHeaderCodec

    codec to encode mime header

  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  19. def initialHandshake[F[_]](timeout: FiniteDuration)(implicit socketRef: Ref[F, Socket[F]], F: Sync[F]): F[String]

    Permalink

    Performs initial handshake, that is expects server to deliver single line of welcome message.

    Performs initial handshake, that is expects server to deliver single line of welcome message. Terminates once that message was delivered or when timeout is exceeded. Also may terminate with failure

  20. def insertDotIfNeeded[F[_]]: Pipe[F, Byte, Byte]

    Permalink

    SMTP RFC requires that each line starting with .

    SMTP RFC requires that each line starting with . (dot) shall be prepended with another dot, unless the don indicates end of input for DATA command section.

    This facilites that requirement.

  21. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  22. def login[F[_]](userName: String, password: String)(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]]): F[Unit]

    Permalink

    Performs AUTH LOGIN command .

    Performs AUTH LOGIN command . UserName and password are Base64 encdoed and sent to server

    userName

    Name of the user

    password

    password

  23. def loginCramMD5[F[_]](userName: String, password: String)(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]]): F[Unit]

    Permalink

    logins via cram-md5 *

  24. def loginPlain[F[_]](authorizationId: String, authenticationId: String, pass: String)(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]]): F[Unit]

    Permalink

    Performs AUTH PLAIN login command.

    Performs AUTH PLAIN login command.

    authorizationId

    Authorization id

    authenticationId

    Authenitcation id

    pass

    Password

  25. def mailFrom[F[_]](email: @@[String, EmailAddress]): Stream[F, Byte]

    Permalink

    wraps from email *

  26. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. def quit[F[_]]: Stream[F, Byte]

    Permalink

    issues QUIT command *

  30. def rcptTo[F[_]](email: @@[String, EmailAddress]): Stream[F, Byte]

    Permalink

    Specifies which emails will actually recieve the email.

    Specifies which emails will actually recieve the email. *

  31. def readResponse[F[_]]: Pipe[F, Byte, SMTPResponse]

    Permalink

    Read response lines of input as they come in.

    Read response lines of input as they come in. Lines are expected to be terminated with \r\n and starts with result code, following informative text.

    If the code follows with - (i.e. 250-SIZE) this will not terminate and will start other line. It the code follows with spacce, then this terminates.

    It assumes the server never sends more data than very last \r\n, as the other data received will be discarded.

  32. def sendMail[F[_]](from: @@[String, EmailAddress], recipients: Seq[@@[String, EmailAddress]], content: Stream[F, Byte])(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]]): F[Option[SMTPError]]

    Permalink

    Sends mail from given address, header and body.

    Sends mail from given address, header and body.

    from

    Source address

    recipients

    Recipients of the email

    content

    Content of the email, including the header

  33. def sendRequest[F[_]](timeout: FiniteDuration, sending: Semaphore[F])(data: Stream[F, Byte])(implicit arg0: Sync[F], socketRef: Ref[F, Socket[F]]): F[Seq[SMTPResponse]]

    Permalink

    Sends given lines of data to server (adjusting them according to RFC transparency Note that supplied chunks must be exactly one size of the length Returns any response of the server as received.

    Sends given lines of data to server (adjusting them according to RFC transparency Note that supplied chunks must be exactly one size of the length Returns any response of the server as received. This will accumulate all the lines receved from the server, i.e. on EHLO command

    timeout

    Timeout to wait for server to respond

    sending

    A semaphore preventing concurrent sends.

    data

    Data to sent

  34. def sendToAddresses[F[_]](recipients: Seq[@@[String, EmailAddress]])(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]]): F[Option[SMTPError]]

    Permalink

    Sends to SMTP server the intention of sending some data to given recipients.

    Sends to SMTP server the intention of sending some data to given recipients.

    recipients

    The addresses that should recieve the email.

  35. def startTls[F[_]](connectResponse: Seq[String], tlsHandshake: (Socket[F]) ⇒ F[Socket[F]])(implicit arg0: Sync[F], send: (Stream[F, Byte]) ⇒ F[Seq[SMTPResponse]], socketRef: Ref[F, Socket[F]], tlsConnection: Ref[F, Boolean]): F[Unit]

    Permalink
  36. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  37. def toBase64Line(s: String): ByteVector

    Permalink

    encodes to base64 termiated with crlf *

  38. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  39. def txFail[F[_]](result: Seq[SMTPResponse])(implicit F: Sync[F]): F[Option[SMTPError]]

    Permalink

    signal tx failed *

  40. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. def wrapMail(email: @@[String, EmailAddress]): String

    Permalink

    assures mail is always in <> *

Inherited from AnyRef

Inherited from Any

Ungrouped