Author: norman
Date: Mon Sep 25 09:03:53 2006
New Revision: 449712

URL: http://svn.apache.org/viewvc?view=rev&rev=449712
Log:
Add option to use best guess from commandline. See JSPF-24

Modified:
    james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java

Modified: james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java
URL: 
http://svn.apache.org/viewvc/james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java?view=diff&rev=449712&r1=449711&r2=449712
==============================================================================
--- james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java 
(original)
+++ james/jspf/trunk/src/main/java/org/apache/james/jspf/SPFQuery.java Mon Sep 
25 09:03:53 2006
@@ -58,6 +58,8 @@
     private final static String CMD_VERBOSE = "-verbose";
 

     private final static String CMD_DEFAULT_EXP =  "-default-explanation";

+    

+    private final static String CMD_BEST_GUESS =  "-use-best-guess";

     
     private static Logger logger = Logger.getRootLogger();
 
@@ -70,7 +72,8 @@
         String ip = null;
         String sender = null;
         String helo = null;

-        String defaultExplanation = null;
+        String defaultExplanation = null;

+        boolean useBestGuess = false;
 
         SimpleLayout layout = new SimpleLayout();
         ConsoleAppender consoleAppender = new ConsoleAppender(layout);
@@ -85,7 +88,7 @@
             for (int i = 0; i < args.length; i++) {
                 String[] arguments = args[i].split("=");
 

-                if (arguments == null || arguments.length != 2) usage();

+                if (arguments == null || (arguments.length > 2 && 
(arguments[0] != CMD_DEBUG) && arguments[0] != CMD_VERBOSE)) usage();

                 
                 if (arguments[0].equals(CMD_IP)) {
                     ip = arguments[1];
@@ -98,7 +101,9 @@
                 } else if (arguments[0].equals(CMD_VERBOSE)) {
                     logger.setLevel(Level.TRACE);

                 } else if (arguments[0].equals(CMD_DEFAULT_EXP)) {

-                    defaultExplanation = arguments[1];
+                    defaultExplanation = arguments[1];

+                } else if (arguments[0].equals(CMD_BEST_GUESS)) {

+                    useBestGuess = 
Boolean.valueOf(arguments[1]).booleanValue();
                 } else {
                     usage();
                 }
@@ -114,6 +119,11 @@
                 if (defaultExplanation != null) {

                     spf.setDefaultExplanation(defaultExplanation);

                 }

+                

+                // Check if we should use best guess

+                if (useBestGuess == true) {

+                    spf.setUseBestGuess(true);

+                }

                 
                 SPFResult result = spf.checkSPF(ip, sender, helo);
                 System.out.println(result.getResult());
@@ -131,7 +141,7 @@
      */
     private static void usage() {
         System.out.println("Usage: java -jar jspf-x.jar " + CMD_IP + 
"=192.168.100.1 " + CMD_SENDER + "[EMAIL PROTECTED] "

-                        + CMD_HELO + "=foo.bar [" + CMD_DEBUG + "] [" + 
CMD_VERBOSE+ "]");
+                        + CMD_HELO + "=foo.bar ["  + CMD_DEFAULT_EXP+ 
"=\"explanation String\"] [" +CMD_BEST_GUESS+ "=true|false] "+ CMD_DEBUG + "] 
[" + CMD_VERBOSE+ "]");
         System.exit(UNKNOWN_RCODE);
     }
     



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to