protected List<String> getUserDns(String username) {
		if (userDnFormat == null) {
			return Collections.emptyList();
		}

		List<String> userDns = new ArrayList<>(userDnFormat.length);
		String[] args = new String[] { LdapEncoder.nameEncode(username) };

		synchronized (userDnFormat) {
			for (MessageFormat formatter : userDnFormat) {
				userDns.add(formatter.format(args));
			}
		}

		return userDns;
	}