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 no...@apache.org on 2006/10/06 09:22:52 UTC

svn commit: r453520 - in /james/jspf/trunk/src/main/java/org/apache/james/jspf: SPF.java policies/local/FallbackPolicy.java

Author: norman
Date: Fri Oct  6 00:22:51 2006
New Revision: 453520

URL: http://svn.apache.org/viewvc?view=rev&rev=453520
Log:
Add support for Override. See JSPF-36 and JSPF-32

Modified:
    james/jspf/trunk/src/main/java/org/apache/james/jspf/SPF.java
    james/jspf/trunk/src/main/java/org/apache/james/jspf/policies/local/FallbackPolicy.java

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/SPF.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/SPF.java?view=diff&rev=453520&r1=453519&r2=453520
==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/SPF.java (original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/SPF.java Fri Oct  6 00:22:51 2006
@@ -44,6 +44,7 @@
 import org.apache.james.jspf.policies.local.BestGuessPolicy;
 import org.apache.james.jspf.policies.local.DefaultExplanationPolicy;
 import org.apache.james.jspf.policies.local.FallbackPolicy;
+import org.apache.james.jspf.policies.local.OverridePolicy;
 import org.apache.james.jspf.policies.local.TrustedForwarderPolicy;
 import org.apache.james.jspf.wiring.DNSServiceEnabled;
 import org.apache.james.jspf.wiring.LogEnabled;
@@ -76,6 +77,8 @@
 
     private FallbackPolicy fallBack;
     
+    private OverridePolicy override;
+    
     private boolean useTrustedForwarder = false;
 
     /**
@@ -193,6 +196,10 @@
 
         ArrayList policies = new ArrayList();
         
+        if (override != null) {
+            policies.add(override);
+        }
+        
         policies.add(new SPFRetriever(dnsProbe));
         
         if (useBestGuess) {
@@ -277,5 +284,18 @@
      */
     public synchronized void setUseTrustedForwarder(boolean useTrustedForwarder) {
         this.useTrustedForwarder = useTrustedForwarder;
+    }
+    
+    /**
+     * Return the OverridePolicy object which can be used to
+     * override spfRecords for hosts
+     * 
+     * @return the OverridePolicy object
+     */
+    public synchronized OverridePolicy getOverridePolicy() {
+        if (override == null) {
+            override = new OverridePolicy(this.log, parser);
+        }
+        return override;
     }
 }

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/policies/local/FallbackPolicy.java
URL: http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/policies/local/FallbackPolicy.java?view=diff&rev=453520&r1=453519&r2=453520
==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/policies/local/FallbackPolicy.java (original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/policies/local/FallbackPolicy.java Fri Oct  6 00:22:51 2006
@@ -35,7 +35,7 @@
  */
 public class FallbackPolicy extends AbstractNestedPolicy {
 
-    private Map fallBackMap;
+    private Map entryMap;
 
     private SPFRecordParser parser;
 
@@ -43,12 +43,12 @@
 
     public FallbackPolicy(Logger log, SPFRecordParser parser) {
         this.log = log;
-        fallBackMap = Collections.synchronizedMap(new HashMap());
+        entryMap = Collections.synchronizedMap(new HashMap());
         this.parser = parser;
     }
 
     /**
-     * Add a fallback entry.
+     * Add a entry.
      * 
      * @param rawHost
      *            the host or ipaddress for which the entry should be added.
@@ -57,7 +57,7 @@
      * @throws IllegalArgumentException
      *             get thrown on invalid spfRecord
      */
-    public void addFallBackEntry(String rawHost, String rawSpfRecord)
+    public void addEntry(String rawHost, String rawSpfRecord)
             throws IllegalArgumentException {
         String host;
         try {
@@ -74,8 +74,8 @@
                 host = rawHost;
             }
 
-            synchronized (fallBackMap) {
-                fallBackMap.put(host, spfRecord);
+            synchronized (entryMap) {
+                entryMap.put(host, spfRecord);
             }
         } catch (SPFResultException e) {
             throw new IllegalArgumentException("Invalid SPF-Record: "
@@ -85,26 +85,26 @@
     }
 
     /**
-     * Clear all fallBack entries
+     * Clear all entries
      * 
      */
-    public void clearFallBackEntrys() {
-        log.debug("Clear all fallback entries");
-        synchronized (fallBackMap) {
-            fallBackMap.clear();
+    public void clearEntrys() {
+        log.debug("Clear all entries");
+        synchronized (entryMap) {
+            entryMap.clear();
         }
     }
 
     /**
-     * Remove fallBack entry
+     * Remove entry
      * 
      * @param host
      *            The host
      */
-    public void removeFallBackEntrys(String host) {
+    public void removeEntry(String host) {
         log.debug("Remove fallback entry for host: " + host);
-        synchronized (fallBackMap) {
-            fallBackMap.remove(getRawFallBackEntry(host));
+        synchronized (entryMap) {
+            entryMap.remove(getRawEntry(host));
         }
     }
 
@@ -124,14 +124,14 @@
      *         the given host
      */
     protected SPF1Record getMySPFRecord(String host) {
-        Object fallBack = null;
+        Object entry = null;
 
-        synchronized (fallBackMap) {
-            fallBack = getRawFallBackEntry(host);
+        synchronized (entryMap) {
+            entry = getRawEntry(host);
         }
 
-        if (fallBack != null) {
-            return (SPF1Record) fallBack;
+        if (entry != null) {
+            return (SPF1Record) entry;
         } else {
             return null;
         }
@@ -146,15 +146,15 @@
      *            the host
      * @return the stored object for the given host or null
      */
-    private Object getRawFallBackEntry(String host) {
-        Iterator fallBackIt = fallBackMap.keySet().iterator();
+    private Object getRawEntry(String host) {
+        Iterator fallBackIt = entryMap.keySet().iterator();
 
         while (fallBackIt.hasNext()) {
             String rawHost = fallBackIt.next().toString();
 
             if ((rawHost.startsWith(".") && host.startsWith(rawHost))
                     || rawHost.endsWith(".") && host.endsWith(rawHost)) {
-                return fallBackMap.get(rawHost);
+                return entryMap.get(rawHost);
             }
         }
         return null;



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