
{filelink=1027}
import java.util.Properties;
import javax.mail.Folder;
import javax.mail.FolderNotFoundException;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Store;
import javax.mail.URLName;
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
public class JavaMail_Namespace
{
public static void main(String argv[]) {
try {
final String username="exemple_utilisateur";
final String password="mot de pass-***";
// Définition d'un URLName pour construire un lien
URLName rep_Serveur = new URLName("pop3://test@pop.gmail.com/Inbox");
// Ouvrir une session avec le nom d'utilisateur et le mot de passe
Session session = Session.getDefaultInstance(new Properties(),
new Authenticator()
{
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication(username, password);
}
}
);
Store store = session.getStore(rep_Serveur);
// Ouvrir la connexion
store.connect();
affiche_Info("Personnel", store.getPersonalNamespaces());
affiche_Info("Utilisateur " , store.getUserNamespaces(username));
affiche_Info("Partagé", store.getSharedNamespaces());
store.close();
} catch (Exception ex)
{
System.out.println("Erreur " + ex.getMessage());
ex.printStackTrace();
}
System.exit(0);
}
private static void affiche_Info(String name, Folder[] folders) throws MessagingException {
System.out.println(" Namespace "+ name +":" );
if (folders == null || folders.length == 0) {
System.out.println(" ");
return;
}
for (int i = 0; i < folders.length; i++) {
String fn = folders[i].getFullName();
if (fn.length() == 0)
fn = "";
try {
System.out.println(" " + fn + ", délimiteur " + folders[i].getSeparator() + "");
Folder[] fl = folders[i].list();
if (fl.length > 0) {
System.out.println(" Sous-Répertoire:");
for (int j = 0; j < fl.length; j++)
System.out.println(" " + fl[j].getFullName());
}
} catch (FolderNotFoundException ex) {
}
}
}
}