Author: edeoliveira
Date: Sun Mar 29 11:25:44 2009
New Revision: 759669

URL: http://svn.apache.org/viewvc?rev=759669&view=rev
Log:
Simpler way of checking required properties

Modified:
    
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/HttpProxyRequest.java
    
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/basic/HttpBasicAuthLogicHandler.java
    
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/digest/HttpDigestAuthLogicHandler.java
    
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/ntlm/HttpNTLMAuthLogicHandler.java

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/HttpProxyRequest.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/HttpProxyRequest.java?rev=759669&r1=759668&r2=759669&view=diff
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/HttpProxyRequest.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/HttpProxyRequest.java
 Sun Mar 29 11:25:44 2009
@@ -169,18 +169,22 @@
     }
 
     /**
-     * Check if the property is set otherwise throw a...@link 
ProxyAuthException}.
+     * Check if the given property(ies) is(are) set. Otherwise throws a 
+     * {...@link ProxyAuthException}.
      */
-    public void checkRequiredProperty(String propertyName)
-            throws ProxyAuthException {
-        if (properties.get(propertyName) == null) {
-            StringBuilder sb = new StringBuilder("'");
-            sb.append(propertyName).append(
-                    "' property not provided in the request properties");
-            throw new ProxyAuthException(sb.toString());
+    public void checkRequiredProperties(String... propNames) throws 
ProxyAuthException {
+               StringBuilder sb = new StringBuilder();
+       for (String propertyName : propNames) {
+               if (properties.get(propertyName) == null) {                     
+                       sb.append(propertyName).append(' ');
+               }
+       }
+        if (sb.length() > 0) {
+               sb.append("property(ies) missing in request");
+               throw new ProxyAuthException(sb.toString());
         }
     }
-
+    
     /**
      * Returns the string representation of the HTTP request .
      */

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/basic/HttpBasicAuthLogicHandler.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/basic/HttpBasicAuthLogicHandler.java?rev=759669&r1=759668&r2=759669&view=diff
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/basic/HttpBasicAuthLogicHandler.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/basic/HttpBasicAuthLogicHandler.java
 Sun Mar 29 11:25:44 2009
@@ -58,9 +58,9 @@
                     "request parameter should be a non null HttpProxyRequest 
instance");
         }
 
-        HttpProxyRequest req = (HttpProxyRequest) request;
-        req.checkRequiredProperty(HttpProxyConstants.USER_PROPERTY);
-        req.checkRequiredProperty(HttpProxyConstants.PWD_PROPERTY);
+        ((HttpProxyRequest) request).checkRequiredProperties(
+                               HttpProxyConstants.USER_PROPERTY,
+                               HttpProxyConstants.PWD_PROPERTY);
     }
 
     /**

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/digest/HttpDigestAuthLogicHandler.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/digest/HttpDigestAuthLogicHandler.java?rev=759669&r1=759668&r2=759669&view=diff
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/digest/HttpDigestAuthLogicHandler.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/digest/HttpDigestAuthLogicHandler.java
 Sun Mar 29 11:25:44 2009
@@ -82,9 +82,9 @@
                     "request parameter should be a non null HttpProxyRequest 
instance");
         }
 
-        HttpProxyRequest req = (HttpProxyRequest) request;
-        req.checkRequiredProperty(HttpProxyConstants.USER_PROPERTY);
-        req.checkRequiredProperty(HttpProxyConstants.PWD_PROPERTY);
+        ((HttpProxyRequest) request).checkRequiredProperties(
+                               HttpProxyConstants.USER_PROPERTY,
+                               HttpProxyConstants.PWD_PROPERTY);
     }
 
     @Override

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/ntlm/HttpNTLMAuthLogicHandler.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/ntlm/HttpNTLMAuthLogicHandler.java?rev=759669&r1=759668&r2=759669&view=diff
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/ntlm/HttpNTLMAuthLogicHandler.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/proxy/handlers/http/ntlm/HttpNTLMAuthLogicHandler.java
 Sun Mar 29 11:25:44 2009
@@ -65,11 +65,11 @@
                     "request parameter should be a non null HttpProxyRequest 
instance");
         }
 
-        HttpProxyRequest req = (HttpProxyRequest) request;
-        req.checkRequiredProperty(HttpProxyConstants.USER_PROPERTY);
-        req.checkRequiredProperty(HttpProxyConstants.PWD_PROPERTY);
-        req.checkRequiredProperty(HttpProxyConstants.DOMAIN_PROPERTY);
-        req.checkRequiredProperty(HttpProxyConstants.WORKSTATION_PROPERTY);
+        ((HttpProxyRequest) request).checkRequiredProperties(
+                               HttpProxyConstants.USER_PROPERTY,
+                               HttpProxyConstants.PWD_PROPERTY,
+                               HttpProxyConstants.DOMAIN_PROPERTY,
+                               HttpProxyConstants.WORKSTATION_PROPERTY);
     }
 
     /**


Reply via email to