2010-12-11 31 views
0

Je sais que JavaMail connaît les types de dossiers IMAP suivants:Qu'est-ce que JavaMail Folder type 3?

Folder.HOLDS_MESSAGES (ce qui correspond à la constante 1) et Folder.HOLDS_FOLDERS (ce qui correspond à la constante 2).

Donc, aujourd'hui je l'ai fait:

int type = folder.getType(); 

sur un dossier appelé "Brouillons", qui devrait être de type 2.

Mais le type de variable contient la valeur 3, qui ne semble pas être documenté n'importe où.

Que signifie le type 3?

Répondre

4

De l'APIDOC Folder.getType:

Renvoie le type de ce dossier, qui est , que ce dossier peut contenir des messages ou des sous-dossiers ou les deux. La valeur renvoyée est un champ de bits entier avec l'ensemble de bits approprié.

Donc 3 est juste le résultat de 2 + 1 dans ce cas, ce qui signifie que votre dossier HOLDS_MESSAGES et HOLDS_FOLDERS.

Rappelez-vous: l'int est un champ de bit. Vous devez vérifier comme ceci:

if ((folder.getType() & Folder.HOLDS_FOLDERS) != 0) 

etc, ne pas utiliser == comme opérateur.