{"id":191,"date":"2015-08-10T18:32:03","date_gmt":"2015-08-10T18:32:03","guid":{"rendered":"http:\/\/ldapcon.org\/2015\/?page_id=191"},"modified":"2015-11-23T18:50:58","modified_gmt":"2015-11-23T18:50:58","slug":"asynchronous-ldap-programming-is-full-of-promises","status":"publish","type":"page","link":"https:\/\/ldapcon.org\/2015\/accepted-papers\/asynchronous-ldap-programming-is-full-of-promises\/","title":{"rendered":"Asynchronous LDAP programming is full of Promises!"},"content":{"rendered":"<h1>Asynchronous LDAP programming is full of Promises!<\/h1>\n<p><em>Ludovic Poitou and Matthew Swift<\/em><\/p>\n<p>ForgeRock<\/p>\n<h2>Abstract<\/h2>\n<p>Doing LDAP client side development is not easy. For years, the client libraries haven\u2019t really evolved and most of developers are stacked with JNDI. In the last few years, there\u2019s been a number of new LDAP development libraries : Apache Directory SDK, UnboundID SDK and OpenDJ SDK, all of them build in Java. The OpenDJ SDK has gone under a massive work recently and is now proposing an API based on the \u201cPromises\u201d pattern. In this presentation, we will explain the concept of Promises and why we choose to use this pattern. We will introduce the OpenDJ SDK and its APIs and then we will go through a number of examples to demonstrate how easy it has become to write asynchronous client applications, with less but more readable code.<\/p>\n<h2>Biography.<\/h2>\n<p>Ludovic Poitou is senior software engineer, currently working for ForgeRock as Director of ForgeRock France, and Product Manager for OpenDJ, the open source LDAP Directory services for the Java platform. Previously, Ludovic was working for Sun Microsystems as the Architect for the Sun Directory Services products and Community Manager for the OpenDS project. Ludovic Poitou has been speaking at various conferences and blogs regularly on the subject of Identity Management, LDAP Directory Services, Java and open source software.<\/p>\n<p>Matthew Swift is Chief Architect at ForgeRock, overseeing the development of several products including OpenDJ, the Open Source LDAP Directory Services in Java, OpenIG, the Open source Identity Gateway. Previously Matthew worked for Sun Microsystem as the Technical Lead for OpenDS, and before at Messaging Direct Ltd (formerly Isode Ltd) where he helped developing products.<\/p>\n<h2>Presentation<\/h2>\n<p><a href=\"http:\/\/ldapcon.org\/2015\/wp-content\/uploads\/2015\/09\/poitou_Promises.pdf\">Asynchronous LDAP programming is full of Promises!<\/a> &#8211; slides<\/p>\n<div id=\"attachment_548\" style=\"width: 213px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/ldapcon.org\/2015\/wp-content\/uploads\/2015\/08\/ps100_02000.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-548\" class=\"size-medium wp-image-548\" src=\"http:\/\/ldapcon.org\/2015\/wp-content\/uploads\/2015\/08\/ps100_02000-203x300.jpg\" alt=\"Matthew Swift and Ludovic Poitou\" width=\"203\" height=\"300\" srcset=\"https:\/\/ldapcon.org\/2015\/wp-content\/uploads\/2015\/08\/ps100_02000-203x300.jpg 203w, https:\/\/ldapcon.org\/2015\/wp-content\/uploads\/2015\/08\/ps100_02000.jpg 446w\" sizes=\"auto, (max-width: 203px) 100vw, 203px\" \/><\/a><p id=\"caption-attachment-548\" class=\"wp-caption-text\">Matthew Swift and Ludovic Poitou<\/p><\/div>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Asynchronous LDAP programming is full of Promises! Ludovic Poitou and Matthew Swift ForgeRock Abstract Doing LDAP client side development is not easy. For years, the client libraries haven\u2019t really evolved and most of developers are stacked with JNDI. In the&#8230; <a class=\"read-more-button\" href=\"https:\/\/ldapcon.org\/2015\/accepted-papers\/asynchronous-ldap-programming-is-full-of-promises\/\">(READ MORE)<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":76,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-without-title.php","meta":{"footnotes":""},"class_list":["post-191","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/pages\/191","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/comments?post=191"}],"version-history":[{"count":4,"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/pages\/191\/revisions"}],"predecessor-version":[{"id":549,"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/pages\/191\/revisions\/549"}],"up":[{"embeddable":true,"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/pages\/76"}],"wp:attachment":[{"href":"https:\/\/ldapcon.org\/2015\/wp-json\/wp\/v2\/media?parent=191"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}