Return-Path: Delivered-To: apmail-incubator-directory-cvs-archive@www.apache.org Received: (qmail 13818 invoked from network); 28 May 2004 23:18:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 28 May 2004 23:18:42 -0000 Received: (qmail 59098 invoked by uid 500); 28 May 2004 23:19:09 -0000 Delivered-To: apmail-incubator-directory-cvs-archive@incubator.apache.org Received: (qmail 59047 invoked by uid 500); 28 May 2004 23:19:09 -0000 Mailing-List: contact directory-cvs-help@incubator.apache.org; run by ezmlm Precedence: bulk Reply-To: directory-dev@incubator.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list directory-cvs@incubator.apache.org Received: (qmail 59028 invoked by uid 98); 28 May 2004 23:19:09 -0000 Received: from akarasulu@apache.org by hermes.apache.org by uid 82 with qmail-scanner-1.20 (clamuko: 0.70. Clear:RC:0(209.237.227.194):. Processed in 0.047103 secs); 28 May 2004 23:19:09 -0000 X-Qmail-Scanner-Mail-From: akarasulu@apache.org via hermes.apache.org X-Qmail-Scanner: 1.20 (Clear:RC:0(209.237.227.194):. Processed in 0.047103 secs) Received: from unknown (HELO minotaur.apache.org) (209.237.227.194) by hermes.apache.org with SMTP; 28 May 2004 23:19:08 -0000 Received: (qmail 13805 invoked by uid 65534); 28 May 2004 23:18:41 -0000 Date: 28 May 2004 23:18:41 -0000 Message-ID: <20040528231841.13802.qmail@minotaur.apache.org> From: akarasulu@apache.org To: directory-cvs@incubator.apache.org Subject: svn commit: rev 20557 - in incubator/directory/snickers/trunk: ber-codec/src/java/org/apache/snickers/ber/digester/rules xdocs/ber-codec X-Spam-Rating: hermes.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N Author: akarasulu Date: Fri May 28 16:18:39 2004 New Revision: 20557 Modified: incubator/directory/snickers/trunk/ber-codec/src/java/org/apache/snickers/ber/digester/rules/ObjectCreateRule.java incubator/directory/snickers/trunk/xdocs/ber-codec/BERDigesterDesign.xml Log: some docs were garbage Modified: incubator/directory/snickers/trunk/ber-codec/src/java/org/apache/snickers/ber/digester/rules/ObjectCreateRule.java ============================================================================== --- incubator/directory/snickers/trunk/ber-codec/src/java/org/apache/snickers/ber/digester/rules/ObjectCreateRule.java (original) +++ incubator/directory/snickers/trunk/ber-codec/src/java/org/apache/snickers/ber/digester/rules/ObjectCreateRule.java Fri May 28 16:18:39 2004 @@ -18,6 +18,8 @@ import org.apache.snickers.ber.TypeClass ; +import org.apache.snickers.ber.digester.BERDigester ; +import org.apache.snickers.ber.digester.AbstractRule ; import org.apache.commons.lang.exception.NestableRuntimeException ; Modified: incubator/directory/snickers/trunk/xdocs/ber-codec/BERDigesterDesign.xml ============================================================================== --- incubator/directory/snickers/trunk/xdocs/ber-codec/BERDigesterDesign.xml (original) +++ incubator/directory/snickers/trunk/xdocs/ber-codec/BERDigesterDesign.xml Fri May 28 16:18:39 2004 @@ -232,34 +232,9 @@

Now the question is how do we search with a wildcard in the front or - at the tail end of the pattern. Perhaps the easiest of the two to - handle would be a wildcard in the tail end of the pattern. A search - could be conducted using everything but the wildcard as if it were a - regular search without wildcards. If this lands on a TagNode then - all the rules of that node and that nodes children have matched been - matched by the pattern. The other use case, #1, is not as easy to - implement. For this another special TagTree could be built, however - it would be assembled in reverse order using only the tails of those - patterns starting with a wildcard. If for example *-4-8-9 and - *-6-9-1 patterns are used to register rules r1, and r2 respectively - then the root node would contain two child nodes one for a tag int - equal to 9 and another equal to 1. These two rule pattern would - result in two tree branches. Again when adding new patterns we reuse - what already exists before branching. To search these trees for a - match the reverse nesting pattern is used to walk the tree. Take - for example the pattern 1-8-9. This would start off at the root, - select the child node with a tag int equal to 9, then select the - child under node 9 with a tag int equal to 8. At this point we can - go no further. At this point a check is performed to see if the node - we are stuck at is a leaf node. If it is a leaf node then we have a - match for the rules at that node, if not then no rules were matched. - For 1-8-9 no rules are matched. Now use 1-6-4-8-9 as the nesting - pattern to test. Using the same algorithm we find ourselves stuck - walking the tree at node 4 which is a leaf node. In this case the - rules in node 4 have been matched by the nesting pattern. Keep in - mind that the search against the reverse TagTree is conducted in - addition to the search against the forward TagTree. Its easy to see - that this use case is far more painful to implement. + at the tail end of the pattern. + + THIS STUFF NEEDS TO BE FIGURED OUT!