Return-Path: Delivered-To: apmail-directory-dev-archive@www.apache.org Received: (qmail 52485 invoked from network); 1 Apr 2009 17:14:04 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 1 Apr 2009 17:14:04 -0000 Received: (qmail 91430 invoked by uid 500); 1 Apr 2009 17:14:04 -0000 Delivered-To: apmail-directory-dev-archive@directory.apache.org Received: (qmail 91362 invoked by uid 500); 1 Apr 2009 17:14:04 -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 91354 invoked by uid 99); 1 Apr 2009 17:14:04 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 01 Apr 2009 17:14:04 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of elecharny@gmail.com designates 209.85.219.180 as permitted sender) Received: from [209.85.219.180] (HELO mail-ew0-f180.google.com) (209.85.219.180) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 01 Apr 2009 17:13:55 +0000 Received: by ewy28 with SMTP id 28so159935ewy.25 for ; Wed, 01 Apr 2009 10:13:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=mMH4CnKwC672QwRf/BQa7muKZGHbpIYJKQRykAw/Mfo=; b=sPurhfnYzz5KLjpFn9iyg2tai2/wQ3kfPj62g4Zr21mTuKU0jt5CA+k1bhsd7n3I5d FL+hy5qqJEBZ79DeoPo8AMeKierK/aqyxYwlyc+N9Z2wWnEBeTRU4V/JvEEktV6gyxON 1roKOvrQ0aCHRRCpkVZwEGGUXze8ZHm9UsWM0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; b=Qo98myOrbw6gVlbd8DPLegBbaR4FQWemIaX4TQ7G+9QscFbceItsbHMY7R7173J0bC mVCHctI9OvKqNth9e2OkLXuMBsrwSX0XLjNXxgoWCnSWVqZV3y8+e68hlhhkHCklI0yd XPznLEOuTt/QjzNk9YHq6gl8R8n806Qn9He7I= Received: by 10.216.27.78 with SMTP id d56mr2681932wea.164.1238606014334; Wed, 01 Apr 2009 10:13:34 -0700 (PDT) Received: from ?192.168.0.2? (vol75-3-82-66-216-176.fbx.proxad.net [82.66.216.176]) by mx.google.com with ESMTPS id 7sm250022eyg.7.2009.04.01.10.13.33 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 01 Apr 2009 10:13:33 -0700 (PDT) Sender: Emmanuel Lecharny Message-ID: <49D3A0BC.20002@nextury.com> Date: Wed, 01 Apr 2009 19:13:32 +0200 From: Emmanuel Lecharny User-Agent: Thunderbird 2.0.0.21 (X11/20090318) MIME-Version: 1.0 To: Apache Directory Developers List Subject: Re: [Client API] Search operation References: <49CF4FE0.9040502@nextury.com> <49D3602A.7000007@nextury.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-Virus-Checked: Checked by ClamAV on apache.org Alex Karasulu wrote: > As a rule things start getting ugly with API methods when you have more than > 4 arguments and more than 4 overloads. > True. > The most important thing to realize is what changes most with each search > request. The base does change most. The filter does but sometimes does not > need to be provided since people just want everything. I can see something > like: > > conn.search() => searches the rootDSE ? Or should this be conn.getRootDse() > ? > I would rather use a getRootDse() instead of a weird search request with no baseDn. So +1 > conn.search( baseDN ) => searches the base with one level scope and > (objectClass=*) > conn.search( baseDN, filter ) > conn.search( baseDN, filter, scope ) > We can add those three methods. > Attributes and size/time limits might be best left to be overridden in the > SearchRequest? I think that the Attributes should be the forth param. Anything else should be handled using a SearchRequest object. > However these parameters should be set to some smart default > when using the signatures above. For example the sizeLimit may default to > 1000 entries. > Exactly. > NOTE: timeLimit != timeout where the timeLimit is the limit for a search > operation on the server, and the timeout is the time the client will wait at > most for any operation to complete before disconnecting/abandoning the > client request. > TimeLimit is handled by the server, not the client. So yes, they are different values. We should have a default timeout value on the client, stored into the connection though. > Also I was wondering how the Cursor interface fits into this. Right now we > used the DirectoryListener. > Man, it fits just fine :) You have to see it... -- -- cordialement, regards, Emmanuel L�charny www.iktek.com directory.apache.org