Package org.apache.jmeter.protocol.mail.sampler

# Class MailReaderSampler

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.samplers.AbstractSampler
org.apache.jmeter.protocol.mail.sampler.MailReaderSampler

All Implemented Interfaces:
  `Serializable`, `Cloneable`, `ConfigMergabilityIndicator`, `Searchable`, `Interruptible`, `Sampler`, `org.apache.jmeter.testelement.TestElement`

public class MailReaderSampler extends AbstractSampler implements Interruptible
Sampler that can read from POP3 and IMAP mail servers

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.apache.jmeter.testelement.TestElement

  `org.apache.jmeter.testelement.TestElement.Companion`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `ALL_MESSAGES`
  `static final String`
  `DEFAULT_PROTOCOL`

  ### Fields inherited from interface org.apache.jmeter.testelement.TestElement

  `COMMENTS, Companion, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MailReaderSampler()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `addCustomProperties(Properties props)`
  `boolean`
  `applies(ConfigTestElement configElement)`
  Does configElement apply to Sampler
  `boolean`
  `getDeleteMessages()`
  `String`
  `getFolder()`
  `boolean`
  `getHeaderOnly()`
  `int`
  `getNumMessages()`
  `String`
  `getNumMessagesString()`
  `String`
  `getPassword()`
  `String`
  `getPort()`
  `String`
  `getServer()`
  `String`
  `getServerType()`
  Returns the type of the protocol set to use when talking with the remote server.
  `String`
  `getTrustStoreToUse()`
  `String`
  `getUserName()`
  `boolean`
  `interrupt()`
  Interrupt the current operation if possible.
  `boolean`
  `isEnforceStartTLS()`
  `boolean`
  `isStoreMimeMessage()`
  `boolean`
  `isTrustAllCerts()`
  `boolean`
  `isUseLocalTrustStore()`
  `boolean`
  `isUseSSL()`
  `boolean`
  `isUseStartTLS()`
  `SampleResult`
  `sample(Entry e)`
  Obtains statistics about the given Entry, and packages the information into a SampleResult.
  `void`
  `setDeleteMessages(boolean delete)`
  `void`
  `setFolder(String folder)`
  `void`
  `setHeaderOnly(boolean selected)`
  `void`
  `setNumMessages(int numMessages)`
  `void`
  `setNumMessages(String numMessages)`
  `void`
  `setPassword(String password)`
  `void`
  `setPort(String port)`
  `void`
  `setServer(String server)`
  `void`
  `setServerType(String serverType)`
  Sets the type of protocol to use when talking with the remote mail server.
  `void`
  `setStoreMimeMessage(boolean storeMimeMessage)`
  `void`
  `setUserName(String username)`
  `String`
  `toString()`

  ### Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement

  `addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

  ### Methods inherited from class java.lang.Object

  `finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.apache.jmeter.testelement.TestElement

  `addTestElement, canRemove, clear, clearTestElementChildren, clone, get, get, get, get, get, get, get, get, get, getComment, getName, getOrCreate, getOrCreate, getOrNull, getOrNull, getOrNull, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getPropertyOrNull, getProps, getSchema, getString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removed, removeProperty, removeProperty, set, set, set, set, set, set, set, set, set, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse`

- ## Field Details

  - ### DEFAULT_PROTOCOL

    public static final String DEFAULT_PROTOCOL
    See Also:
      - Constant Field Values

  - ### ALL_MESSAGES

    public static final int ALL_MESSAGES
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### MailReaderSampler

    public MailReaderSampler()

- ## Method Details

  - ### isUseLocalTrustStore

    public boolean isUseLocalTrustStore()

  - ### getTrustStoreToUse

    public String getTrustStoreToUse()

  - ### isUseSSL

    public boolean isUseSSL()

  - ### isUseStartTLS

    public boolean isUseStartTLS()

  - ### isTrustAllCerts

    public boolean isTrustAllCerts()

  - ### isEnforceStartTLS

    public boolean isEnforceStartTLS()

  - ### sample

    public SampleResult sample(Entry e)
    Obtains statistics about the given Entry, and packages the information into a SampleResult.
    Specified by:
      `sample` in interface `Sampler`
    Parameters:
      `e` - the Entry (TODO seems to be unused)
    Returns:
      information about the sample

  - ### addCustomProperties

    protected void addCustomProperties(Properties props)

  - ### setServerType

    public void setServerType(String serverType)
    Sets the type of protocol to use when talking with the remote mail server. Either MailReaderSampler.TYPE_IMAP[S] or MailReaderSampler.TYPE_POP3[S]. Default is MailReaderSampler.TYPE_POP3.
    Parameters:
      `serverType` - protocol to use

  - ### getServerType

    public String getServerType()
    Returns the type of the protocol set to use when talking with the remote server. Either MailReaderSampler.TYPE_IMAP[S] or MailReaderSampler.TYPE_POP3[S].
    Returns:
      Server Type

  - ### setServer

    public void setServer(String server)
    Parameters:
      `server` - - The name or address of the remote server.

  - ### getServer

    public String getServer()
    Returns:
      The name or address of the remote server.

  - ### getPort

    public String getPort()

  - ### setPort

    public void setPort(String port)

  - ### setUserName

    public void setUserName(String username)
    Parameters:
      `username` - - The username of the mail account.

  - ### getUserName

    public String getUserName()
    Returns:
      The username of the mail account.

  - ### setPassword

    public void setPassword(String password)
    Parameters:
      `password` - the password to use

  - ### getPassword

    public String getPassword()
    Returns:
      password

  - ### setFolder

    public void setFolder(String folder)
    Parameters:
      `folder` - - Name of the folder to read emails from. "INBOX" is the only acceptable value if the server type is POP3.

  - ### getFolder

    public String getFolder()
    Returns:
      folder

  - ### setNumMessages

    public void setNumMessages(int numMessages)
    Parameters:
      `numMessages` - - The number of messages to retrieve from the mail server. Set this value to -1 to retrieve all messages.

  - ### setNumMessages

    public void setNumMessages(String numMessages)
    Parameters:
      `numMessages` - - The number of messages to retrieve from the mail server. Set this value to -1 to retrieve all messages.

  - ### getNumMessages

    public int getNumMessages()
    Returns:
      The number of messages to retrieve from the mail server. -1 denotes get all messages.

  - ### getNumMessagesString

    public String getNumMessagesString()
    Returns:
      The number of messages to retrieve from the mail server. -1 denotes get all messages.

  - ### setDeleteMessages

    public void setDeleteMessages(boolean delete)
    Parameters:
      `delete` - - Whether or not to delete the read messages from the folder.

  - ### getDeleteMessages

    public boolean getDeleteMessages()
    Returns:
      Whether or not to delete the read messages from the folder.

  - ### isStoreMimeMessage

    public boolean isStoreMimeMessage()
    Returns:
      Whether or not to store the retrieved message as MIME message in the sample result

  - ### setStoreMimeMessage

    public void setStoreMimeMessage(boolean storeMimeMessage)
    Parameters:
      `storeMimeMessage` - Whether or not to store the retrieved message as MIME message in the sample result

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### interrupt

    public boolean interrupt()
    Interrupt the current operation if possible.
    Specified by:
      `interrupt` in interface `Interruptible`
    Returns:
      `true` if there was an operation to interrupt.

  - ### applies

    public boolean applies(ConfigTestElement configElement)
    Description copied from class: `AbstractSampler`
    Does configElement apply to Sampler
    Specified by:
      `applies` in interface `ConfigMergabilityIndicator`
    Overrides:
      `applies` in class `AbstractSampler`
    Parameters:
      `configElement` - `ConfigTestElement`
    Returns:
      boolean
    See Also:
      - `AbstractSampler.applies(org.apache.jmeter.config.ConfigTestElement)`

  - ### getHeaderOnly

    public boolean getHeaderOnly()

  - ### setHeaderOnly

    public void setHeaderOnly(boolean selected)