You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by bt...@apache.org on 2015/09/22 12:16:42 UTC

svn commit: r1704520 - /james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java

Author: btellier
Date: Tue Sep 22 10:16:37 2015
New Revision: 1704520

URL: http://svn.apache.org/viewvc?rev=1704520&view=rev
Log:
MAILBOX-64 Introduce a fixed max quota manager

Added:
    james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java

Added: james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java
URL: http://svn.apache.org/viewvc/james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java?rev=1704520&view=auto
==============================================================================
--- james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java (added)
+++ james/mailbox/trunk/store/src/main/java/org/apache/james/mailbox/store/quota/FixedMaxQuotaManager.java Tue Sep 22 10:16:37 2015
@@ -0,0 +1,49 @@
+package org.apache.james.mailbox.store.quota;
+
+import org.apache.james.mailbox.exception.MailboxException;
+import org.apache.james.mailbox.exception.UnsupportedOperationException;
+import org.apache.james.mailbox.quota.MaxQuotaManager;
+import org.apache.james.mailbox.model.Quota;
+import org.apache.james.mailbox.model.QuotaRoot;
+
+/**
+ * {@link MaxQuotaManager} which use the same quota for all users.
+ *
+ * By default this means not quota at all
+ */
+public class FixedMaxQuotaManager implements MaxQuotaManager {
+    private long maxStorage = Quota.UNLIMITED;
+    private long maxMessage = Quota.UNLIMITED;
+
+    public void setMaxStorage(QuotaRoot quotaRoot, long maxStorageQuota) throws MailboxException {
+        throw new UnsupportedOperationException("Can not modify QuotaRoot specific upper limit for FixedMaxQuotaManager");
+    }
+
+    public void setMaxMessage(QuotaRoot quotaRoot, long maxMessageCount) throws MailboxException {
+        throw new UnsupportedOperationException("Can not modify QuotaRoot specific upper limit for FixedMaxQuotaManager");
+    }
+
+    public void setDefaultMaxStorage(long defaultMaxStorage) {
+        maxStorage = defaultMaxStorage;
+    }
+
+    public void setDefaultMaxMessage(long defaultMaxMessageCount) {
+        maxMessage = defaultMaxMessageCount;
+    }
+
+    public long getMaxStorage(QuotaRoot quotaRoot) throws MailboxException {
+        return maxStorage;
+    }
+
+    public long getMaxMessage(QuotaRoot quotaRoot) throws MailboxException {
+        return maxMessage;
+    }
+
+    public long getDefaultMaxStorage() throws MailboxException {
+        return maxStorage;
+    }
+
+    public long getDefaultMaxMessage() throws MailboxException {
+        return maxMessage;
+    }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org