Package com.sun.mail.iap
Class Response
java.lang.Object
com.sun.mail.iap.Response
- Direct Known Subclasses:
IMAPResponse
This class represents a response obtained from the input stream
of an IMAP server.
- Author:
- John Mani, Bill Shannon
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intprotected byte[]static final intstatic final intprotected Exceptionprotected intstatic final intstatic final intprotected intprotected intstatic final intprotected Stringstatic final intstatic final intprotected intstatic final intstatic final intprotected boolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ResponsebyeResponse(Exception ex) Return a Response object that looks like a BYE protocol response.Return the exception for a synthetic BYE response.getRest()Return the rest of the response as a string, usually used to return the arbitrary message text after a NO response.getTag()Return the tag, if this is a tagged statement.intgetType()booleanisBAD()booleanisBYE()booleanbooleanisNextNonSpace(char c) Skip past any spaces.booleanisNO()booleanisOK()booleanbooleanisTagged()booleanbytepeekByte()readAtom()Extract an ATOM, starting at the current position.Extract an ASTRING, starting at the current position and return as a String.String[]bytereadByte()Return the next byte from this Statement.Extract a NSTRING, starting at the current position.Extract a NSTRING, starting at the current position.longreadLong()Extract a long number, starting at the current position.intExtract an integer, starting at the current position.Extract a NSTRING, starting at the current position.readString(char delim) Read a string as an arbitrary sequence of characters, stopping at the delimiter Used to read part of a response code inside [].String[]voidreset()Reset pointer to beginning of response.voidskip(int count) voidvoidSkip to the next space, for use in error recovery while parsing.booleanDoes the server support UTF-8?toString()
-
Field Details
-
index
protected int index -
pindex
protected int pindex -
size
protected int size -
buffer
protected byte[] buffer -
type
protected int type -
tag
-
ex
- Since:
- JavaMail 1.5.4
-
utf8
protected boolean utf8 -
TAG_MASK
public static final int TAG_MASK- See Also:
-
CONTINUATION
public static final int CONTINUATION- See Also:
-
TAGGED
public static final int TAGGED- See Also:
-
UNTAGGED
public static final int UNTAGGED- See Also:
-
TYPE_MASK
public static final int TYPE_MASK- See Also:
-
OK
public static final int OK- See Also:
-
NO
public static final int NO- See Also:
-
BAD
public static final int BAD- See Also:
-
BYE
public static final int BYE- See Also:
-
SYNTHETIC
public static final int SYNTHETIC- See Also:
-
-
Constructor Details
-
Response
-
Response
Constructor for testing.- Parameters:
s- the response stringsupportsUtf8- allow UTF-8 in response?- Since:
- JavaMail 1.6.0
-
Response
Read a new Response from the given Protocol- Parameters:
p- the Protocol object- Throws:
IOException- for I/O errorsProtocolException- for protocol failures
-
Response
Copy constructor.- Parameters:
r- the Response to copy
-
-
Method Details
-
byeResponse
Return a Response object that looks like a BYE protocol response. Include the details of the exception in the response string.- Parameters:
ex- the exception- Returns:
- the synthetic Response object
-
supportsUtf8
public boolean supportsUtf8()Does the server support UTF-8?- Returns:
- true if the server supports UTF-8
- Since:
- JavaMail 1.6.0
-
skipSpaces
public void skipSpaces() -
isNextNonSpace
public boolean isNextNonSpace(char c) Skip past any spaces. If the next non-space character is c, consume it and return true. Otherwise stop at that point and return false.- Parameters:
c- the character to look for- Returns:
- true if the character is found
-
skipToken
public void skipToken()Skip to the next space, for use in error recovery while parsing. -
skip
public void skip(int count) -
peekByte
public byte peekByte() -
readByte
public byte readByte()Return the next byte from this Statement.- Returns:
- the next byte
-
readAtom
Extract an ATOM, starting at the current position. Updates the internal index to beyond the Atom.- Returns:
- an Atom
-
readString
Read a string as an arbitrary sequence of characters, stopping at the delimiter Used to read part of a response code inside [].- Parameters:
delim- the delimiter character- Returns:
- the string
-
readStringList
-
readAtomStringList
-
readNumber
public int readNumber()Extract an integer, starting at the current position. Updates the internal index to beyond the number. Returns -1 if a number was not found.- Returns:
- a number
-
readLong
public long readLong()Extract a long number, starting at the current position. Updates the internal index to beyond the number. Returns -1 if a long number was not found.- Returns:
- a long
-
readString
Extract a NSTRING, starting at the current position. Return it as a String. The sequence 'NIL' is returned as null NSTRING := QuotedString | Literal | "NIL"- Returns:
- a String
-
readBytes
Extract a NSTRING, starting at the current position. Return it as a ByteArrayInputStream. The sequence 'NIL' is returned as null NSTRING := QuotedString | Literal | "NIL"- Returns:
- a ByteArrayInputStream
-
readByteArray
Extract a NSTRING, starting at the current position. Return it as a ByteArray. The sequence 'NIL' is returned as null NSTRING := QuotedString | Literal | "NIL"- Returns:
- a ByteArray
-
readAtomString
Extract an ASTRING, starting at the current position and return as a String. An ASTRING can be a QuotedString, a Literal or an Atom (plus ']'). Any errors in parsing returns null ASTRING := QuotedString | Literal | 1*ASTRING_CHAR- Returns:
- a String
-
getType
public int getType() -
isContinuation
public boolean isContinuation() -
isTagged
public boolean isTagged() -
isUnTagged
public boolean isUnTagged() -
isOK
public boolean isOK() -
isNO
public boolean isNO() -
isBAD
public boolean isBAD() -
isBYE
public boolean isBYE() -
isSynthetic
public boolean isSynthetic() -
getTag
Return the tag, if this is a tagged statement.- Returns:
- tag of this tagged statement
-
getRest
Return the rest of the response as a string, usually used to return the arbitrary message text after a NO response.- Returns:
- the rest of the response
-
getException
Return the exception for a synthetic BYE response.- Returns:
- the exception
- Since:
- JavaMail 1.5.4
-
reset
public void reset()Reset pointer to beginning of response. -
toString
-