Alex Karasulu wrote:
Hi Emmanuel,
<snip/>
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 have implented both features : a simple search() with no argument
returns the rootDSE, but I also added the two methods :
getRootDSE()
and
getRootDSE( String... attributes )
so you can explicitely request for the RootDSE, and grab one specific
attribute if needed. I still have to define the same operation for the
asynchronous mode.
conn.search( baseDN ) => searches the base with one level scope and
OBJECT would be better. It's like you want the attributes of a specific
entry, no need to look down the tree...
(objectClass=*)
conn.search( baseDN, filter )
conn.search( baseDN, filter, scope )
Yeah, I guess those methods are needed. it's too painful to add all the
params when you only want an entry
Attributes and size/time limits might be best left to be overridden in the
SearchRequest? However these parameters should be set to some smart default
when using the signatures above. For example the sizeLimit may default to
1000 entries.
I guess it should be set into the LdapConnection object, as suggested bu
Stefan.
Also I was wondering how the Cursor interface fits into this. Right now we
used the DirectoryListener.
I'm using it for the synchronous search : works pretty well, so far.
Continuing ...
--
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org