Trait/Object

spinoco.fs2.mail.imap

IMAPClient

Related Docs: object IMAPClient | package imap

Permalink

trait IMAPClient[F[_]] extends AnyRef

Simple IMAP client that allows to exchange messages(EMAIL) with server via IMAP protocol.

Note that operations on the IMAP client must be executed in sequence (i.e. you sohould not concurrently execute fetching of two body streams). Although concurrent operations are safe, only one of them will be allowed at any given time.

Source
IMAPClient.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. IMAPClient
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def bodyStructureOf(uid: @@[Long, MailUID]): F[IMAPResult[Seq[EmailBodyPart]]]

    Permalink

    Allows to fetch body structue of specified email.

  2. abstract def bytesOfBodyPart(uid: @@[Long, MailUID], part: EmailBodyPart): Stream[F, Byte]

    Permalink

    Allows to fetch bytes of given mime binary part

    Allows to fetch bytes of given mime binary part

    uid

    Id of message

    part

    Binary part specification. The data in binary part specification will be used to parse conent to stream of bytes.

  3. abstract def capability: F[IMAPResult[Seq[String]]]

    Permalink

    When invoked this will return response to IMAPv4 CAPABILITY command as defined in RFC3501 6.1.1

  4. abstract def emailHeaders(range: NumericRange[Long]): F[Vector[IMAPEmailHeader]]

    Permalink

    Fetches email headers specified from the currently selected mailbox (RFC3501 6.4.5), given the specified range of emails.

    Fetches email headers specified from the currently selected mailbox (RFC3501 6.4.5), given the specified range of emails.

    range

    of email to return

  5. abstract def examine(mailbox: @@[String, MailboxName]): F[IMAPResult[IMAPMailboxStatus]]

    Permalink

    Perform the EXAMINE command as per RFC3501 6.3.1.

    Perform the EXAMINE command as per RFC3501 6.3.1.

    mailbox

    Name of the mailbox for examine command

  6. abstract def list(reference: String, wildcardName: String): F[IMAPResult[Seq[IMAPMailbox]]]

    Permalink

    Returns a list of mailboxes, that are available to logged in user

  7. abstract def login(userName: String, password: String): F[IMAPResult[Seq[String]]]

    Permalink

    Performs LOGIN to IMAP server with supplied credentials.

    Performs LOGIN to IMAP server with supplied credentials.

    Returns on left when login was not succesfull and on right with capabilities supported.

    userName

    Name of the user

    password

    Users password

  8. abstract def logout: F[Unit]

    Permalink

    Performs LOGOUT as per RFC3501 6.1.3.

    Performs LOGOUT as per RFC3501 6.1.3. Note as result of this command the connection with the server will be closed, and further commands to server will fail. Note that logout is automatically executed when the stream with IMAPClient terminates.

  9. abstract def search(term: IMAPSearchTerm, charset: Option[String] = None): F[IMAPResult[Seq[@@[Long, MailUID]]]]

    Permalink

    Perfrom seach of the messages in selected mailbox as per RFC3501 6.4.4

    Perfrom seach of the messages in selected mailbox as per RFC3501 6.4.4

    term

    term to execute search with

    charset

    charset, when not specified, ASCII is used

  10. abstract def select(mailbox: @@[String, MailboxName]): F[IMAPResult[IMAPMailboxStatus]]

    Permalink

    Perform the SELECT command as per RFC3501 6.3.1.

    Perform the SELECT command as per RFC3501 6.3.1.

    mailbox

    Name of the mailbox to select

  11. abstract def textOfBodyPart(uid: @@[Long, MailUID], part: EmailBodyPart): Stream[F, Char]

    Permalink

    Allows to fetch textual representation of given mime part

    Allows to fetch textual representation of given mime part

    uid

    Id of message

    part

    Textual part specification. The data in specification will be used to decode text to resulting stream of strings.

  12. abstract def bytesOf(uid: @@[Long, MailUID], part: BinaryPart): Stream[F, Byte]

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version 2019-10-16) Use bytesOfBodyPart instead

  13. abstract def textOf(uid: @@[Long, MailUID], part: TextPart): Stream[F, Char]

    Permalink
    Annotations
    @deprecated
    Deprecated

    (Since version 2019-10-16) Use textOfBodyPart instead

Concrete Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to any2stringadd[IMAPClient[F]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (IMAPClient[F], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to ArrowAssoc[IMAPClient[F]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def ensuring(cond: (IMAPClient[F]) ⇒ Boolean, msg: ⇒ Any): IMAPClient[F]

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to Ensuring[IMAPClient[F]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  9. def ensuring(cond: (IMAPClient[F]) ⇒ Boolean): IMAPClient[F]

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to Ensuring[IMAPClient[F]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: Boolean, msg: ⇒ Any): IMAPClient[F]

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to Ensuring[IMAPClient[F]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean): IMAPClient[F]

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to Ensuring[IMAPClient[F]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to StringFormat[IMAPClient[F]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  16. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. def [B](y: B): (IMAPClient[F], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from IMAPClient[F] to ArrowAssoc[IMAPClient[F]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from IMAPClient[F] to any2stringadd[IMAPClient[F]]

Inherited by implicit conversion StringFormat from IMAPClient[F] to StringFormat[IMAPClient[F]]

Inherited by implicit conversion Ensuring from IMAPClient[F] to Ensuring[IMAPClient[F]]

Inherited by implicit conversion ArrowAssoc from IMAPClient[F] to ArrowAssoc[IMAPClient[F]]

Ungrouped