You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by bu...@apache.org on 2015/02/14 18:39:54 UTC
svn commit: r940166 - in /websites/staging/directory/trunk/content: ./
api/user-guide/2.10-ldap-connection-template.html
api/user-guide/2.11-filter-builder.html
Author: buildbot
Date: Sat Feb 14 17:39:53 2015
New Revision: 940166
Log:
Staging update by buildbot for directory
Modified:
websites/staging/directory/trunk/content/ (props changed)
websites/staging/directory/trunk/content/api/user-guide/2.10-ldap-connection-template.html
websites/staging/directory/trunk/content/api/user-guide/2.11-filter-builder.html
Propchange: websites/staging/directory/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Feb 14 17:39:53 2015
@@ -1 +1 @@
-1658944
+1659822
Modified: websites/staging/directory/trunk/content/api/user-guide/2.10-ldap-connection-template.html
==============================================================================
--- websites/staging/directory/trunk/content/api/user-guide/2.10-ldap-connection-template.html (original)
+++ websites/staging/directory/trunk/content/api/user-guide/2.10-ldap-connection-template.html Sat Feb 14 17:39:53 2015
@@ -335,6 +335,23 @@
</pre></div>
+<p>It is also natural to pair the search function with the FilterBuilder:</p>
+<div class="codehilite"><pre><span class="kn">import</span> <span class="nn">static</span> <span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">directory</span><span class="o">.</span><span class="na">ldap</span><span class="o">.</span><span class="na">client</span><span class="o">.</span><span class="na">api</span><span class="o">.</span><span class="na">search</span><span class="o">.</span><span class="na">FilterBuilder</span><span class="o">.</span><span class="na">equal</span><span class="o">;</span>
+<span class="kn">import</span> <span class="nn">static</span> <span class="n">org</span><span class="o">.</span><span class="na">apache</span><span class="o">.</span><span class="na">directory</span><span class="o">.</span><span class="na">ldap</span><span class="o">.</span><span class="na">client</span><span class="o">.</span><span class="na">api</span><span class="o">.</span><span class="na">search</span><span class="o">.</span><span class="na">FilterBuilder</span><span class="o">.</span><span class="na">or</span><span class="o">;</span>
+
+<span class="o">...</span>
+
+ <span class="n">Muppet</span> <span class="n">kermit</span> <span class="o">=</span> <span class="n">ldapConnectionTemplate</span><span class="o">.</span><span class="na">search</span><span class="o">(</span>
+ <span class="s">"ou=muppets,dc=muppets,dc=org"</span><span class="o">,</span>
+ <span class="n">or</span><span class="o">(</span>
+ <span class="n">equal</span><span class="o">(</span> <span class="s">"mail"</span><span class="o">,</span> <span class="s">"kermitthefrog@muppets.org"</span> <span class="o">),</span>
+ <span class="n">equal</span><span class="o">(</span> <span class="s">"mail"</span><span class="o">,</span> <span class="s">"misspiggy@muppets.org"</span> <span class="o">)</span> <span class="o">),</span>
+ <span class="n">SearchScope</span><span class="o">.</span><span class="na">ONELEVEL</span><span class="o">,</span>
+ <span class="n">muppetEntryMapper</span> <span class="o">);</span>
+</pre></div>
+
+
+<p>This has the added benefit of ensuring that your search filter has been property encoded per <a href="https://tools.ietf.org/html/rfc4515.html#section-3">RFC4515 section 3</a>.</p>
<h2 id="providing-simplified-password-policy-aware-authenticationpassword-modification-methods">Providing Simplified, Password Policy Aware, Authentication/Password Modification Methods</h2>
<p>One of the most common uses of LDAP is as an identity provider. As such, the most common operation is authentication, and password management. If your LDAP server supports the <a href="http://tools.ietf.org/html/draft-behera-ldap-password-policy-10">password policy control</a> then the authenticate method is very handy:</p>
<div class="codehilite"><pre><span class="c1">// throws PasswordException if authentication fails</span>
Modified: websites/staging/directory/trunk/content/api/user-guide/2.11-filter-builder.html
==============================================================================
--- websites/staging/directory/trunk/content/api/user-guide/2.11-filter-builder.html (original)
+++ websites/staging/directory/trunk/content/api/user-guide/2.11-filter-builder.html Sat Feb 14 17:39:53 2015
@@ -174,7 +174,7 @@
<h1 id="211-the-filterbuildere">2.11 - The FilterBuilder(e)</h1>
-<p>This class is a builder for constructing well formed search filters according to RFC 1960. This builder is most convenient when you use static imports. For example:</p>
+<p>This class is a builder for constructing well formed search filters according to <a href="https://tools.ietf.org/html/rfc4515.html">RFC 4515</a>. This builder is most convenient when you use static imports. For example:</p>
<div class="codehilite"><pre> <span class="n">import</span> <span class="n">static</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">directory</span><span class="p">.</span><span class="n">ldap</span><span class="p">.</span><span class="n">client</span><span class="p">.</span><span class="n">api</span><span class="p">.</span><span class="n">search</span><span class="p">.</span><span class="n">FilterBuilder</span><span class="p">.</span><span class="n">and</span><span class="p">;</span>
<span class="n">import</span> <span class="n">static</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">directory</span><span class="p">.</span><span class="n">ldap</span><span class="p">.</span><span class="n">client</span><span class="p">.</span><span class="n">api</span><span class="p">.</span><span class="n">search</span><span class="p">.</span><span class="n">FilterBuilder</span><span class="p">.</span><span class="n">equal</span><span class="p">;</span>
<span class="n">import</span> <span class="n">static</span> <span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">directory</span><span class="p">.</span><span class="n">ldap</span><span class="p">.</span><span class="n">client</span><span class="p">.</span><span class="n">api</span><span class="p">.</span><span class="n">search</span><span class="p">.</span><span class="n">FilterBuilder</span><span class="p">.</span><span class="n">or</span><span class="p">;</span>
@@ -231,7 +231,7 @@
<p>would result in the string: <em>(cn>=Kermit The Frog)</em></p>
-<p>Which would match entries with the common name Kermit The Frog.</p>
+<p>Which would match entries with the common name Kermit The Frog. Be careful when using the equal filter as it is an <em>EXACT MATCH</em> filter. While it may seem natural to use * as a wildcard, it will actually be escaped using this filter. If you meant to use a wildcard in your filter, you should use one of <a href="#startswith-filter">startsWith</a>, <a href="#endswith-filter">endsWith</a>, <a href="#contains-filter">contains</a>, or <a href="#substring-filter">substring</a>, .</p>
<h2 id="extensible-filter">Extensible Filter</h2>
<p>Returns a new FilterBuilder for testing equality using specified matching rules.
For example:</p>