001package org.apache.james.mailbox.maildir.mail.model; 002 003import java.io.IOException; 004 005import org.apache.james.mailbox.MailboxSession; 006import org.apache.james.mailbox.exception.MailboxException; 007import org.apache.james.mailbox.maildir.MaildirFolder; 008import org.apache.james.mailbox.model.MailboxACL; 009import org.apache.james.mailbox.model.MailboxPath; 010import org.apache.james.mailbox.store.mail.model.impl.SimpleMailbox; 011 012public class MaildirMailbox<Id> extends SimpleMailbox<Id> { 013 014 private MaildirFolder folder; 015 private MailboxSession session; 016 017 public MaildirMailbox(MailboxSession session, MailboxPath path, MaildirFolder folder) throws IOException { 018 super(path, folder.getUidValidity()); 019 this.folder = folder; 020 this.session = session; 021 } 022 023 @Override 024 public MailboxACL getACL() { 025 try { 026 return folder.getACL(session); 027 } catch (MailboxException e) { 028 throw new RuntimeException(e); 029 } 030 } 031 032 @Override 033 public void setACL(MailboxACL acl) { 034 try { 035 folder.setACL(session, acl); 036 } catch (MailboxException e) { 037 throw new RuntimeException(e); 038 } 039 } 040 041}