/** Search criteria based on sn(surname) */ private void searchUsingSubTree() { System.out.println("Inside searchUsingSubTree"); DirContext ctx = LDAPConstants.getLdapContext(); String baseDN = "OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; SearchControls sc = new SearchControls(); String[] attributeFilter = {"cn", "givenName"}; sc.setReturningAttributes(attributeFilter); sc.setSearchScope(SearchControls.SUBTREE_SCOPE); String filter = "sn=X*"; // String filter = "(&(sn=R*)(givenName=Sinduja))"; //Examples for search Filters // String filter = "(|(sn=R*)(givenName=Sinduja))"; NamingEnumeration results = null; try { results = ctx.search(baseDN, filter, sc); while (results.hasMore()) { SearchResult sr = (SearchResult) results.next(); Attributes attrs = sr.getAttributes(); Attribute attr = attrs.get("cn"); System.out.print("cn : " + attr.get() + "\n"); attr = attrs.get("givenName"); System.out.print("givenName: " + attr.get() + "\n"); ctx.close(); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private void searchUsingObject() { System.out.println("Inside searchUsingObject"); DirContext ctx = LDAPConstants.getLdapContext(); // String baseDN = "CN=sindujar,OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; //To serach // for a particular user String baseDN = "OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; SearchControls sc = new SearchControls(); sc.setSearchScope(SearchControls.SUBTREE_SCOPE); String filter = "objectclass=*"; // String filter = "(&(sn=R*)(givenName=Sinduja))"; //Examples for search Filters // String filter = "(|(sn=R*)(givenName=Sinduja))"; NamingEnumeration results = null; try { results = ctx.search(baseDN, filter, sc); while (results.hasMore()) { SearchResult sr = (SearchResult) results.next(); System.out.println(sr.toString() + "\n"); ctx.close(); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private void dirContextmethods() { System.out.println("Inside dirContextmethods"); DirContext ctx = LDAPConstants.getLdapContext(); String baseDN = "OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; DirContext schemaname; try { schemaname = ctx.getSchema(baseDN); System.out.println("schemaname-" + schemaname.toString()); } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private void getAllAttributes() { System.out.println("Inside getAllAttributes"); Attributes attrs = null; try { DirContext ctx = LDAPConstants.getLdapContext(); attrs = ctx.getAttributes(""); NamingEnumeration enm = attrs.getAll(); while (enm.hasMore()) { System.out.println(enm.next()); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private void searchUsingAttributes() { System.out.println("Inside searchAttributes"); DirContext ctx = LDAPConstants.getLdapContext(); String baseDN = "OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; String[] attrToreturn = {"cn", "givenName"}; NamingEnumeration results = null; try { Attributes attr = new BasicAttributes(true); attr.put(new BasicAttribute("sn", "R")); attr.put(new BasicAttribute("givenName", "sinduja")); results = ctx.search(baseDN, attr, attrToreturn); while (results.hasMore()) { SearchResult sr = (SearchResult) results.next(); System.out.println("Attributes--" + sr.getAttributes()); ctx.close(); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
private void searchLastUpdated() { System.out.println("Inside searchLastUpdated"); DirContext ctx = LDAPConstants.getLdapContext(); String baseDN = "OU=Staff,OU=Accounts,O=ibo,DC=adld,DC=ibo,DC=org"; SearchControls sc = new SearchControls(); sc.setSearchScope(SearchControls.SUBTREE_SCOPE); String filter = "(&(uSNChanged<=129644244000000000)(sn=R*))"; NamingEnumeration results = null; try { results = ctx.search(baseDN, filter, sc); while (results.hasMore()) { SearchResult sr = (SearchResult) results.next(); System.out.println(sr.toString() + "\n"); ctx.close(); } } catch (NamingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }