mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-06 13:35:50 +01:00
Scalized :-)
This commit is contained in:
@@ -77,30 +77,19 @@ object LDAPUtil {
|
|||||||
|
|
||||||
private def findUser(conn: LDAPConnection, userName: String, baseDN: String, userNameAttribute: String): Option[String] = {
|
private def findUser(conn: LDAPConnection, userName: String, baseDN: String, userNameAttribute: String): Option[String] = {
|
||||||
val results = conn.search(baseDN, LDAPConnection.SCOPE_SUB, userNameAttribute + "=" + userName, null, false)
|
val results = conn.search(baseDN, LDAPConnection.SCOPE_SUB, userNameAttribute + "=" + userName, null, false)
|
||||||
while (results.hasMore) {
|
(for(i <- 0 to results.getCount) yield try {
|
||||||
var entry: LDAPEntry = null
|
Some(results.next)
|
||||||
try {
|
|
||||||
entry = results.next
|
|
||||||
} catch {
|
} catch {
|
||||||
case lre: LDAPReferralException => // NOTE(tanacasino): Referral follow is off. so ignores it.(for AD)
|
case ex: LDAPReferralException => None // NOTE(tanacasino): Referral follow is off. so ignores it.(for AD)
|
||||||
|
}).flatten.collectFirst {
|
||||||
|
case x if(x != null) => x.getDN
|
||||||
}
|
}
|
||||||
if (entry != null) {
|
|
||||||
return Some(entry.getDN)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
None
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private def findMailAddress(conn: LDAPConnection, userDN: String, mailAttribute: String): Option[String] = {
|
private def findMailAddress(conn: LDAPConnection, userDN: String, mailAttribute: String): Option[String] = {
|
||||||
val attributes = Array[String](mailAttribute)
|
val results = conn.search(userDN, LDAPConnection.SCOPE_BASE, null, Array[String](mailAttribute), false)
|
||||||
val results = conn.search(userDN, LDAPConnection.SCOPE_BASE, null, attributes, false)
|
|
||||||
if (results.hasMore) {
|
if (results.hasMore) {
|
||||||
val attr = results.next.getAttribute(mailAttribute)
|
Option(results.next.getAttribute(mailAttribute)).map(_.getStringValue)
|
||||||
if (attr != null) {
|
|
||||||
Some(attr.getStringValue)
|
|
||||||
} else {
|
|
||||||
None
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user