From dev-return-12161-apmail-directory-dev-archive=directory.apache.org@directory.apache.org Tue Jun 06 13:27:15 2006 Return-Path: Delivered-To: apmail-directory-dev-archive@www.apache.org Received: (qmail 79614 invoked from network); 6 Jun 2006 13:27:15 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 6 Jun 2006 13:27:15 -0000 Received: (qmail 31288 invoked by uid 500); 6 Jun 2006 13:27:14 -0000 Delivered-To: apmail-directory-dev-archive@directory.apache.org Received: (qmail 31226 invoked by uid 500); 6 Jun 2006 13:27:14 -0000 Mailing-List: contact dev-help@directory.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "Apache Directory Developers List" Delivered-To: mailing list dev@directory.apache.org Received: (qmail 31215 invoked by uid 99); 6 Jun 2006 13:27:13 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jun 2006 06:27:13 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of ersin.er@gmail.com designates 66.249.92.174 as permitted sender) Received: from [66.249.92.174] (HELO ug-out-1314.google.com) (66.249.92.174) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jun 2006 06:27:12 -0700 Received: by ug-out-1314.google.com with SMTP id a2so1698129ugf for ; Tue, 06 Jun 2006 06:26:50 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:user-agent:mime-version:to:subject:content-type:content-transfer-encoding; b=HVERQqPqYifw8aPTI2D1DoqFqy6Uv7ZNV9PSN1hGE+uyE86rxfbimbl0Gog9scqoVlOrPmq9K6pzVPm/qpkNLzeNK+FXHw4FUvvFT7s1yIKY1peeEI/sH0WLXyCvCpI1djBx46bapS751D7UVzZ2V38wjddKpZ6QQR2FQxJ5z+E= Received: by 10.66.222.9 with SMTP id u9mr4503537ugg; Tue, 06 Jun 2006 06:26:50 -0700 (PDT) Received: from ?193.140.236.75? ( [193.140.236.75]) by mx.gmail.com with ESMTP id y7sm7591851ugc.2006.06.06.06.26.49; Tue, 06 Jun 2006 06:26:50 -0700 (PDT) Message-ID: <448582BB.7050801@gmail.com> Date: Tue, 06 Jun 2006 16:27:23 +0300 From: Ersin Er User-Agent: Thunderbird 1.5.0.2 (X11/20060501) MIME-Version: 1.0 To: Apache Directory Developers List Subject: [ApacheDS] Need idea on allowing/prohibiting modification of request parameters and operation results by Triggers Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Hi all, I'm currently working LDAP Triggers as a somewhat cool addition to ApacheDS. The progress can be partially followed from: http://docs.safehaus.org/display/APACHEDS/Triggers We allow interception of each LDAP operation with BEFORE, AFTER and INSTEADOF triggers. There are lots of details to share but currently I have an important question where I need some suggestions. (I'll be sharing much more in a month.) We allow operation specific parameters to be injected to Stored Procedures fired by Triggers. The question is: Shall we allow modification of these parameters by stored procedures? Shall we pass references of real (meaning the object itself which takes place in the operation) mutable objects and allow modification of those values? For example, if someone performs a add operation, shall we allow the Trigger/SP writer to modify the attributes of the entry to be added? Or from the other perspective, shall we allow modification of search results for instance? Another problem is, if we allow this modification, what shall we do with immutable types? For example, a compare operation results a boolean (I mean the Java type) and it cannot be altered within a method it's passed. BTW, we'll have some working Triggers/SPs in one month as we plan and wish. Then we may further investigate what's missing and what can be improved all together. Thanks. -- Ersin