Author: kwright
Date: Mon Feb 27 23:22:17 2017
New Revision: 1784668
URL: http://svn.apache.org/viewvc?rev=1784668&view=rev
Log:
Fix for CONNECTORS-1390.
Modified:
manifoldcf/trunk/CHANGES.txt
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryAuthority.java
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryConfig.java
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_en_US.properties
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_es_ES.properties
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_ja_JP.properties
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_zh_CN.properties
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration.js
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration_DomainController.html
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/viewConfiguration.html
Modified: manifoldcf/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/CHANGES.txt?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
--- manifoldcf/trunk/CHANGES.txt (original)
+++ manifoldcf/trunk/CHANGES.txt Mon Feb 27 23:22:17 2017
@@ -3,6 +3,10 @@ $Id$
======================= 2.7-dev =====================
+CONNECTORS-1390: Add user-settable connect timeout field for
+Active Directory authority.
+(Cihad Guzel, Karl Wright)
+
CONNECTORS-1389: The email notification connector now supports
multiple comma separated recipients
(Markus Schuch)
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryAuthority.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryAuthority.java?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryAuthority.java
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryAuthority.java
Mon Feb 27 23:22:17 2017
@@ -19,7 +19,6 @@
package org.apache.manifoldcf.authorities.authorities.activedirectory;
import org.apache.manifoldcf.core.interfaces.*;
-import org.apache.manifoldcf.agents.interfaces.*;
import org.apache.manifoldcf.authorities.interfaces.*;
import org.apache.manifoldcf.authorities.system.Logging;
import org.apache.manifoldcf.authorities.system.ManifoldCF;
@@ -52,6 +51,7 @@ public class ActiveDirectoryAuthority ex
private String cacheLRUsize = null;
private long responseLifetime = 60000L;
private int LRUsize = 1000;
+ private String ldapConnectionTimeout = null;
/** Session information for all DC's we talk with. */
private Map<String,DCSessionInfo> sessionInfo = null;
@@ -136,7 +136,10 @@ public class ActiveDirectoryAuthority ex
}
}
}
-
+
+ ldapConnectionTimeout =
params.getParameter(ActiveDirectoryConfig.PARAM_LDAPCONNECTIONTIMEOUT);
+ if (ldapConnectionTimeout == null)
+ ldapConnectionTimeout = "60000";
cacheLifetime =
params.getParameter(ActiveDirectoryConfig.PARAM_CACHELIFETIME);
if (cacheLifetime == null)
cacheLifetime = "1";
@@ -197,7 +200,7 @@ public class ActiveDirectoryAuthority ex
session = new DCSessionInfo();
sessionInfo.put(domainController,session);
}
- return session.getSession(domainController,parms);
+ return session.getSession(domainController,parms,ldapConnectionTimeout);
}
/** Poll. The connection should be closed if it has been idle for too long.
@@ -246,6 +249,7 @@ public class ActiveDirectoryAuthority ex
cacheLifetime = null;
cacheLRUsize = null;
+ ldapConnectionTimeout = null;
super.disconnect();
}
@@ -364,7 +368,7 @@ public class ActiveDirectoryAuthority ex
try
{
// Establish a session with the selected domain controller
- LdapContext ctx = createDCSession(domainController);
+ LdapContext ctx = createDCSession(domainController);
//Get DistinguishedName (for this method we are using DomainPart as a
searchBase ie: DC=qa-ad-76,DC=metacarta,DC=com")
String searchBase = getDistinguishedName(ctx, userPart,
domainsb.toString(), userACLsUsername);
@@ -544,6 +548,10 @@ public class ActiveDirectoryAuthority ex
}
}
velocityContext.put("DOMAINCONTROLLERS",domainControllers);
+ String ldapConnectionTimeout =
parameters.getParameter(ActiveDirectoryConfig.PARAM_LDAPCONNECTIONTIMEOUT);
+ if (ldapConnectionTimeout == null)
+ ldapConnectionTimeout = "60000";
+ velocityContext.put("LDAPCONNECTIONTIMEOUT", ldapConnectionTimeout);
}
protected static Map<String,String>
createDomainControllerMap(IPasswordMapperActivity mapper, String suffix, String
domainControllerName,
@@ -576,7 +584,7 @@ public class ActiveDirectoryAuthority ex
cacheLRUsize = "1000";
velocityContext.put("CACHELRUSIZE",cacheLRUsize);
}
-
+
/** Process a configuration post.
* This method is called at the start of the authority connector's
configuration page, whenever there is a possibility that form data for a
connection has been
* posted. Its purpose is to gather form information and modify the
configuration parameters accordingly.
@@ -656,7 +664,9 @@ public class ActiveDirectoryAuthority ex
variableContext.getParameter("dcrecord_userACLsUsername"));
}
}
-
+ String ldapConnectionTimeout =
variableContext.getParameter("ldapconnectiontimeout");
+ if (ldapConnectionTimeout != null)
+
parameters.setParameter(ActiveDirectoryConfig.PARAM_LDAPCONNECTIONTIMEOUT,ldapConnectionTimeout);
String cacheLifetime = variableContext.getParameter("cachelifetime");
if (cacheLifetime != null)
parameters.setParameter(ActiveDirectoryConfig.PARAM_CACHELIFETIME,cacheLifetime);
@@ -833,7 +843,7 @@ public class ActiveDirectoryAuthority ex
}
/** Initialize the session. */
- public LdapContext getSession(String domainControllerName,
DCConnectionParameters params)
+ public LdapContext getSession(String domainControllerName,
DCConnectionParameters params, String ldapConnectionTimeout)
throws ManifoldCFException
{
String authentication = params.getAuthentication();
@@ -858,7 +868,9 @@ public class ActiveDirectoryAuthority ex
//specify attributes to be returned in binary format
env.put("java.naming.ldap.attributes.binary","tokenGroups
objectSid");
-
+
+ env.put("com.sun.jndi.ldap.connect.timeout", ldapConnectionTimeout);
+
// Now, try the connection...
try
{
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryConfig.java
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryConfig.java?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryConfig.java
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/java/org/apache/manifoldcf/authorities/authorities/activedirectory/ActiveDirectoryConfig.java
Mon Feb 27 23:22:17 2017
@@ -41,6 +41,8 @@ public class ActiveDirectoryConfig
public static final String PARAM_CACHELIFETIME = "Cache lifetime";
/** Cache LRU size */
public static final String PARAM_CACHELRUSIZE = "Cache LRU size";
+ /** LDAP connection timeout*/
+ public static final String PARAM_LDAPCONNECTIONTIMEOUT = "LDAP connection
timeout";
/** Domain controller node */
public static final String NODE_DOMAINCONTROLLER = "domaincontroller";
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_en_US.properties
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_en_US.properties?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_en_US.properties
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_en_US.properties
Mon Feb 27 23:22:17 2017
@@ -40,6 +40,9 @@ ActiveDirectoryAuthority.CacheLifetimeMu
ActiveDirectoryAuthority.CacheLRUSizeCannotBeNull=Cache LRU size cannot be null
ActiveDirectoryAuthority.CacheLRUSizeMustBeAnInteger=Cache LRU size must be an
integer
ActiveDirectoryAuthority.certificate=certificate(s)
+ActiveDirectoryAuthority.ConnectionTimeout=Connection timeout:
+ActiveDirectoryAuthority.ConnectionTimeoutMustBeAnInteger=Connection timeout
value must be an integer
+ActiveDirectoryAuthority.milliseconds=milliseconds
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_es_ES.properties
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_es_ES.properties?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_es_ES.properties
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_es_ES.properties
Mon Feb 27 23:22:17 2017
@@ -14,19 +14,19 @@
# limitations under the License.
ActiveDirectoryAuthority.DomainController=Controlador de Dominio
-ActiveDirectoryAuthority.Cache=Caché
+ActiveDirectoryAuthority.Cache=Caché
ActiveDirectoryAuthority.DomainControllers=Controlador de Dominio:
ActiveDirectoryAuthority.DomainControllerName=Nombre del Controlador de Dominio
ActiveDirectoryAuthority.DomainSuffix=Sufijo de Dominio
ActiveDirectoryAuthority.AdministrativeUserName=Nombre de Usuario
Administrativo
-ActiveDirectoryAuthority.AdministrativePassword=Contraseña Administrativa
-ActiveDirectoryAuthority.Authentication=Autenticación
-ActiveDirectoryAuthority.LoginNameADAttribute=Atributo AD Iniciar sesión Nombre
-ActiveDirectoryAuthority.CacheLifetime=Vida útil de la caché:
-ActiveDirectoryAuthority.CacheLRUSize=Tamaño de caché LRU:
+ActiveDirectoryAuthority.AdministrativePassword=Contraseña Administrativa
+ActiveDirectoryAuthority.Authentication=Autenticación
+ActiveDirectoryAuthority.LoginNameADAttribute=Atributo AD Iniciar sesión
Nombre
+ActiveDirectoryAuthority.CacheLifetime=Vida útil de la caché:
+ActiveDirectoryAuthority.CacheLRUSize=Tamaño de caché LRU:
ActiveDirectoryAuthority.minutes=minutos
-ActiveDirectoryAuthority.AddToEnd=Añadir a Terminar
-ActiveDirectoryAuthority.AddRuleToEnd=Añadir regla a final de la lista
+ActiveDirectoryAuthority.AddToEnd=Añadir a Terminar
+ActiveDirectoryAuthority.AddRuleToEnd=Añadir regla a final de la lista
ActiveDirectoryAuthority.Delete=Borrar
ActiveDirectoryAuthority.DeleteRuleNumber=Eliminar regla #
ActiveDirectoryAuthority.InsertBefore=Insertar antes
@@ -34,12 +34,15 @@ ActiveDirectoryAuthority.InsertBeforeRul
ActiveDirectoryAuthority.EnterADomainControllerServerName=Introduzca un nombre
de servidor de controlador de dominio
ActiveDirectoryAuthority.Domain Controller2=Controlador de Dominio
ActiveDirectoryAuthority.AdministrativeUserNameCannotBeNull=Nombre de usuario
administrativo no puede ser nulo
-ActiveDirectoryAuthority.AuthenticationCannotBeNull=Autenticación no puede ser
nulo
-ActiveDirectoryAuthority.CacheLifetimeCannotBeNull=Vida útil de la caché no
puede ser nulo
-ActiveDirectoryAuthority.CacheLifetimeMustBeAnInteger=Vida útil de la caché
debe ser un entero
-ActiveDirectoryAuthority.CacheLRUSizeCannotBeNull=Tamaño de caché LRU no puede
ser nulo
-ActiveDirectoryAuthority.CacheLRUSizeMustBeAnInteger=Tamaño de caché LRU debe
ser un entero
+ActiveDirectoryAuthority.AuthenticationCannotBeNull=Autenticación no puede
ser nulo
+ActiveDirectoryAuthority.CacheLifetimeCannotBeNull=Vida útil de la caché no
puede ser nulo
+ActiveDirectoryAuthority.CacheLifetimeMustBeAnInteger=Vida útil de la caché
debe ser un entero
+ActiveDirectoryAuthority.CacheLRUSizeCannotBeNull=Tamaño de caché LRU no
puede ser nulo
+ActiveDirectoryAuthority.CacheLRUSizeMustBeAnInteger=Tamaño de caché LRU
debe ser un entero
ActiveDirectoryAuthority.certificate=certificado(s)
+ActiveDirectoryAuthority.ConnectionTimeout=Connection timeout:
+ActiveDirectoryAuthority.ConnectionTimeoutMustBeAnInteger=Connection timeout
value must be an integer
+ActiveDirectoryAuthority.milliseconds=milliseconds
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_ja_JP.properties
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_ja_JP.properties?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_ja_JP.properties
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_ja_JP.properties
Mon Feb 27 23:22:17 2017
@@ -40,3 +40,6 @@ ActiveDirectoryAuthority.CacheLifetimeMu
ActiveDirectoryAuthority.CacheLRUSizeCannotBeNull=ãã£ãã·ã¥LRUãµã¤ãºãå
¥åãã¦ãã ãã
ActiveDirectoryAuthority.CacheLRUSizeMustBeAnInteger=ãã£ãã·ã¥LRUãµã¤ãºã«ã¯æ´æ°ãå
¥åãã¦ãã ãã
ActiveDirectoryAuthority.certificate=è¨¼ææ¸
+ActiveDirectoryAuthority.ConnectionTimeout=Connection timeout:
+ActiveDirectoryAuthority.ConnectionTimeoutMustBeAnInteger=Connection timeout
value must be an integer
+ActiveDirectoryAuthority.milliseconds=milliseconds
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_zh_CN.properties
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_zh_CN.properties?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_zh_CN.properties
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/native2ascii/org/apache/manifoldcf/authorities/authorities/activedirectory/common_zh_CN.properties
Mon Feb 27 23:22:17 2017
@@ -40,3 +40,6 @@ ActiveDirectoryAuthority.CacheLifetimeMu
ActiveDirectoryAuthority.CacheLRUSizeCannotBeNull=请è¾å
¥ç¼åLRU大å°
ActiveDirectoryAuthority.CacheLRUSizeMustBeAnInteger=ç¼åLRU大å°å¿
é¡»ä¸ºæ´æ°
ActiveDirectoryAuthority.certificate=è¯ä¹¦
+ActiveDirectoryAuthority.ConnectionTimeout=Connection timeout:
+ActiveDirectoryAuthority.ConnectionTimeoutMustBeAnInteger=Connection timeout
value must be an integer
+ActiveDirectoryAuthority.milliseconds=milliseconds
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration.js
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration.js?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration.js
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration.js
Mon Feb 27 23:22:17 2017
@@ -72,6 +72,13 @@ function checkConfigForSave()
editconnection.cachelrusize.focus();
return false;
}
+ if (editconnection.ldapconnectiontimeout.value != "" &&
!isInteger(editconnection.ldapconnectiontimeout.value))
+ {
+
alert("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('ActiveDirectoryAuthority.ConnectionTimeoutMustBeAnInteger'))");
+
SelectTab("$Encoder.bodyJavascriptEscape($ResourceBundle.getString('ActiveDirectoryAuthority.DomainController'))");
+ editconnection.ldapconnectiontimeout.focus();
+ return false;
+ }
return true;
}
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration_DomainController.html
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration_DomainController.html?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration_DomainController.html
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/editConfiguration_DomainController.html
Mon Feb 27 23:22:17 2017
@@ -110,6 +110,11 @@
</table>
</td>
</tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
+ <td
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.ConnectionTimeout'))</nobr></td>
+ <td class="value"><input type="text" size="5" name="ldapconnectiontimeout"
value="$Encoder.attributeEscape($LDAPCONNECTIONTIMEOUT)"/>
$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.miliseconds'))</td>
+ </tr>
</table>
#else
@@ -128,5 +133,6 @@
#end
<input type="hidden" name="dcrecord_count" value="$dccounter"/>
+<input type="hidden" name="ldapconnectiontimeout"
value="$LDAPCONNECTIONTIMEOUT"/>
#end
Modified:
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/viewConfiguration.html
URL:
http://svn.apache.org/viewvc/manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/viewConfiguration.html?rev=1784668&r1=1784667&r2=1784668&view=diff
==============================================================================
---
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/viewConfiguration.html
(original)
+++
manifoldcf/trunk/connectors/activedirectory/connector/src/main/resources/org/apache/manifoldcf/authorities/authorities/activedirectory/viewConfiguration.html
Mon Feb 27 23:22:17 2017
@@ -49,6 +49,11 @@
</tr>
<tr><td class="separator" colspan="2"><hr/></td></tr>
<tr>
+ <td
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.ConnectionTimeout'))</nobr></td>
+ <td class="value"><nobr>$Encoder.bodyEscape($LDAPCONNECTIONTIMEOUT)
$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.milliseconds'))</nobr></td>
+ </tr>
+ <tr><td class="separator" colspan="2"><hr/></td></tr>
+ <tr>
<td
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.CacheLifetime'))</nobr></td>
<td class="value"><nobr>$Encoder.bodyEscape($CACHELIFETIME)</nobr>
$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.minutes'))</td>
</tr>
@@ -56,4 +61,4 @@
<td
class="description"><nobr>$Encoder.bodyEscape($ResourceBundle.getString('ActiveDirectoryAuthority.CacheLRUSize'))</nobr></td>
<td class="value"><nobr>$Encoder.bodyEscape($CACHELRUSIZE)</nobr></td>
</tr>
-</table>
+</table>
\ No newline at end of file