Search for available mail storage, free space, etc. Using javax.mail (or similar)

What can be done to find out the size of user mail storage, how much free space is available and how much total space is available using javax.mail or any Java library associated with it?

I get message information using javax.mail api.

Message message = new MimeMessage(session);
folder1 = store.getDefaultFolder();
folder1 = folder1.getFolder(boxType);
System.out.println("folder found :" 
                  + folder1.exists() 
                  + "folder name is " 
                  + folder1.getFullName());
folder1.open(Folder.READ_ONLY);
messages = folder1.getMessages();
+3
source share
1 answer

, QuotaAwareStore , IMAPSSLStore IMAPStore. "getQuota" Quota "". Quota.Resource "limit" "usage".

    Properties prop = System.getProperties();

    String host = "imap.gmail.com";
    String username = "user@google.com";
    String password = "some-password";

    prop.setProperty("mail.imap.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
    prop.setProperty("mail.imap.host", host);
    prop.setProperty("mail.imap.port", "993");
    prop.setProperty("mail.imap.starttls.enable", "true");
    prop.setProperty("mail.imap.socketFactory.fallback", "false");
    prop.setProperty("mail.debug", "true");

    Session ses = Session.getInstance(prop, null);
    Store store = ses.getStore("imap");
    store.connect(host, username, password);

    if (!IMAPStore.class.isInstance(store))
        throw new IllegalStateException("Is not IMAPStore");

    IMAPStore imapStore = (IMAPStore) store;
    Quota[] quotas = imapStore.getQuota("INBOX");

    for (Quota quota : quotas) {
        System.out.println(String.format("quotaRoot:'%s'", quota.quotaRoot));

        for (Quota.Resource resource : quota.resources) {
            System.out.println(String.format("name:'%s', limit:'%s', usage:'%s'",
                    resource.name, resource.limit, resource.usage));
        }
    }

:

quotaRoot:''
name:'STORAGE', limit:'10486380', usage:'1564'


:
IMAP

, JavaMail JavaDoc GMail:

  • Folder Quota. , GMail Quota, .
  • Folder - ( ). , GMail [Gmail]/All Mail, .
  • limit usage , Quota GMail, .

, , , Quota. , folder.getMessages() message.getSize().

+4

All Articles