OPENDJ-2773 Remove duplicated server tools
Once sdk ldap toolkit tools have been merged with the server ones, we are now able to remove the following tools from opendj-server-legacy module:
* base64
* Removes whole class. Replaced by SDK's Base64 which is noew public
* ldapcompare
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* ldapdelete
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* ldapmodify
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* Removes -a option since it does not exist in the sdk because it's the default behavior
* Removes support of ChangeNumber control decoding and printing since it was a specific DJ one.
* ldappasswordmodify
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* When noop control is used, tool return code is now 0 instead of 16654, apdats unit test in consequence.
* ldapsearch
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* Replace -r argument by -o mech=EXTERNAL because -r has been removed in the sdk
* Always use -N argument to provide client certificate nickname ('client-cert' in unit tests) when -o mech=EXTERNAL (SASL external Bind) is used since the server default behavior to take the first client certificate from the client keystore has not been keeped.
* When SSL is used in used tests we do not have hostname matching between certificate's cn (cn=OpenDJ Server Certificate) and the one given in ldap* tool -h argument (127.0.0.1).
SDK tools prompts user to know what they want to do in such cases (if the -X, --trustAll flag has not been provided on the command line). Modified impacted unit tests to trust the certificate for the session only. As it's the default value, we just need to hit enter key on stdin.
* We do not support -o mech=ANONYMOUS in the sdk. So this parameter has been removed from server's unit tests.
* ldif* tools
* Removes whole class and adapts test cases usages to the sdk ldapcompare options
* Changes performed in source code files to avoid depending on opendj-ldap-toolkit.jar
* ConfigurationHandler.java
* Use sdk LDIF* apis to perform the modify instead of the tool.
* NewBaseDNPanel.java
* Use ldapmodify script located under in bin/ folder instead of programmatically. This is way no ideal but this code is so difficult to manage as it's a best effort situation here.
* src/main/java/org/opends/guitools/controlpanel/task/ResetUserPasswordTask.java
* Use sdk connection to perform the password modify extended request instead of using the tool.
* opendj-server-legacy/pom.xml
* Add a dependency on opendj-ldap-toolkit.
Note that transitive dependancies are correctly moved in the lib/ archive folder and bootstrap-client jar is correcly updated.