Emmanuel Lecharny wrote:
hello guys,
Hi Kiran,
* ModifyResponse modify( Entry entry, ModificationOperation modOp )
* ModifyResponse modify( ModifyRequest modRequest )
The modify() operation acts on a DN, and takes a list of modification,
each one of them being applied on an AttributeType.
The API should looks like :
ModifyResponse modify( LdapDN dn, Modification[] modifications );
I felt like constructing a Modification is always a kind of difficult thing,
cause it is not a one line code
(read me as lazy bum) and thought of taking out this boilerplate stuff from
user's code.
* modify( Entry entry, ModificationOperation modOp )
my idea here with this method is to apply the given 'modOp' on *all*
attributes of the given 'entry'
which internally creates a ModifyRequest with the entry's DN and performs the
operation.
Don't know how often this is used in real world usage, but this is something
I have encountered when
I was experimenting with the Object to LDAP Mapping code and thought this
would be a good addition.
* ModifyResponse modify( Entry entry, ModificationOperation modOp,
Control... controls )
* ModifyResponse modify( ModifyRequest modRequest, Control... controls )
I don't remember if the other operations support the Control
parameter, or if it would be better to inject those controls into the
ModifyRequest.
yeah, I think ModifyRequest is the better place to have controls, +1
The ModifyRequest contains the following methods
* ModifyRequest( LdapDN dn ) - constructor
+1
* void add( EntryAttribute attr )
* void add( String attributeName, String... attributeValue )
* void add( String attributeName, byte[]... attributeValue ) - this is a
overloaded version with byte[] values, same for
replace and remove operations
Having such operations (add(), remove() and replace() ) is a good
idea. I'm just wondering what could be the parameters for the
replace() method.
here is the complete listing of replace and remove methods
* void replace( String attributeName, String... attributeValue )
* void replace( String attributeName, byte[]... attributeValue )
* void replace( EntryAttribute attr )
* void remove( String attributeName, String... attributeValue )
* void remove( String attributeName, byte[]... attributeValue )
* void remove( EntryAttribute attr )
thanks Emmanuel
Kiran Ayyagari