You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2024/12/03 15:39:22 UTC

(directory-site) branch master updated: Added the Compare requests

This is an automated email from the ASF dual-hosted git repository.

elecharny pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-site.git


The following commit(s) were added to refs/heads/master by this push:
     new d3389276 Added the Compare requests
d3389276 is described below

commit d33892760a4b32fca158d2e489f34b554c3a5ea0
Author: emmanuel lecharny <el...@apache.org>
AuthorDate: Tue Dec 3 16:39:13 2024 +0100

    Added the Compare requests
---
 .../internal-design-guide/4.2-asn1-ldap-message.md |  36 ++++++++-
 .../images/asn1-compare-request.graphml            |  88 +++++----------------
 .../images/asn1-compare-request.png                | Bin 39382 -> 38316 bytes
 3 files changed, 55 insertions(+), 69 deletions(-)

diff --git a/source/api/internal-design-guide/4.2-asn1-ldap-message.md b/source/api/internal-design-guide/4.2-asn1-ldap-message.md
index 02b773a8..b2cc27f3 100644
--- a/source/api/internal-design-guide/4.2-asn1-ldap-message.md
+++ b/source/api/internal-design-guide/4.2-asn1-ldap-message.md
@@ -26,7 +26,7 @@ navNextText: 5 - Network
      * [ExtendedRequest](#extendedrequest-operation)
      * [ExtendedResponse](#extendedresponse-operation)
      * [IntermediateResponse](#intermediateresponse-operation)
-     * [ModifyRequest](#modifyequest-operation)
+     * [ModifyRequest](#modifyrequest-operation)
      * [ModifyResponse](#modifyresponse-operation)
      * [ModifyDNRequest](#modifydnequest-operation)
      * [ModifyDNResponse](#modifydnresponse-operation)
@@ -593,8 +593,42 @@ In any case, two states are mandatory:
 
 ## CompareRequest operation
 
+The **CompareRequest** message grammar is the following:
+
+```
+CompareRequest ::= [APPLICATION 14] SEQUENCE {
+             entry           OCTET STRING,
+             ava             AttributeValueAssertion }
+
+AttributeValueAssertion ::= SEQUENCE {
+             attributeDesc   OCTET STRING,
+             assertionValue  OCTET STRING }
+```
+
+Its state machine is shown in this picture:
+
+<img src="images/asn1-compare-request.png" alt="CompareRequest state machine" width="100%"/>
+
+For a **CompareRequest**, only one state is mandatory and must be followed by another state:
+
+* _AVA_COMP_STATE_
+
+
 ## CompareResponse operation
 
+The **CompareResponse** message is described by this part of the **LDAP** grammar:
+
+```text
+    CompareResponse ::= [APPLICATION 15] LDAPResult
+```
+
+The associated state machine is shown below:
+
+<img src="images/asn1-compare-response.png" alt="CompareResponse state machine" width="100%"/>
+
+
+There are no mandatory state.
+
 ## DelRequest operation
 
 The **DelRequest** message is described by this part of the **LDAP** grammar:
diff --git a/static/api/internal-design-guide/images/asn1-compare-request.graphml b/static/api/internal-design-guide/images/asn1-compare-request.graphml
index 1a69a06c..69bbf272 100644
--- a/static/api/internal-design-guide/images/asn1-compare-request.graphml
+++ b/static/api/internal-design-guide/images/asn1-compare-request.graphml
@@ -30,12 +30,12 @@
               <y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
             </y:GroupNode>
             <y:GroupNode>
-              <y:Geometry height="163.0" width="1261.3200000000004" x="645.0000000000001" y="340.0"/>
+              <y:Geometry height="166.0" width="1328.3200000000004" x="578.0000000000001" y="340.0"/>
               <y:Fill color="#F5F5F5" transparent="false"/>
               <y:BorderStyle color="#000000" type="dashed" width="1.0"/>
-              <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.666015625" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="1261.3200000000004" x="0.0" xml:space="preserve" y="0.0">CompareRequest</y:NodeLabel>
+              <y:NodeLabel alignment="right" autoSizePolicy="node_width" backgroundColor="#EBEBEB" borderDistance="0.0" fontFamily="Dialog" fontSize="15" fontStyle="plain" hasLineColor="false" height="21.666015625" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="1328.3200000000004" x="0.0" xml:space="preserve" y="0.0">CompareRequest</y:NodeLabel>
               <y:Shape type="roundrectangle"/>
-              <y:State closed="true" closedHeight="163.0" closedWidth="1261.3200000000004" innerGraphDisplayEnabled="false"/>
+              <y:State closed="true" closedHeight="166.0" closedWidth="1328.3200000000004" innerGraphDisplayEnabled="false"/>
               <y:Insets bottom="5" bottomF="5.0" left="5" leftF="5.0" right="5" rightF="5.0" top="5" topF="5.0"/>
               <y:BorderInsets bottom="0" bottomF="0.0" left="0" leftF="0.0" right="0" rightF="0.0" top="0" topF="0.0"/>
             </y:GroupNode>
@@ -47,10 +47,10 @@
     <node id="n1">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.bpmn.Event.withShadow">
-          <y:Geometry height="30.0" width="30.0" x="485.0" y="412.0"/>
+          <y:Geometry height="30.0" width="30.0" x="679.5000000000002" y="229.0"/>
           <y:Fill color="#FFFFFFE6" color2="#D4D4D4CC" transparent="false"/>
           <y:BorderStyle color="#DCBA00" type="line" width="1.0"/>
-          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="161.669921875" x="-174.8349609375" xml:space="preserve" y="7.8671875">COMPARE_REQUEST_STATE<y:LabelModel><y:SmartNodeLabelModel distance="4.0"/></y:LabelModel><y:Mode [...]
+          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="161.669921875" x="-65.8349609375" xml:space="preserve" y="-32.06640625">COMPARE_REQUEST_STATE<y:LabelModel><y:SmartNodeLabelModel distance="4.0"/></y:LabelModel><y:Mo [...]
           <y:StyleProperties>
             <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.line.color" value="#000000"/>
             <y:Property class="com.yworks.yfiles.bpmn.view.EventCharEnum" name="com.yworks.bpmn.characteristic" value="EVENT_CHARACTERISTIC_INTERMEDIATE_CATCHING"/>
@@ -64,7 +64,7 @@
     <node id="n2">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
-          <y:Geometry height="60.0" width="137.0" x="681.0" y="397.0"/>
+          <y:Geometry height="60.0" width="137.0" x="617.0000000000002" y="397.0"/>
           <y:Fill color="#E8EEF7" color2="#B7C9E3" transparent="false"/>
           <y:BorderStyle color="#000000" type="line" width="1.0"/>
           <y:NodeLabel alignment="center" autoSizePolicy="content" backgroundColor="#B7C9E3" configuration="com.yworks.entityRelationship.label.name" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="internal" modelPosition="t" textColor="#000000" verticalTextPosition="bottom" visible="true" width="33.619140625" x="51.6904296875" xml:space="preserve" y="4.0">Entry</y:NodeLabel>
@@ -93,30 +93,6 @@
       </data>
     </node>
     <node id="n4">
-      <data key="d6">
-        <y:GenericNode configuration="com.yworks.bpmn.Event.withShadow">
-          <y:Geometry height="20.0" width="20.0" x="807.0" y="442.0"/>
-          <y:Fill color="#FFFFFFE6" color2="#D4D4D4CC" transparent="false"/>
-          <y:BorderStyle color="#DCBA00" type="line" width="1.0"/>
-          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="4.0" x="8.0" y="24.0">
-            <y:LabelModel>
-              <y:SmartNodeLabelModel distance="4.0"/>
-            </y:LabelModel>
-            <y:ModelParameter>
-              <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="-0.5" nodeRatioX="0.0" nodeRatioY="0.5" offsetX="0.0" offsetY="4.0" upX="0.0" upY="-1.0"/>
-            </y:ModelParameter>
-          </y:NodeLabel>
-          <y:StyleProperties>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.line.color" value="#000000"/>
-            <y:Property class="com.yworks.yfiles.bpmn.view.EventCharEnum" name="com.yworks.bpmn.characteristic" value="EVENT_CHARACTERISTIC_INTERMEDIATE_CATCHING"/>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.fill2" value="#d4d4d4cc"/>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.fill" value="#ffffffe6"/>
-            <y:Property class="com.yworks.yfiles.bpmn.view.BPMNTypeEnum" name="com.yworks.bpmn.type" value="EVENT_TYPE_LINK"/>
-          </y:StyleProperties>
-        </y:GenericNode>
-      </data>
-    </node>
-    <node id="n5">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
           <y:Geometry height="60.0" width="114.0" x="892.5400000000001" y="397.0"/>
@@ -130,13 +106,13 @@
         </y:GenericNode>
       </data>
     </node>
-    <node id="n6">
+    <node id="n5">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.bpmn.Event.withShadow">
-          <y:Geometry height="20.0" width="20.0" x="996.5400000000001" y="442.0"/>
+          <y:Geometry height="20.0" width="20.0" x="882.5400000000001" y="447.0"/>
           <y:Fill color="#FFFFFFE6" color2="#D4D4D4CC" transparent="false"/>
-          <y:BorderStyle color="#DCBA00" type="line" width="1.0"/>
-          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="4.0" x="7.999999999999886" y="24.0">
+          <y:BorderStyle color="#FF0000" type="line" width="1.0"/>
+          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="4.0" x="8.0" y="24.0">
             <y:LabelModel>
               <y:SmartNodeLabelModel distance="4.0"/>
             </y:LabelModel>
@@ -154,7 +130,7 @@
         </y:GenericNode>
       </data>
     </node>
-    <node id="n7">
+    <node id="n6">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
           <y:Geometry height="60.0" width="197.0" x="1126.0800000000002" y="397.0"/>
@@ -168,7 +144,7 @@
         </y:GenericNode>
       </data>
     </node>
-    <node id="n8">
+    <node id="n7">
       <data key="d6">
         <y:GenericNode configuration="com.yworks.entityRelationship.big_entity">
           <y:Geometry height="60.0" width="202.0" x="1442.6200000000003" y="397.0"/>
@@ -182,53 +158,29 @@
         </y:GenericNode>
       </data>
     </node>
-    <node id="n9">
-      <data key="d6">
-        <y:GenericNode configuration="com.yworks.bpmn.Event.withShadow">
-          <y:Geometry height="20.0" width="20.0" x="1259.08" y="442.0"/>
-          <y:Fill color="#FFFFFFE6" color2="#D4D4D4CC" transparent="false"/>
-          <y:BorderStyle color="#DCBA00" type="line" width="1.0"/>
-          <y:NodeLabel alignment="center" autoSizePolicy="content" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" hasText="false" height="4.0" horizontalTextPosition="center" iconTextGap="4" modelName="custom" textColor="#000000" verticalTextPosition="bottom" visible="true" width="4.0" x="8.0" y="24.0">
-            <y:LabelModel>
-              <y:SmartNodeLabelModel distance="4.0"/>
-            </y:LabelModel>
-            <y:ModelParameter>
-              <y:SmartNodeLabelModelParameter labelRatioX="0.0" labelRatioY="-0.5" nodeRatioX="0.0" nodeRatioY="0.5" offsetX="0.0" offsetY="4.0" upX="0.0" upY="-1.0"/>
-            </y:ModelParameter>
-          </y:NodeLabel>
-          <y:StyleProperties>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.line.color" value="#000000"/>
-            <y:Property class="com.yworks.yfiles.bpmn.view.EventCharEnum" name="com.yworks.bpmn.characteristic" value="EVENT_CHARACTERISTIC_INTERMEDIATE_CATCHING"/>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.fill2" value="#d4d4d4cc"/>
-            <y:Property class="java.awt.Color" name="com.yworks.bpmn.icon.fill" value="#ffffffe6"/>
-            <y:Property class="com.yworks.yfiles.bpmn.view.BPMNTypeEnum" name="com.yworks.bpmn.type" value="EVENT_TYPE_LINK"/>
-          </y:StyleProperties>
-        </y:GenericNode>
-      </data>
-    </node>
-    <edge id="e0" source="n2" target="n5">
+    <edge id="e0" source="n2" target="n4">
       <data key="d10">
         <y:PolyLineEdge>
           <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
           <y:LineStyle color="#000000" type="line" width="1.0"/>
           <y:Arrows source="none" target="white_delta"/>
-          <y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="50.716796875" x="11.892070312499982" xml:space="preserve" y="-39.06640625">0x30 LL<y:LabelModel><y:S [...]
+          <y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="50.716796875" x="43.91978027343771" xml:space="preserve" y="-39.06640625">0x30 LL<y:LabelModel><y:Sm [...]
           <y:BendStyle smoothed="false"/>
         </y:PolyLineEdge>
       </data>
     </edge>
-    <edge id="e1" source="n1" target="n0">
+    <edge id="e1" source="n1" target="n2">
       <data key="d10">
         <y:PolyLineEdge>
-          <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
+          <y:Path sx="0.0" sy="0.0" tx="9.0" ty="-11.0"/>
           <y:LineStyle color="#000000" type="line" width="1.0"/>
           <y:Arrows source="none" target="white_delta"/>
-          <y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="93.783203125" x="12.204029370315311" xml:space="preserve" y="-39.486191819211626">0x04 LL abcd...<y: [...]
+          <y:EdgeLabel alignment="center" configuration="AutoFlippingLabel" distance="2.0" fontFamily="Dialog" fontSize="12" fontStyle="plain" hasBackgroundColor="false" hasLineColor="false" height="18.1328125" horizontalTextPosition="center" iconTextGap="4" modelName="custom" preferredPlacement="anywhere" ratio="0.5" textColor="#000000" verticalTextPosition="bottom" visible="true" width="93.783203125" x="23.108398437500227" xml:space="preserve" y="31.215889129700372">0x04 LL abcd...<y:L [...]
           <y:BendStyle smoothed="false"/>
         </y:PolyLineEdge>
       </data>
     </edge>
-    <edge id="e2" source="n5" target="n7">
+    <edge id="e2" source="n4" target="n6">
       <data key="d10">
         <y:PolyLineEdge>
           <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
@@ -239,7 +191,7 @@
         </y:PolyLineEdge>
       </data>
     </edge>
-    <edge id="e3" source="n8" target="n3">
+    <edge id="e3" source="n7" target="n3">
       <data key="d10">
         <y:PolyLineEdge>
           <y:Path sx="0.0" sy="0.0" tx="0.0" ty="0.0"/>
@@ -250,7 +202,7 @@
         </y:PolyLineEdge>
       </data>
     </edge>
-    <edge id="e4" source="n8" target="n7">
+    <edge id="e4" source="n7" target="n6">
       <data key="d10">
         <y:PolyLineEdge>
           <y:Path sx="0.0" sy="0.0" tx="89.36754966887416" ty="0.0"/>
diff --git a/static/api/internal-design-guide/images/asn1-compare-request.png b/static/api/internal-design-guide/images/asn1-compare-request.png
index b5fecc4b..76c2f57f 100644
Binary files a/static/api/internal-design-guide/images/asn1-compare-request.png and b/static/api/internal-design-guide/images/asn1-compare-request.png differ