標籤:cep acm apache setfilter connected 請求 try connect UI
Apache DS管理的JAVA實現
LdapConnection connection = new LdapNetworkConnection("localhost", 10389);
//檢測串連狀態 @Test public void testSimpleBindRequest() throws LdapException { connection.bind("uid=admin,ou=system", "secret"); connection.unBind(); Assert.assertFalse(connection.isConnected()); Assert.assertFalse(connection.isAuthenticated()); } //簡單的查詢 @Test public void testSimplesearch() throws LdapException, CursorException,IOException { connection.bind("uid=admin,ou=system", "secret"); EntryCursor cursor = connection.search("ou=system", "(objectclass=*)",SearchScope.ONELEVEL); while (cursor.next()) { Entry entry = cursor.get(); Assert.assertNotNull(entry); System.out.println(entry); } cursor.close(); connection.close(); } //帶有約束條件的查詢 @Test public void testComplexSearches() throws LdapException, CursorException,IOException { connection.bind("uid=admin,ou=system", "secret"); SearchRequest req = new SearchRequestImpl(); req.setScope(SearchScope.SUBTREE); req.addAttributes("*"); req.setTimeLimit(0); req.setBase(new Dn("ou=system")); req.setFilter("(ou=consumers)"); SearchCursor searchCursor = connection.search(req); while (searchCursor.next()) { Response response = searchCursor.get(); if (response instanceof SearchResultEntry) { Entry resultEntry = ((SearchResultEntry) response).getEntry(); Assert.assertNotNull(resultEntry); System.out.println(resultEntry); } } searchCursor.close(); connection.close(); } //添加條目 @Test public void testAddLdif() throws LdapException, IOException { connection.bind("uid=admin,ou=system", "secret"); connection.add(new DefaultEntry("cn=testadd,ou=system","ObjectClass:top", "ObjectClass:person", "cn:testadd_cn","sn:testadd_sn")); connection.close(); } //以請求的方式添加條目 @Test public void testAddWithControl() throws LdapException, IOException { connection.bind("uid=admin,ou=system", "secret"); Entry entry = new DefaultEntry("cn=testadd2,ou=system","ObjectClass:top", "ObjectClass:person", "sn:testadd_sn"); AddRequest addRequest = new AddRequestImpl(); addRequest.setEntry(entry); addRequest.addControl(new ManageDsaITImpl()); AddResponse response = connection.add(addRequest); Assert.assertNotNull(response); Assert.assertEquals(ResultCodeEnum.SUCCESS, response.getLdapResult().getResultCode()); connection.close(); } //刪除條目 @Test public void testDeleteLeafNode() throws LdapException, IOException { connection.bind("uid=admin,ou=system", "secret"); connection.delete("cn=testadd,ou=system"); connection.close(); } //刪除條目 @Test public void testModify() throws LdapException, IOException { connection.bind("uid=admin,ou=system", "secret"); Modification addedGivenName = new DefaultModification(ModificationOperation.ADD_ATTRIBUTE, "givenName"); connection.modify("uid=Doe,dc=acme,dc=com",addedGivenName); connection.close(); }
apacheds的用戶端