From 3cbb846732b9c5cc982b73ba4039a69fb5e5794c Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Mon, 25 Mar 2013 13:37:00 +0000
Subject: [PATCH] Additional fix for OPENDJ-694: Implement HTTP BASIC authentication

---
 opendj3/opendj-rest2ldap-servlet/src/main/java/org/forgerock/opendj/rest2ldap/servlet/Rest2LDAPAuthnFilter.java |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/opendj3/opendj-rest2ldap-servlet/src/main/java/org/forgerock/opendj/rest2ldap/servlet/Rest2LDAPAuthnFilter.java b/opendj3/opendj-rest2ldap-servlet/src/main/java/org/forgerock/opendj/rest2ldap/servlet/Rest2LDAPAuthnFilter.java
index db102bf..9dbaf91 100644
--- a/opendj3/opendj-rest2ldap-servlet/src/main/java/org/forgerock/opendj/rest2ldap/servlet/Rest2LDAPAuthnFilter.java
+++ b/opendj3/opendj-rest2ldap-servlet/src/main/java/org/forgerock/opendj/rest2ldap/servlet/Rest2LDAPAuthnFilter.java
@@ -101,6 +101,7 @@
     private SearchScope searchScope = SearchScope.WHOLE_SUBTREE;
     private boolean supportAltAuthentication;
     private boolean supportHTTPBasicAuthentication = true;
+    private CompletionHandlerFactory completionHandlerFactory;
 
     /**
      * {@inheritDoc}
@@ -139,8 +140,7 @@
          */
         final AtomicReference<Connection> savedConnection = new AtomicReference<Connection>();
         final CompletionHandler completionHandler =
-                CompletionHandlerFactory.getInstance(req.getServletContext())
-                        .createCompletionHandler(req, res);
+                completionHandlerFactory.createCompletionHandler(req, res);
         if (completionHandler.isAsynchronous()) {
             completionHandler.addCompletionListener(new Runnable() {
                 @Override
@@ -388,6 +388,10 @@
                         Rest2LDAP.configureConnectionFactory(configuration.get(
                                 "ldapConnectionFactories").required(), ldapFactoryName);
 
+                // Set the completion handler factory based on the Servlet API version.
+                completionHandlerFactory =
+                        CompletionHandlerFactory.getInstance(config.getServletContext());
+
                 isEnabled = true;
             }
         } catch (final ServletException e) {

--
Gitblit v1.10.0