/** * Converts an ldaptive <code>LdapEntry</code> containing result entry attributes into an attribute map as needed * by Person Directory components. * * @param entry Ldap entry. * @return Attribute map. */ private Map<String, List<Object>> convertLdapEntryToMap(final LdapEntry entry) { final Map<String, List<Object>> attributeMap = new LinkedHashMap<>(entry.size()); for (final LdapAttribute attr : entry.getAttributes()) { attributeMap.put(attr.getName(), new ArrayList<Object>(attr.getStringValues())); } logger.debug("Converted ldap DN entry [{}] to attribute map {}", entry.getDn(), attributeMap.toString()); return attributeMap; }
/** * Converts an ldaptive <code>LdapEntry</code> containing result entry attributes into an attribute map as needed * by Person Directory components. * * @param entry Ldap entry. * * @return Attribute map. */ private Map<String, List<Object>> convertLdapEntryToMap(final LdapEntry entry) { final Map<String, List<Object>> attributeMap = new LinkedHashMap<>(entry.size()); for (final LdapAttribute attr : entry.getAttributes()) { attributeMap.put(attr.getName(), new ArrayList<Object>(attr.getStringValues())); } logger.debug("Converted ldap DN entry [{}] to attribute map {}", entry.getDn(), attributeMap.toString()); return attributeMap; }
@Override protected void writeResponse(final SearchResult result, final HttpServletResponse response) throws IOException { final LdapEntry e = result.getEntry(); if (e != null && e.size() > 0) { final LdapAttribute a = e.getAttribute(); if (a != null && a.size() > 0) { if (a.isBinary()) { response.setContentType("application/octet-stream"); response.setHeader("Content-Disposition", String.format("attachment; filename=\"%s.bin\"", a.getName())); } else { response.setContentType("text/plain"); } final OutputStream out = response.getOutputStream(); out.write(a.getBinaryValue()); out.flush(); } } } }
@Override protected void writeResponse(final SearchResult result, final HttpServletResponse response) throws IOException { final LdapEntry e = result.getEntry(); if (e != null && e.size() > 0) { final LdapAttribute a = e.getAttribute(); if (a != null && a.size() > 0) { if (a.isBinary()) { response.setContentType("application/octet-stream"); response.setHeader("Content-Disposition", String.format("attachment; filename=\"%s.bin\"", a.getName())); } else { response.setContentType("text/plain"); } final OutputStream out = response.getOutputStream(); out.write(a.getBinaryValue()); out.flush(); } } } }
@Override protected void writeResponse(final SearchResult result, final HttpServletResponse response) throws IOException { final LdapEntry e = result.getEntry(); if (e != null && e.size() > 0) { final LdapAttribute a = e.getAttribute(); if (a != null && a.size() > 0) { if (a.isBinary()) { response.setContentType("application/octet-stream"); response.setHeader("Content-Disposition", String.format("attachment; filename=\"%s.bin\"", a.getName())); } else { response.setContentType("text/plain"); } final OutputStream out = response.getOutputStream(); out.write(a.getBinaryValue()); out.flush(); } } } }
/** * Tests create with two entries. * * @param attr1 ldap attribute * @param attr2 ldap attribute */ @Test(groups = {"bean"}, dataProvider = "attributes") public void createTwo(final LdapAttribute attr1, final LdapAttribute attr2) { final LdapEntry le = new LdapEntry("uid=1", attr2, attr1); AssertJUnit.assertEquals(attr1, le.getAttribute("givenName")); AssertJUnit.assertEquals(attr2, le.getAttribute("SN")); AssertJUnit.assertEquals(2, le.getAttributeNames().length); AssertJUnit.assertEquals(2, le.size()); AssertJUnit.assertEquals(le, new LdapEntry("uid=1", attr1, attr2)); le.removeAttribute(attr2); AssertJUnit.assertEquals(1, le.size()); le.clear(); AssertJUnit.assertEquals(0, le.size()); }
/** * Tests create with a collection. * * @param attr1 ldap attribute * @param attr2 ldap attribute */ @Test(groups = {"bean"}, dataProvider = "attributes") public void createCollection(final LdapAttribute attr1, final LdapAttribute attr2) { final Set<LdapAttribute> s = new HashSet<>(); s.add(attr1); final LdapEntry le = new LdapEntry("uid=1", s); le.addAttribute(attr2); AssertJUnit.assertEquals(attr1, le.getAttribute("GIVENNAME")); AssertJUnit.assertEquals(attr2, le.getAttribute("sn")); AssertJUnit.assertEquals(2, le.getAttributeNames().length); AssertJUnit.assertEquals(2, le.size()); AssertJUnit.assertEquals(le, new LdapEntry("uid=1", attr1, attr2)); le.removeAttribute("GIVENNAME"); AssertJUnit.assertEquals(1, le.size()); le.clear(); AssertJUnit.assertEquals(0, le.size()); }
/** * Tests ordered sort behavior. * * @param attr1 ldap attribute * @param attr2 ldap attribute */ @Test(groups = {"bean"}, dataProvider = "attributes") public void orderedSortBehavior(final LdapAttribute attr1, final LdapAttribute attr2) { final LdapEntry le = new LdapEntry(SortBehavior.ORDERED); AssertJUnit.assertEquals(SortBehavior.ORDERED, le.getSortBehavior()); le.addAttribute(attr2, attr1); final LdapAttribute[] attrs = le.getAttributes().toArray(new LdapAttribute[2]); AssertJUnit.assertEquals(attr2, attrs[0]); AssertJUnit.assertEquals(attr1, attrs[1]); le.clear(); AssertJUnit.assertEquals(0, le.size()); }
/** * Tests sorted sort behavior. * * @param attr1 ldap attribute * @param attr2 ldap attribute */ @Test(groups = {"bean"}, dataProvider = "attributes") public void sortedSortBehavior(final LdapAttribute attr1, final LdapAttribute attr2) { final LdapEntry le = new LdapEntry(SortBehavior.SORTED); AssertJUnit.assertEquals(SortBehavior.SORTED, le.getSortBehavior()); le.addAttribute(attr2, attr1); final LdapAttribute[] attrs = le.getAttributes().toArray(new LdapAttribute[2]); AssertJUnit.assertEquals(attr1, attrs[0]); AssertJUnit.assertEquals(attr2, attrs[1]); le.clear(); AssertJUnit.assertEquals(0, le.size()); }
/** Tests default sort behavior. */ @Test(groups = {"bean"}) public void defaultSortBehavior() { final LdapEntry le = new LdapEntry("uid=1"); AssertJUnit.assertEquals(SortBehavior.getDefaultSortBehavior(), le.getSortBehavior()); AssertJUnit.assertEquals(0, le.size()); AssertJUnit.assertNull(le.getAttribute()); AssertJUnit.assertEquals("uid=1", le.getDn()); le.setDn("uid=2"); AssertJUnit.assertEquals("uid=2", le.getDn()); le.clear(); AssertJUnit.assertEquals(0, le.size()); }
/** * Tests create with one entry. * * @param attr1 ldap attribute * @param attr2 ldap attribute */ @Test(groups = {"bean"}, dataProvider = "attributes") public void createOne(final LdapAttribute attr1, final LdapAttribute attr2) { final LdapEntry le = new LdapEntry("uid=1", attr1); AssertJUnit.assertEquals(attr1, le.getAttribute()); AssertJUnit.assertEquals(attr1, le.getAttribute("givenName")); AssertJUnit.assertEquals(attr1, le.getAttribute("givenname")); AssertJUnit.assertEquals("givenName", le.getAttributeNames()[0]); AssertJUnit.assertEquals(1, le.size()); AssertJUnit.assertEquals(le, new LdapEntry("uid=1", attr1)); le.clear(); AssertJUnit.assertEquals(0, le.size()); }