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/01/22 15:34:44 UTC
svn commit: r937267 - in /websites/staging/directory/trunk/content: ./
apacheds/advanced-ug/1.4-interceptors.html
Author: buildbot
Date: Thu Jan 22 14:34:44 2015
New Revision: 937267
Log:
Staging update by buildbot for directory
Modified:
websites/staging/directory/trunk/content/ (props changed)
websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html
Propchange: websites/staging/directory/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Thu Jan 22 14:34:44 2015
@@ -1 +1 @@
-1653875
+1653877
Modified: websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html
==============================================================================
--- websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html (original)
+++ websites/staging/directory/trunk/content/apacheds/advanced-ug/1.4-interceptors.html Thu Jan 22 14:34:44 2015
@@ -165,6 +165,7 @@
<h1 id="14-interceptors">1.4 - Interceptors</h1>
<p><em>Interceptors</em> are functional layers inside the <em>DirectoryService</em>. Each one of them are responsible for a specific task. They are ordered, and this order is not to be changed.</p>
+<p>Each operation rceived by the <em>DirectoryService</em> will be processed by various interceptors, one after the other, down to the backend, and again when the result comes back to the caller. An <em>interceptor</em> can call the next <em>interceptor</em>, whcih will be determinated by the position it has in the chain of <em>interceptors</em>, or simply return. Note that calling the next <em>interceptor</em> does not require that you know which one will be called.</p>
<p>Some <em>Interceptors</em> can be disabled, some other can be enabled. It's also possible to add some new one.</p>
<p>All in all, they will handle operations from a specific functional aspect.</p>
<h2 id="handled-operations">Handled operations</h2>
@@ -178,19 +179,19 @@
</thead>
<tbody>
<tr>
-<td>Add</td>
+<td>add</td>
<td>Adds an entry in the backend</td>
</tr>
<tr>
-<td>Bind</td>
+<td>bind</td>
<td>Binds on the DirectoryService</td>
</tr>
<tr>
-<td>Compare</td>
+<td>compare</td>
<td>Compares the elements with the associated entry in the backend</td>
</tr>
<tr>
-<td>Delete</td>
+<td>delete</td>
<td>Deletes the entry</td>
</tr>
<tr>
@@ -202,31 +203,31 @@
<td>Tells if an entry exists</td>
</tr>
<tr>
-<td>Lookup</td>
+<td>lookup</td>
<td>Fetches an entry</td>
</tr>
<tr>
-<td>Modify</td>
+<td>modify</td>
<td>Modifies an entry</td>
</tr>
<tr>
-<td>Move</td>
+<td>move</td>
<td>Moves an entry</td>
</tr>
<tr>
-<td>MoveAndRename</td>
+<td>moveAndRename</td>
<td>Moves and renames an entry</td>
</tr>
<tr>
-<td>Rename</td>
+<td>rename</td>
<td>Renames an entry</td>
</tr>
<tr>
-<td>Search</td>
+<td>search</td>
<td>Searches for entries</td>
</tr>
<tr>
-<td>Unbind</td>
+<td>unbind</td>
<td>Unbinds from the DirectoryService</td>
</tr>
</tbody>
@@ -359,6 +360,23 @@ In this table, we list all the operation
<td>-</td>
</tr>
<tr>
+<td>DelayInducingInterceptor</td>
+<td>no</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+</tr>
+<tr>
<td>EventInterceptor</td>
<td>yes</td>
<td>X</td>
@@ -444,6 +462,23 @@ In this table, we list all the operation
<td>-</td>
</tr>
<tr>
+<td>NumberIncrementInterceptor</td>
+<td>yes</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
<td>OperationalAttributeInterceptor</td>
<td>yes</td>
<td>X</td>
@@ -478,6 +513,210 @@ In this table, we list all the operation
<td>-</td>
</tr>
<tr>
+<td>CryptPasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Md5PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Pkcs5s2PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Sha256PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Sha384PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Sha512PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>ShaPasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Smd5PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Ssha256PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Ssha384PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>Ssha512PasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
+<td>SshaPasswordHashingInterceptor</td>
+<td>no</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>X</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr>
<td>ReferralInterceptor</td>
<td>yes</td>
<td>X</td>
@@ -564,6 +803,7 @@ In this table, we list all the operation
</tr>
</tbody>
</table>
+<p>The operations that are available are the operations for which we have some implementation in the interceptor class. For instance, the <em>JournalInterceptor</em> class implement the <em>add</em>, <em>delete</em>, <em>modify</em>, <em>move</em>, <em>moveAndRename</em> and <em>rename</em> methods.</p>
<h2 id="interceptors-order">Interceptors order</h2>
<p>As we already said, the <em>Interceptors</em> order is significant : why would we proceed an <em>Add</em> operation through all the <em>Interceptors</em> if the user is simply denied the right to add an entry by the <em>AciAuthorizationInterceptor</em> ?</p>
<p>Currently, the following order is enforced :</p>