public LDAPSourceImpl( Logger logger, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_VERSION) int ldapVersion, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_HOSTNAME) String ldapHostName, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_HOSTPORT) int ldapPort, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_AUTHDN) String ldapAuthDN, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_AUTHPWD) String ldapPwd, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_SIZELIMIT) String sizeLimit, @Inject @Symbol(ChenilleKitLDAPConstants.LDAP_TIMELIMIT) String timeLimit) { this.logger = logger; this.ldapVersion = ldapVersion; if (ldapHostName == null || ldapHostName.trim().length() < 1) throw new RuntimeException( "property '" + ChenilleKitLDAPConstants.LDAP_HOSTNAME + "' cant be empty!"); this.ldapHostName = ldapHostName; this.ldapPort = ldapPort; this.ldapAuthDN = ldapAuthDN; this.ldapPwd = ldapPwd; ldapConnection = new LDAPConnection(); try { ldapConnection.setOption(LDAPv2.SIZELIMIT, new Integer(sizeLimit)); ldapConnection.setOption(LDAPv2.TIMELIMIT, new Integer(timeLimit)); } catch (LDAPException le) { logger.error(le.getMessage(), le); throw new RuntimeException(le); } }