CONNECTORS-934 : Check if log level is enabled before constructing log message.
git-svn-id: https://svn.apache.org/repos/asf/manifoldcf/integration/solr-3.x/trunk@1591634 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/CHANGES.txt b/CHANGES.txt
index bc93a5c..d94d67d 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -6,6 +6,9 @@
CONNECTORS-914: Go to a Maven build system.
(Ahmet Arslan)
+CONNECTORS-934 : Check if log level is enabled before constructing log message.
+(Ahmet Arslan)
+
======================= Release 2.0 =====================
CONNECTORS-886: Provide [allow|deny]_token_parent fields.
diff --git a/src/main/java/org/apache/solr/mcf/ManifoldCFQParserPlugin.java b/src/main/java/org/apache/solr/mcf/ManifoldCFQParserPlugin.java
index 209d03f..5d55553 100644
--- a/src/main/java/org/apache/solr/mcf/ManifoldCFQParserPlugin.java
+++ b/src/main/java/org/apache/solr/mcf/ManifoldCFQParserPlugin.java
@@ -41,8 +41,6 @@
*/
public class ManifoldCFQParserPlugin extends QParserPlugin
{
- /** The component name */
- static final public String COMPONENT_NAME = "mcf";
/** The parameter that is supposed to contain the authenticated user name, possibly including the AD domain */
static final public String AUTHENTICATED_USER_NAME = "AuthenticatedUserName";
/** The parameter that is supposed to contain the MCF authorization domain, if any */
@@ -59,10 +57,7 @@
/** Special token for null security fields */
static final public String NOSECURITY_TOKEN = "__nosecurity__";
-
- /** The queries that we will not attempt to interfere with */
- static final private String[] globalAllowed = { "solrpingquery" };
-
+
/** A logger we can use */
private static final Logger LOG = LoggerFactory.getLogger(ManifoldCFQParserPlugin.class);
@@ -197,26 +192,25 @@
{
// Only return 'public' documents (those with no security tokens at all)
LOG.info("Group tokens received from caller");
- for (String passedToken : passedTokens)
- {
- userAccessTokens.add(passedToken);
- }
+ userAccessTokens.addAll(Arrays.asList(passedTokens));
}
}
else
{
- StringBuilder sb = new StringBuilder("[");
- boolean first = true;
- for (String domain : domainMap.keySet())
- {
- if (!first)
- sb.append(",");
- else
- first = false;
- sb.append(domain).append(":").append(domainMap.get(domain));
+ if(LOG.isInfoEnabled()){
+ StringBuilder sb = new StringBuilder("[");
+ boolean first = true;
+ for (String domain : domainMap.keySet())
+ {
+ if (!first)
+ sb.append(",");
+ else
+ first = false;
+ sb.append(domain).append(":").append(domainMap.get(domain));
+ }
+ sb.append("]");
+ LOG.info("Trying to match docs for user '"+sb.toString()+"'");
}
- sb.append("]");
- LOG.info("Trying to match docs for user '"+sb.toString()+"'");
// Valid authenticated user name. Look up access tokens for the user.
// Check the configuration arguments for validity
if (authorityBaseURL == null)
diff --git a/src/main/java/org/apache/solr/mcf/ManifoldCFSearchComponent.java b/src/main/java/org/apache/solr/mcf/ManifoldCFSearchComponent.java
index be7bc8d..9b9c85d 100644
--- a/src/main/java/org/apache/solr/mcf/ManifoldCFSearchComponent.java
+++ b/src/main/java/org/apache/solr/mcf/ManifoldCFSearchComponent.java
@@ -198,26 +198,25 @@
{
// Only return 'public' documents (those with no security tokens at all)
LOG.info("Group tokens received from caller");
- for (String passedToken : passedTokens)
- {
- userAccessTokens.add(passedToken);
- }
+ userAccessTokens.addAll(Arrays.asList(passedTokens));
}
}
else
{
- StringBuilder sb = new StringBuilder("[");
- boolean first = true;
- for (String domain : domainMap.keySet())
- {
- if (!first)
- sb.append(",");
- else
- first = false;
- sb.append(domain).append(":").append(domainMap.get(domain));
+ if(LOG.isInfoEnabled()){
+ StringBuilder sb = new StringBuilder("[");
+ boolean first = true;
+ for (String domain : domainMap.keySet())
+ {
+ if (!first)
+ sb.append(",");
+ else
+ first = false;
+ sb.append(domain).append(":").append(domainMap.get(domain));
+ }
+ sb.append("]");
+ LOG.info("Trying to match docs for user '"+sb.toString()+"'");
}
- sb.append("]");
- LOG.info("Trying to match docs for user '"+sb.toString()+"'");
// Valid authenticated user name. Look up access tokens for the user.
// Check the configuration arguments for validity
if (authorityBaseURL == null)
diff --git a/src/test/java/org/apache/solr/mcf/ManifoldCFSCLoadTest.java b/src/test/java/org/apache/solr/mcf/ManifoldCFSCLoadTest.java
index ab3a0e2..867b486 100644
--- a/src/test/java/org/apache/solr/mcf/ManifoldCFSCLoadTest.java
+++ b/src/test/java/org/apache/solr/mcf/ManifoldCFSCLoadTest.java
@@ -18,6 +18,7 @@
package org.apache.solr.mcf;
import java.io.IOException;
+import java.util.concurrent.TimeUnit;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
@@ -78,7 +79,7 @@
@Test
public void testTimeQueries() throws Exception {
int i = 0;
- long startTime = System.currentTimeMillis();
+ long startTime = System.nanoTime();
while (i < 1000)
{
assertQ(req("qt", "/mcf", "q", "*:*", "fl", "id", "AuthenticatedUserName", "user1"),
@@ -92,7 +93,7 @@
i++;
}
- System.out.println("Query time = "+new Long(System.currentTimeMillis()-startTime));
+ System.out.println("Query time (milliseconds) = " + TimeUnit.NANOSECONDS.toMillis(System.nanoTime()-startTime));
}
static class MockMCFAuthorityService {