ColumbaMailboxInfo.java :  » Mail-Clients » columba-1.4 » org » columba » mail » folder » Java Open Source

Java Open Source » Mail Clients » columba 1.4 
columba 1.4 » org » columba » mail » folder » ColumbaMailboxInfo.java
package org.columba.mail.folder;

import org.columba.ristretto.message.MailboxInfo;

public class ColumbaMailboxInfo implements IMailboxInfo {

  private MailboxInfo mailboxInfo;
  
  public ColumbaMailboxInfo(MailboxInfo info) {
    this.mailboxInfo = info;
  }
  
  public ColumbaMailboxInfo() {
    this.mailboxInfo = new MailboxInfo();
  }
  
  public int getExists() {
    return mailboxInfo.getExists();
  }

  public void setExists(int v) {
    mailboxInfo.setExists(v);

  }

  public void incExists() throws MailboxInfoInvalidException {
    mailboxInfo.setExists(mailboxInfo.getExists()+1);
    sanityCheck();
  }

  public void decExists() throws MailboxInfoInvalidException {
    mailboxInfo.setExists(mailboxInfo.getExists()-1);
    sanityCheck();
  }

  public void setRecent(int v) {
    mailboxInfo.setRecent(v);
  }

  public int getRecent() {
    return mailboxInfo.getRecent();
  }

  public void incRecent() throws MailboxInfoInvalidException {
    mailboxInfo.setRecent(mailboxInfo.getRecent()+1);
    sanityCheck();
  }

  public void decRecent() throws MailboxInfoInvalidException {
    mailboxInfo.setRecent(mailboxInfo.getRecent()-1);
    sanityCheck();
  }

  public void setUnseen(int v) {
    mailboxInfo.setUnseen(v);
  }

  public int getUnseen() {
    return mailboxInfo.getUnseen();
  }

  public void incUnseen() throws MailboxInfoInvalidException {
    mailboxInfo.setUnseen(mailboxInfo.getUnseen()+1);
    sanityCheck();
  }

  public void decUnseen() throws MailboxInfoInvalidException {
    mailboxInfo.setUnseen(mailboxInfo.getUnseen()-1);
    sanityCheck();
  }

  public void reset() {
    mailboxInfo.reset();
  }

  public void setUidNext(int v) {
    mailboxInfo.setUidNext(v);
  }

  public void setUidValidity(int v) {
    mailboxInfo.setUidValidity(v);
  }

  public int getUidNext() {
    return mailboxInfo.getUidNext();
  }

  public int getUidValidity() {
    return mailboxInfo.getUidValidity();
  }

    private void sanityCheck() throws MailboxInfoInvalidException {
      if( !isSane() ) throw new MailboxInfoInvalidException(); 
    }

  public boolean isSane() {
    // Sanity checks
    if( mailboxInfo.getExists() < 0) return false;
    
    if( mailboxInfo.getRecent() < 0) return false;
    
    if( mailboxInfo.getRecent() > mailboxInfo.getExists()) return false;
    
    if( mailboxInfo.getUnseen() < 0) return false;
    
    if( mailboxInfo.getUnseen() > mailboxInfo.getExists()) return false;
    
    return true;
  }

    
  
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.