@Override
public Map<String, CompanyOrg> findAllNoCache() {
final Map<String, CompanyOrg> companiesNameToDn = new HashMap<>();
for (final DirContextAdapter ldap : template.search(companyBaseDn, "objectClass=" + ORGANIZATIONAL_UNIT,
(Object ctx) -> (DirContextAdapter) ctx)) {
final CompanyOrg company = new CompanyOrg(ldap.getDn().toString(), ldap.getStringAttributes("ou")[0]);
companiesNameToDn.put(company.getId(), company);
}
final CompanyOrg quarantine = new CompanyOrg(quarantineBaseDn, getQuarantineCompany());
quarantine.setLocked(true);
companiesNameToDn.put(quarantine.getId(), quarantine);
companiesNameToDn.values().forEach(this::buildLdapName);
companiesNameToDn.values().forEach(c -> this.buildHierarchy(companiesNameToDn, c));
return companiesNameToDn;
}