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">&quot;ou=muppets,dc=muppets,dc=org&quot;</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">&quot;mail&quot;</span><span class="o">,</span> <span class="s">&quot;kermitthefrog@muppets.org&quot;</span> <span class="o">),</span> 
+        <span class="n">equal</span><span class="o">(</span> <span class="s">&quot;mail&quot;</span><span class="o">,</span> <span class="s">&quot;misspiggy@muppets.org&quot;</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&gt;=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>