## org.apache.tools.mail
Class SmtpResponseReader

    java.lang.Object
      org.apache.tools.mail.SmtpResponseReader

    public class SmtpResponseReader

extends java.lang.Object

A wrapper around the raw input from the SMTP server that assembles multi line responses into a single String.

The same rules used here would apply to FTP and other Telnet based protocols as well.

Field Summary
`protected java.io.BufferedReader` `reader`

Constructor Summary
`SmtpResponseReader(java.io.InputStream in)` Wrap this input stream.

Method Summary
`void` `close()` Closes the underlying stream.
`java.lang.String` `getResponse()` Read until the server indicates that the response is complete.
`protected boolean` `hasMoreLines(java.lang.String line)` Should we expect more input?

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### reader

    protected java.io.BufferedReader reader

Constructor Detail

### SmtpResponseReader

    public SmtpResponseReader(java.io.InputStream in)

  Wrap this input stream.

  Parameters:
    `in` - the stream to wrap.

Method Detail

### getResponse

    public java.lang.String getResponse()
                                 throws java.io.IOException

  Read until the server indicates that the response is complete.

  Returns:
    Responsecode (3 digits) + Blank + Text from all response line concatenated (with blanks replacing the \r\n sequences).
  Throws:
    `java.io.IOException` - on error.

### close

    public void close()
               throws java.io.IOException

  Closes the underlying stream.

  Throws:
    `java.io.IOException` - on error.

### hasMoreLines

    protected boolean hasMoreLines(java.lang.String line)

  Should we expect more input?

  Parameters:
    `line` - the line to check.
  Returns:
    true if there are more lines to check.