You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by lp...@apache.org on 2017/10/26 09:32:25 UTC
[71/71] [abbrv] ambari git commit: AMBARI-21307 Added unit tests,
fixed logging, typos and code issues
AMBARI-21307 Added unit tests, fixed logging, typos and code issues
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/71dd5a8e
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/71dd5a8e
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/71dd5a8e
Branch: refs/heads/feature-branch-AMBARI-21307
Commit: 71dd5a8e92e408518e8fe9c97dafe8dccd00fc77
Parents: 6c06f5d
Author: lpuskas <lp...@apache.org>
Authored: Tue Oct 17 11:33:52 2017 +0200
Committer: lpuskas <lp...@apache.org>
Committed: Thu Oct 26 11:28:52 2017 +0200
----------------------------------------------------------------------
.../DefaultLdapAttributeDetectionService.java | 58 +++++++++++---------
.../ads/DefaultLdapConnectionConfigService.java | 5 +-
.../ads/detectors/AttributeDetectorFactory.java | 26 +++++++++
.../ads/detectors/ChainedAttributeDetector.java | 7 +++
.../ads/detectors/GroupMemberAttrDetector.java | 6 +-
.../ads/detectors/GroupNameAttrDetector.java | 4 +-
.../ads/detectors/GroupObjectClassDetector.java | 4 +-
.../OccurrenceAndWeightBasedDetector.java | 42 ++++++++++++--
.../detectors/UserGroupMemberAttrDetector.java | 4 +-
.../ads/detectors/UserNameAttrDetector.java | 6 +-
.../ads/detectors/UserObjectClassDetector.java | 6 +-
.../server/ldap/LdapModuleFunctionalTest.java | 10 +---
12 files changed, 122 insertions(+), 56 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapAttributeDetectionService.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapAttributeDetectionService.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapAttributeDetectionService.java
index ea6e278..25abce7 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapAttributeDetectionService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapAttributeDetectionService.java
@@ -37,10 +37,18 @@ import org.apache.directory.ldap.client.template.LdapConnectionTemplate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+/**
+ * Service implementation that performs user and group attribute detection based on a sample set of entries returned by
+ * an ldap search operation. A accuracy of detected values may depend on the size of the sample result set
+ */
@Singleton
public class DefaultLdapAttributeDetectionService implements LdapAttributeDetectionService {
- private static final Logger LOGGER = LoggerFactory.getLogger(DefaultLdapAttributeDetectionService.class);
+ private static final Logger LOG = LoggerFactory.getLogger(DefaultLdapAttributeDetectionService.class);
+
+ /**
+ * The maximum size of the entry set the detection is performed on
+ */
private static final int SAMPLE_RESULT_SIZE = 50;
@Inject
@@ -49,46 +57,46 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
@Inject
private LdapConnectionTemplateFactory ldapConnectionTemplateFactory;
-
@Inject
public DefaultLdapAttributeDetectionService() {
}
@Override
public AmbariLdapConfiguration detectLdapUserAttributes(AmbariLdapConfiguration ambariLdapConfiguration) throws AmbariLdapException {
- LOGGER.info("Detecting LDAP user attributes ...");
- LdapConnectionTemplate ldapConnectionTemplate = ldapConnectionTemplateFactory.create(ambariLdapConfiguration);
- AttributeDetector<Entry> userAttributDetector = attributeDetectorFactory.userAttributDetector();
+ LOG.info("Detecting LDAP user attributes ...");
// perform a search using the user search base
if (Strings.isEmpty(ambariLdapConfiguration.userSearchBase())) {
- LOGGER.warn("No user search base provided");
+ LOG.warn("No user search base provided");
return ambariLdapConfiguration;
}
try {
+ LdapConnectionTemplate ldapConnectionTemplate = ldapConnectionTemplateFactory.create(ambariLdapConfiguration);
+ AttributeDetector<Entry> userAttributeDetector = attributeDetectorFactory.userAttributDetector();
+
SearchRequest searchRequest = assembleUserSearchRequest(ldapConnectionTemplate, ambariLdapConfiguration);
// do the search
List<Entry> entries = ldapConnectionTemplate.search(searchRequest, getEntryMapper());
for (Entry entry : entries) {
- LOGGER.info("Processing sample entry with dn: [{}]", entry.getDn());
- userAttributDetector.collect(entry);
+ LOG.info("Collecting user attribute information from the sample entry with dn: [{}]", entry.getDn());
+ userAttributeDetector.collect(entry);
}
// select attributes based on the collected information
- Map<String, String> detectedUserAttributes = userAttributDetector.detect();
+ Map<String, String> detectedUserAttributes = userAttributeDetector.detect();
// setting the attributes into the configuration
setDetectedAttributes(ambariLdapConfiguration, detectedUserAttributes);
- LOGGER.info("Decorated ambari ldap config : [{}]", ambariLdapConfiguration);
+ LOG.info("Decorated ambari ldap config : [{}]", ambariLdapConfiguration);
} catch (Exception e) {
- LOGGER.error("Ldap operation failed", e);
+ LOG.error("Ldap operation failed while detecting user attributes", e);
throw new AmbariLdapException(e);
}
@@ -99,19 +107,19 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
@Override
public AmbariLdapConfiguration detectLdapGroupAttributes(AmbariLdapConfiguration ambariLdapConfiguration) throws AmbariLdapException {
- LOGGER.info("Detecting LDAP group attributes ...");
+ LOG.info("Detecting LDAP group attributes ...");
// perform a search using the user search base
if (Strings.isEmpty(ambariLdapConfiguration.groupSearchBase())) {
- LOGGER.warn("No group search base provided");
+ LOG.warn("No group search base provided");
return ambariLdapConfiguration;
}
- LdapConnectionTemplate ldapConnectionTemplate = ldapConnectionTemplateFactory.create(ambariLdapConfiguration);
- AttributeDetector<Entry> groupAttributDetector = attributeDetectorFactory.groupAttributDetector();
-
try {
+ LdapConnectionTemplate ldapConnectionTemplate = ldapConnectionTemplateFactory.create(ambariLdapConfiguration);
+ AttributeDetector<Entry> groupAttributeDetector = attributeDetectorFactory.groupAttributDetector();
+
SearchRequest searchRequest = assembleGroupSearchRequest(ldapConnectionTemplate, ambariLdapConfiguration);
// do the search
@@ -119,22 +127,22 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
for (Entry groupEntry : groupEntries) {
- LOGGER.info("Processing sample entry with dn: [{}]", groupEntry.getDn());
- groupAttributDetector.collect(groupEntry);
+ LOG.info("Collecting group attribute information from the sample entry with dn: [{}]", groupEntry.getDn());
+ groupAttributeDetector.collect(groupEntry);
}
// select attributes based on the collected information
- Map<String, String> detectedGroupAttributes = groupAttributDetector.detect();
+ Map<String, String> detectedGroupAttributes = groupAttributeDetector.detect();
// setting the attributes into the configuration
setDetectedAttributes(ambariLdapConfiguration, detectedGroupAttributes);
- LOGGER.info("Decorated ambari ldap config : [{}]", ambariLdapConfiguration);
+ LOG.info("Decorated ambari ldap config : [{}]", ambariLdapConfiguration);
} catch (Exception e) {
- LOGGER.error("Ldap operation failed", e);
+ LOG.error("Ldap operation failed while detecting group attributes", e);
throw new AmbariLdapException(e);
}
@@ -143,8 +151,9 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
}
private void setDetectedAttributes(AmbariLdapConfiguration ambariLdapConfiguration, Map<String, String> detectedAttributes) {
+
for (Map.Entry<String, String> detecteMapEntry : detectedAttributes.entrySet()) {
- LOGGER.info("Setting detected configuration value: [{}] - > [{}]", detecteMapEntry.getKey(), detecteMapEntry.getValue());
+ LOG.info("Setting detected configuration value: [{}] - > [{}]", detecteMapEntry.getKey(), detecteMapEntry.getValue());
ambariLdapConfiguration.setValueFor(AmbariLdapConfigKeys.fromKeyStr(detecteMapEntry.getKey()), detecteMapEntry.getValue());
}
@@ -160,7 +169,7 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
return req;
} catch (Exception e) {
- LOGGER.error("Could not assemble ldap search request", e);
+ LOG.error("Could not assemble ldap search request", e);
throw new AmbariLdapException(e);
}
}
@@ -175,12 +184,11 @@ public class DefaultLdapAttributeDetectionService implements LdapAttributeDetect
return req;
} catch (Exception e) {
- LOGGER.error("Could not assemble ldap search request", e);
+ LOG.error("Could not assemble ldap search request", e);
throw new AmbariLdapException(e);
}
}
-
public EntryMapper<Entry> getEntryMapper() {
return new EntryMapper<Entry>() {
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapConnectionConfigService.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapConnectionConfigService.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapConnectionConfigService.java
index 9bc2daf..9afcf51 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapConnectionConfigService.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/DefaultLdapConnectionConfigService.java
@@ -53,20 +53,17 @@ public class DefaultLdapConnectionConfigService implements LdapConnectionConfigS
config.setCredentials(ambariLdapConfiguration.bindPassword());
config.setUseSsl(ambariLdapConfiguration.useSSL());
- // todo implement proper validation logic here: identify optional/mandatory settings
- // todo suggest proper naming
if ("custom".equals(ambariLdapConfiguration.trustStore())) {
LOG.info("Using custom trust manager configuration");
config.setTrustManagers(trustManagers(ambariLdapConfiguration));
}
-
return config;
}
/**
- * Configure the trustmanagers to use the custom keystore.
+ * Configure the trust managers to use the custom keystore.
*
* @param ambariLdapConfiguration congiguration instance holding current values
* @return the array of trust managers
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/AttributeDetectorFactory.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/AttributeDetectorFactory.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/AttributeDetectorFactory.java
index 08e3625..8155461 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/AttributeDetectorFactory.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/AttributeDetectorFactory.java
@@ -21,30 +21,56 @@ import javax.inject.Named;
import javax.inject.Singleton;
import org.apache.ambari.server.ldap.service.AttributeDetector;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+/**
+ * Factory for attribute detector chains.
+ */
@Singleton
public class AttributeDetectorFactory {
+ private static final Logger LOG = LoggerFactory.getLogger(AttributeDetectorFactory.class);
private static final String USER_ATTRIBUTES_DETECTORS = "UserAttributesDetectors";
private static final String GROUP_ATTRIBUTES_DETECTORS = "GroupAttributesDetectors";
+ /**
+ * The set of user attribute detectors, configured by GUICE (check the relevant guice module implementation)
+ */
@Inject
@Named(USER_ATTRIBUTES_DETECTORS)
private Set<AttributeDetector> userAttributeDetectors;
+ /**
+ * The set of group attribute detectors, configured by GUICE (check the relevant guice module implementation)
+ */
@Inject
@Named(GROUP_ATTRIBUTES_DETECTORS)
Set<AttributeDetector> groupAttributeDetectors;
+ @Inject
public AttributeDetectorFactory() {
}
+ /**
+ * Creates a chained attribute detector instance with user attribute detectors
+ *
+ * @return the constructed ChainedAttributeDetector instance
+ */
public ChainedAttributeDetector userAttributDetector() {
+ LOG.info("Creating instance with user attribute detectors: [{}]", userAttributDetector());
return new ChainedAttributeDetector(userAttributeDetectors);
}
+ /**
+ * Creates a chained attribute detector instance with user attribute detectors
+ *
+ * @return the constructed ChainedAttributeDetector instance
+ */
+
public ChainedAttributeDetector groupAttributDetector() {
+ LOG.info("Creating instance with group attribute detectors: [{}]", groupAttributDetector());
return new ChainedAttributeDetector(groupAttributeDetectors);
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/ChainedAttributeDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/ChainedAttributeDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/ChainedAttributeDetector.java
index ad70d0b..1fb7a4c 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/ChainedAttributeDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/ChainedAttributeDetector.java
@@ -27,11 +27,18 @@ import org.slf4j.LoggerFactory;
import com.google.common.collect.Maps;
+/**
+ * Attribute detector implementation that performs the attribute detection on a configured set of attribute detectors.
+ * (it implements the composite design pattern)
+ */
@Singleton
public class ChainedAttributeDetector implements AttributeDetector<Entry> {
private static final Logger LOG = LoggerFactory.getLogger(ChainedAttributeDetector.class);
+ /**
+ * The set of detectors this instance delegates to
+ */
private Set<AttributeDetector> detectors;
@Inject
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupMemberAttrDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupMemberAttrDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupMemberAttrDetector.java
index 72e753b..ffe4027 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupMemberAttrDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupMemberAttrDetector.java
@@ -54,12 +54,12 @@ public class GroupMemberAttrDetector extends OccurrenceAndWeightBasedDetector {
}
@Override
- protected boolean applies(Entry entry, String value) {
- return entry.containsAttribute(value);
+ protected boolean applies(Entry entry, String attribute) {
+ return entry.containsAttribute(attribute);
}
@Override
public String detectedProperty() {
- return AmbariLdapConfigKeys.USER_GROUP_MEMBER_ATTRIBUTE.key();
+ return AmbariLdapConfigKeys.GROUP_MEMBER_ATTRIBUTE.key();
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupNameAttrDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupNameAttrDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupNameAttrDetector.java
index ca54dad..0315ef2 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupNameAttrDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupNameAttrDetector.java
@@ -59,8 +59,8 @@ public class GroupNameAttrDetector extends OccurrenceAndWeightBasedDetector {
@Override
- protected boolean applies(Entry entry, String value) {
- return entry.containsAttribute(value);
+ protected boolean applies(Entry entry, String attribute) {
+ return entry.containsAttribute(attribute);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupObjectClassDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupObjectClassDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupObjectClassDetector.java
index 8f342f1..b681134 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupObjectClassDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/GroupObjectClassDetector.java
@@ -62,8 +62,8 @@ public class GroupObjectClassDetector extends OccurrenceAndWeightBasedDetector {
}
@Override
- protected boolean applies(Entry entry, String value) {
- return entry.hasObjectClass(value);
+ protected boolean applies(Entry entry, String attribute) {
+ return entry.hasObjectClass(attribute);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/OccurrenceAndWeightBasedDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/OccurrenceAndWeightBasedDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/OccurrenceAndWeightBasedDetector.java
index cb78d25..6ce7ca6 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/OccurrenceAndWeightBasedDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/OccurrenceAndWeightBasedDetector.java
@@ -23,15 +23,27 @@ import org.slf4j.LoggerFactory;
import com.google.common.collect.Maps;
+/**
+ * Attribute detector implementation that detects attributes considering their count of occurrence in a sample set of entries.
+ * When multiple values are checked these values can be assigned a weight, that represents it's importance.
+ */
public abstract class OccurrenceAndWeightBasedDetector implements AttributeDetector<Entry> {
private static final Logger LOGGER = LoggerFactory.getLogger(OccurrenceAndWeightBasedDetector.class);
- private Map<String, Integer> occurranceMap = Maps.newHashMap();
+ /**
+ * A map in which the keys are the attributes that are checked in an entry and the values are the number the key occurs
+ * in the sample entry set.
+ */
+ private Map<String, Integer> occurrenceMap = Maps.newHashMap();
+
+ /**
+ * A map in which the keys are the attributes that are checked in an entry and the values are the weight of the attribute.
+ */
private Map<String, Integer> weightsMap = Maps.newHashMap();
protected Map<String, Integer> occurrenceMap() {
- return occurranceMap;
+ return occurrenceMap;
}
protected Map<String, Integer> weightsMap() {
@@ -39,10 +51,27 @@ public abstract class OccurrenceAndWeightBasedDetector implements AttributeDetec
}
- protected abstract boolean applies(Entry entry, String value);
-
+ /**
+ * Checks whether the provided atribute is present in the entry.s
+ *
+ * @param entry the entry being procesed
+ * @param attribute the attribute being detected
+ * @return true if the attribute is present, false otherwise
+ */
+ protected abstract boolean applies(Entry entry, String attribute);
+
+ /**
+ * The configuration key being detected.
+ *
+ * @return the key as a string
+ */
public abstract String detectedProperty();
+ /**
+ * Calculates the attribute value based on the two maps.
+ *
+ * @return a map with a single element, the key is the configuration key, the value is the detected attribute value
+ */
@Override
public Map<String, String> detect() {
LOGGER.info("Calculating the most probable attribute/value ...");
@@ -82,6 +111,11 @@ public abstract class OccurrenceAndWeightBasedDetector implements AttributeDetec
}
+ /**
+ * Collects the information about the attribute to be detected from the provided entry.
+ *
+ * @param entry a result entry returned by a search operation
+ */
@Override
public void collect(Entry entry) {
LOGGER.info("Collecting ldap attributes/values form entry with dn: [{}]", entry.getDn());
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserGroupMemberAttrDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserGroupMemberAttrDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserGroupMemberAttrDetector.java
index 63ad8ba..b34a2b2 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserGroupMemberAttrDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserGroupMemberAttrDetector.java
@@ -53,8 +53,8 @@ public class UserGroupMemberAttrDetector extends OccurrenceAndWeightBasedDetecto
}
@Override
- protected boolean applies(Entry entry, String value) {
- return entry.containsAttribute(value);
+ protected boolean applies(Entry entry, String attribute) {
+ return entry.containsAttribute(attribute);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserNameAttrDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserNameAttrDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserNameAttrDetector.java
index 8f46d72..dec4459 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserNameAttrDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserNameAttrDetector.java
@@ -58,9 +58,9 @@ public class UserNameAttrDetector extends OccurrenceAndWeightBasedDetector {
}
@Override
- protected boolean applies(Entry entry, String value) {
- LOGGER.info("Checking for attribute [{}] in entry [{}]", value, entry.getDn());
- return entry.containsAttribute(value);
+ protected boolean applies(Entry entry, String attribute) {
+ LOGGER.info("Checking for attribute [{}] in entry [{}]", attribute, entry.getDn());
+ return entry.containsAttribute(attribute);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserObjectClassDetector.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserObjectClassDetector.java b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserObjectClassDetector.java
index 902dff9..53aad8b 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserObjectClassDetector.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/ldap/service/ads/detectors/UserObjectClassDetector.java
@@ -57,9 +57,9 @@ public class UserObjectClassDetector extends OccurrenceAndWeightBasedDetector {
}
@Override
- protected boolean applies(Entry entry, String value) {
- LOGGER.info("Checking for object class [{}] in entry [{}]", value, entry.getDn());
- return entry.hasObjectClass(value);
+ protected boolean applies(Entry entry, String attribute) {
+ LOGGER.info("Checking for object class [{}] in entry [{}]", attribute, entry.getDn());
+ return entry.hasObjectClass(attribute);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/71dd5a8e/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java b/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
index e77f816..875ce97 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/ldap/LdapModuleFunctionalTest.java
@@ -15,12 +15,10 @@
package org.apache.ambari.server.ldap;
import java.util.Map;
-import java.util.Set;
import org.apache.ambari.server.ldap.domain.AmbariLdapConfigKeys;
import org.apache.ambari.server.ldap.domain.AmbariLdapConfiguration;
import org.apache.ambari.server.ldap.domain.TestAmbariLdapConfigurationFactory;
-import org.apache.ambari.server.ldap.service.AttributeDetector;
import org.apache.ambari.server.ldap.service.LdapConfigurationService;
import org.apache.ambari.server.ldap.service.LdapFacade;
import org.apache.ambari.server.ldap.service.ads.LdapConnectionTemplateFactory;
@@ -39,7 +37,6 @@ import org.junit.Ignore;
import org.junit.Test;
import com.google.common.collect.Maps;
-import com.google.common.collect.Sets;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
import com.google.inject.Injector;
@@ -180,14 +177,11 @@ public class LdapModuleFunctionalTest {
public void testShouldDetectorsBeBound() throws Exception {
// GIVEN
- Set<AttributeDetector> adSet = Sets.newHashSet();
-// ChainedAttributeDetector ad = injector.getInstance(ChainedAttributeDetector.class);
-
- AttributeDetectorFactory f = injector.getInstance(AttributeDetectorFactory.class);
// WHEN
- Assert.assertNotNull(f);
+ AttributeDetectorFactory f = injector.getInstance(AttributeDetectorFactory.class);
// THEN
+ Assert.assertNotNull(f);
}
}
\ No newline at end of file