Author: akarasulu Date: Mon Jan 10 22:03:29 2005 New Revision: 124889 URL: http://svn.apache.org/viewcvs?view=rev&rev=124889 Log: changes...
o updated changes that took place months ago on common libs o removed old lingering lib directory notes ... o need to remove all avalon deps o code here is ages old and needs a new owner Removed: incubator/directory/ldap/trunk/clients/lib/ Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapAdd.java Mon Jan 10 22:03:29 2005 @@ -202,7 +202,7 @@ * limitations under the License. * */ - + package org.apache.ldap.clients ; import java.io.BufferedReader; @@ -211,8 +211,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; -import java.math.BigInteger; -import java.text.ParseException; import javax.naming.NamingException; import javax.naming.directory.Attribute; @@ -234,7 +232,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $Author: jmachols $ - * @version $Revision: 1.11 $ + * @version $Revision$ */ public class LdapAdd extends LdapBind @@ -293,7 +291,7 @@ { String l_line = new String () ; StringBuffer l_buf = new StringBuffer() ; - BigInteger l_messageNum = new BigInteger ( "2" ) ; + int l_messageNum = 2; BufferedReader l_stream = new BufferedReader ( new InputStreamReader ( a_stream ) ) ; try @@ -307,7 +305,7 @@ if ( l_line.trim().equals( "" ) ) { add( l_buf, l_messageNum ) ; - l_messageNum = l_messageNum.add( BigInteger.ONE ) ; + l_messageNum++; l_buf.setLength( 0 ) ; continue ; } @@ -320,6 +318,7 @@ System.out.println( "error reading from input " + e.toString() ) ; System.exit( -1 ) ; } + add ( l_buf, l_messageNum ) ; } @@ -329,11 +328,11 @@ * of the operation. * * @param a_buf The string buffer that contain the LDIF entry - * @param a_messageNum The entry number from the LDIF + * @param msgId message id number */ - public void add( StringBuffer a_buf, BigInteger a_messageNum ) + public void add( StringBuffer a_buf, int msgId ) { - AddRequest l_request = new AddRequestImpl( a_messageNum ) ; + AddRequest l_request = new AddRequestImpl( msgId ) ; try { // ------------------------------------------ @@ -354,17 +353,12 @@ l_attributes.remove( "dn" ) ; l_request.setEntry( l_attributes ) ; } - catch ( ParseException pe ) - { - System.out.println( "Error parsing entry " + pe.toString() ) ; - System.exit( -1 ) ; - } catch ( NamingException ne ) { System.out.println( "Error parsing file " + ne.toString() ) ; System.exit( -1 ) ; } - super.getEncoder().encode( null, super.getOut(), l_request ) ; + super.getEncoder().encodeBlocking( null, super.getOut(), l_request ); ; AddResponse l_addResponse = ( AddResponse ) super.getDecoder().decode( null, super.getIn() ) ; @@ -394,7 +388,7 @@ try { - l_bindResponse = l_client.bind( BigInteger.ONE ) ; + l_bindResponse = l_client.bind( 1 ) ; } catch ( MessageException e ) { Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapBind.java Mon Jan 10 22:03:29 2005 @@ -202,14 +202,13 @@ * limitations under the License. * */ - + package org.apache.ldap.clients; import java.io.BufferedOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.math.BigInteger; import java.net.InetAddress; import java.net.Socket; import java.net.UnknownHostException; @@ -231,7 +230,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $Author: jmachols $ - * @version $Revision: 1.9 $ + * @version $Revision$ */ public class LdapBind { @@ -319,17 +318,17 @@ /** * Send the bind request to the LDAP server. * - * @param a_id Message number of this request, If this is a simple + * @param id Message number of this request, If this is a simple * bind, the ID will be one. * @return The decoder response from the bind request * @throws UnknownHostException The hostname or the Address of * server could not be found * @throws IOException There was a error opening or establishing the socket */ - public BindResponse bind( BigInteger a_id ) + public BindResponse bind( int id ) throws UnknownHostException, IOException { - BindRequestImpl l_request = new BindRequestImpl( a_id ); + BindRequestImpl l_request = new BindRequestImpl( id ); // -------------------------------------------------------------------- // Build BindRequest @@ -350,7 +349,7 @@ } // Send encoded request to server - m_encoder.encode( null, m_out, l_request ); + m_encoder.encodeBlocking( null, m_out, l_request ); // Retrieve the response back from server to my last request. return ( BindResponse ) m_decoder.decode( null, m_in ); @@ -398,7 +397,7 @@ try { - l_response = l_client.bind( BigInteger.ONE ) ; + l_response = l_client.bind( 1 ) ; } catch ( IOException e ) { Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapDel.java Mon Jan 10 22:03:29 2005 @@ -202,11 +202,9 @@ * limitations under the License. * */ - -package org.apache.ldap.clients ; +package org.apache.ldap.clients ; -import java.math.BigInteger ; import java.io.IOException ; @@ -224,7 +222,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $Author: jmachols $ - * @version $Revision: 1.4 $ + * @version $Revision$ */ public class LdapDel extends LdapBind @@ -247,19 +245,19 @@ * message to the serever. Then wait for the serever to respond and * decode that message * - * @param a_id Message number being sent to the server in this + * @param id Message number being sent to the server in this * transaction. Since bind will be the fist, start with 2. * * @return The LDAP response to the operation from the server */ - public DeleteResponse delete( BigInteger a_id ) + public DeleteResponse delete( int id ) { DelOpts l_opts = ( DelOpts ) super.getOpts() ; - DeleteRequest l_request = new DeleteRequestImpl( a_id ) ; + DeleteRequest l_request = new DeleteRequestImpl( id ) ; l_request.setName( l_opts.getDeletedDn() ) ; // Send encoded request to server - super.getEncoder().encode( null, super.getOut(), l_request ) ; + super.getEncoder().encodeBlocking( null, super.getOut(), l_request ) ; // Retrieve the response back from server to my last request. return ( DeleteResponse ) super.getDecoder().decode( @@ -280,7 +278,7 @@ try { - l_bindResponse = l_client.bind( BigInteger.ONE ) ; + l_bindResponse = l_client.bind( 1 ) ; } catch ( MessageException e ) { @@ -323,8 +321,7 @@ // Perform delete operation and report results // -------------------------------------------------------------------- - DeleteResponse l_delResponse = l_client.delete( - new BigInteger( "2" ) ) ; + DeleteResponse l_delResponse = l_client.delete( 2 ) ; l_result = l_delResponse.getLdapResult() ; if ( l_result.getResultCode() == ResultCodeEnum.SUCCESS ) Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapModify.java Mon Jan 10 22:03:29 2005 @@ -202,7 +202,7 @@ * limitations under the License. * */ - + package org.apache.ldap.clients ; @@ -212,8 +212,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; -import java.math.BigInteger; -import java.text.ParseException; import java.util.LinkedList; import javax.naming.NamingException; @@ -236,7 +234,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $$Author: jmachols $$ - * @version $$Revision: 1.6 $$ + * @version $$Revision$$ */ public class LdapModify extends LdapBind @@ -296,7 +294,7 @@ // Setup the request String l_line = new String () ; StringBuffer l_buf = new StringBuffer() ; - BigInteger l_messageNum = new BigInteger ( "2" ) ; + int l_messageNum = 2; BufferedReader l_stream = new BufferedReader ( new InputStreamReader ( a_stream ) ) ; try @@ -310,7 +308,7 @@ if ( l_line.trim().equals( "" ) ) { modify( l_buf, l_messageNum ) ; - l_messageNum = l_messageNum.add( BigInteger.ONE ) ; + l_messageNum++; l_buf.setLength( 0 ) ; continue ; } @@ -332,11 +330,11 @@ * of the operation. * * @param a_buf The string buffer that contain the LDIF entry - * @param a_messageNum The entry number from the LDIF + * @param id the message id for the session */ - public void modify( StringBuffer a_buf, BigInteger a_messageNum ) + public void modify( StringBuffer a_buf, int id ) { - ModifyRequest l_request = new ModifyRequestImpl( a_messageNum ) ; + ModifyRequest l_request = new ModifyRequestImpl( id ) ; try { // ------------------------------------------ @@ -355,17 +353,12 @@ ( ModificationItem ) l_items.get( l_index ) ) ; } } - catch ( ParseException pe ) - { - System.out.println( "Error parsing entry " + pe.toString() ) ; - System.exit( -1 ) ; - } catch ( NamingException ne ) { System.out.println( "Error parsing file " + ne.toString() ) ; System.exit( -1 ) ; } - super.getEncoder().encode( null, super.getOut(), l_request ) ; + super.getEncoder().encodeBlocking( null, super.getOut(), l_request ); ; ModifyResponse l_modifyResponse = ( ModifyResponse ) super.getDecoder().decode( null, super.getIn() ) ; @@ -395,7 +388,7 @@ try { - l_bindResponse = l_client.bind( BigInteger.ONE ) ; + l_bindResponse = l_client.bind( 1 ) ; } catch ( MessageException e ) { Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/LdapSearch.java Mon Jan 10 22:03:29 2005 @@ -202,11 +202,10 @@ * limitations under the License. * */ - + package org.apache.ldap.clients ; -import java.math.BigInteger ; import java.text.ParseException; import java.io.IOException ; @@ -223,13 +222,10 @@ import org.apache.ldap.common.message.BindResponse ; import org.apache.ldap.common.message.MessageException; import org.apache.ldap.common.message.ResultCodeEnum; -import org.apache.ldap.common.message.ScopeEnum; import org.apache.ldap.common.message.SearchRequest; import org.apache.ldap.common.message.SearchRequestImpl; import org.apache.ldap.common.message.SearchResponseDoneImpl; import org.apache.ldap.common.message.SearchResponseEntryImpl; -import org.apache.ldap.common.message.SearchResponseReferenceImpl; - /** @@ -237,7 +233,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $Author: jmachols $ - * @version $Revision: 1.6 $ + * @version $Revision$ */ public class LdapSearch extends LdapBind @@ -263,9 +259,9 @@ + a_request.getDerefAliases().getName().toString() + "[" + a_request.getDerefAliases().getValue() + "]" + "\n\t\t\t\tFilter: " + a_request.getFilter() - + "\n\t\t\t\tMessage ID: " + a_request.getMessageId().toString() - + "\n\t\t\t\tSize Limit: " + a_request.getSizeLimit().toString() - + "\n\t\t\t\tTime Limit: " + a_request.getTimeLimit().toString() + + "\n\t\t\t\tMessage ID: " + a_request.getMessageId() + + "\n\t\t\t\tSize Limit: " + a_request.getSizeLimit() + + "\n\t\t\t\tTime Limit: " + a_request.getTimeLimit() + "\n\t\t\t\tTypes Only: " + a_request.getTypesOnly() + "\n\t\t\t\tScope: " + a_request.getScope().getName().toString() + "[" + a_request.getScope().getValue() + "]" ) ; @@ -282,7 +278,6 @@ public void printAttributeNames ( NamingEnumeration a_attributeList ) { Attribute l_attr; - NamingEnumeration l_attrValues; while ( a_attributeList.hasMoreElements() ) { @@ -340,31 +335,21 @@ * Create the Search Request encoded message and send it to the server, * then process each response from the server * - * @param a_id Message number + * @param id session message id */ - public void search ( BigInteger a_id ) + public void search ( int id ) { SearchOpts l_opts = ( SearchOpts ) super.getOpts() ; - SearchRequest l_request = new SearchRequestImpl( a_id ) ; + SearchRequest l_request = new SearchRequestImpl( id ) ; Object l_response = new Object () ; SearchResponseDoneImpl l_searchResponseDone = - new SearchResponseDoneImpl ( BigInteger.ONE ); + new SearchResponseDoneImpl ( 1 ); SearchResponseEntryImpl l_searchResponseEntry ; - SearchResponseReferenceImpl l_searchResponseReference ; FilterParser l_filter = null ; ExprNode l_expr = null ; - ScopeEnum l_scope = null; - - try - { - l_filter = new FilterParserImpl () ; - } - catch ( IOException e ) - { - getLog().fatalError( "Failed to create Filter Parser", e ) ; - System.exit( 1 ) ; - } - + + l_filter = new FilterParserImpl () ; + try { l_expr = l_filter.parse( l_opts.getFilter() ) ; @@ -386,8 +371,8 @@ l_request.setBase( l_opts.getBase() ); l_request.setScope( l_opts.getScope() ) ; l_request.setDerefAliases( DerefAliasesEnum.NEVERDEREFALIASES ) ; - l_request.setTimeLimit(BigInteger.valueOf( (long ) l_opts.getMaxEntries() ) ) ; - l_request.setSizeLimit( BigInteger.valueOf( (long ) l_opts.getMaxEntries() ) ) ; + l_request.setTimeLimit( l_opts.getMaxTime() ) ; + l_request.setSizeLimit( l_opts.getMaxEntries() ) ; l_request.setTypesOnly( l_opts.isTypesMode() ); m_client.getLog().debug( "Sending the following request to the ldap" @@ -395,7 +380,7 @@ + requestToString( l_request ) ) ; // Send encoded request to server - super.getEncoder().encode( null, super.getOut(), l_request ) ; + super.getEncoder().encodeBlocking( null, super.getOut(), l_request ) ; // Retrieve the response back from server to my last request. l_response = super.getDecoder().decode( null, super.getIn() ) ; @@ -447,7 +432,7 @@ try { - l_bindResponse = m_client.bind( BigInteger.ONE ) ; + l_bindResponse = m_client.bind( 1 ) ; } catch ( MessageException e ) { @@ -483,7 +468,7 @@ System.exit( -1 ) ; } - m_client.search( new BigInteger( "2" ) ) ; + m_client.search( 2 ) ; try { Modified: incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java Url: http://svn.apache.org/viewcvs/incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java?view=diff&rev=124889&p1=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java&r1=124888&p2=incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java&r2=124889 ============================================================================== --- incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java (original) +++ incubator/directory/ldap/trunk/clients/src/java/org/apache/ldap/clients/embedded/LdapClientImpl.java Mon Jan 10 22:03:29 2005 @@ -1,212 +1,211 @@ -/* - * Apache License - * Version 2.0, January 2004 - * http://www.apache.org/licenses/ - * - * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - * - * 1. Definitions. - * - * "License" shall mean the terms and conditions for use, reproduction, - * and distribution as defined by Sections 1 through 9 of this document. - * - * "Licensor" shall mean the copyright owner or entity authorized by - * the copyright owner that is granting the License. - * - * "Legal Entity" shall mean the union of the acting entity and all - * other entities that control, are controlled by, or are under common - * control with that entity. For the purposes of this definition, - * "control" means (i) the power, direct or indirect, to cause the - * direction or management of such entity, whether by contract or - * otherwise, or (ii) ownership of fifty percent (50%) or more of the - * outstanding shares, or (iii) beneficial ownership of such entity. - * - * "You" (or "Your") shall mean an individual or Legal Entity - * exercising permissions granted by this License. - * - * "Source" form shall mean the preferred form for making modifications, - * including but not limited to software source code, documentation - * source, and configuration files. - * - * "Object" form shall mean any form resulting from mechanical - * transformation or translation of a Source form, including but - * not limited to compiled object code, generated documentation, - * and conversions to other media types. - * - * "Work" shall mean the work of authorship, whether in Source or - * Object form, made available under the License, as indicated by a - * copyright notice that is included in or attached to the work - * (an example is provided in the Appendix below). - * - * "Derivative Works" shall mean any work, whether in Source or Object - * form, that is based on (or derived from) the Work and for which the - * editorial revisions, annotations, elaborations, or other modifications - * represent, as a whole, an original work of authorship. For the purposes - * of this License, Derivative Works shall not include works that remain - * separable from, or merely link (or bind by name) to the interfaces of, - * the Work and Derivative Works thereof. - * - * "Contribution" shall mean any work of authorship, including - * the original version of the Work and any modifications or additions - * to that Work or Derivative Works thereof, that is intentionally - * submitted to Licensor for inclusion in the Work by the copyright owner - * or by an individual or Legal Entity authorized to submit on behalf of - * the copyright owner. For the purposes of this definition, "submitted" - * means any form of electronic, verbal, or written communication sent - * to the Licensor or its representatives, including but not limited to - * communication on electronic mailing lists, source code control systems, - * and issue tracking systems that are managed by, or on behalf of, the - * Licensor for the purpose of discussing and improving the Work, but - * excluding communication that is conspicuously marked or otherwise - * designated in writing by the copyright owner as "Not a Contribution." - * - * "Contributor" shall mean Licensor and any individual or Legal Entity - * on behalf of whom a Contribution has been received by Licensor and - * subsequently incorporated within the Work. - * - * 2. Grant of Copyright License. Subject to the terms and conditions of - * this License, each Contributor hereby grants to You a perpetual, - * worldwide, non-exclusive, no-charge, royalty-free, irrevocable - * copyright license to reproduce, prepare Derivative Works of, - * publicly display, publicly perform, sublicense, and distribute the - * Work and such Derivative Works in Source or Object form. - * - * 3. Grant of Patent License. Subject to the terms and conditions of - * this License, each Contributor hereby grants to You a perpetual, - * worldwide, non-exclusive, no-charge, royalty-free, irrevocable - * (except as stated in this section) patent license to make, have made, - * use, offer to sell, sell, import, and otherwise transfer the Work, - * where such license applies only to those patent claims licensable - * by such Contributor that are necessarily infringed by their - * Contribution(s) alone or by combination of their Contribution(s) - * with the Work to which such Contribution(s) was submitted. If You - * institute patent litigation against any entity (including a - * cross-claim or counterclaim in a lawsuit) alleging that the Work - * or a Contribution incorporated within the Work constitutes direct - * or contributory patent infringement, then any patent licenses - * granted to You under this License for that Work shall terminate - * as of the date such litigation is filed. - * - * 4. Redistribution. You may reproduce and distribute copies of the - * Work or Derivative Works thereof in any medium, with or without - * modifications, and in Source or Object form, provided that You - * meet the following conditions: - * - * (a) You must give any other recipients of the Work or - * Derivative Works a copy of this License; and - * - * (b) You must cause any modified files to carry prominent notices - * stating that You changed the files; and - * - * (c) You must retain, in the Source form of any Derivative Works - * that You distribute, all copyright, patent, trademark, and - * attribution notices from the Source form of the Work, - * excluding those notices that do not pertain to any part of - * the Derivative Works; and - * - * (d) If the Work includes a "NOTICE" text file as part of its - * distribution, then any Derivative Works that You distribute must - * include a readable copy of the attribution notices contained - * within such NOTICE file, excluding those notices that do not - * pertain to any part of the Derivative Works, in at least one - * of the following places: within a NOTICE text file distributed - * as part of the Derivative Works; within the Source form or - * documentation, if provided along with the Derivative Works; or, - * within a display generated by the Derivative Works, if and - * wherever such third-party notices normally appear. The contents - * of the NOTICE file are for informational purposes only and - * do not modify the License. You may add Your own attribution - * notices within Derivative Works that You distribute, alongside - * or as an addendum to the NOTICE text from the Work, provided - * that such additional attribution notices cannot be construed - * as modifying the License. - * - * You may add Your own copyright statement to Your modifications and - * may provide additional or different license terms and conditions - * for use, reproduction, or distribution of Your modifications, or - * for any such Derivative Works as a whole, provided Your use, - * reproduction, and distribution of the Work otherwise complies with - * the conditions stated in this License. - * - * 5. Submission of Contributions. Unless You explicitly state otherwise, - * any Contribution intentionally submitted for inclusion in the Work - * by You to the Licensor shall be under the terms and conditions of - * this License, without any additional terms or conditions. - * Notwithstanding the above, nothing herein shall supersede or modify - * the terms of any separate license agreement you may have executed - * with Licensor regarding such Contributions. - * - * 6. Trademarks. This License does not grant permission to use the trade - * names, trademarks, service marks, or product names of the Licensor, - * except as required for reasonable and customary use in describing the - * origin of the Work and reproducing the content of the NOTICE file. - * - * 7. Disclaimer of Warranty. Unless required by applicable law or - * agreed to in writing, Licensor provides the Work (and each - * Contributor provides its Contributions) on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - * implied, including, without limitation, any warranties or conditions - * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - * PARTICULAR PURPOSE. You are solely responsible for determining the - * appropriateness of using or redistributing the Work and assume any - * risks associated with Your exercise of permissions under this License. - * - * 8. Limitation of Liability. In no event and under no legal theory, - * whether in tort (including negligence), contract, or otherwise, - * unless required by applicable law (such as deliberate and grossly - * negligent acts) or agreed to in writing, shall any Contributor be - * liable to You for damages, including any direct, indirect, special, - * incidental, or consequential damages of any character arising as a - * result of this License or out of the use or inability to use the - * Work (including but not limited to damages for loss of goodwill, - * work stoppage, computer failure or malfunction, or any and all - * other commercial damages or losses), even if such Contributor - * has been advised of the possibility of such damages. - * - * 9. Accepting Warranty or Additional Liability. While redistributing - * the Work or Derivative Works thereof, You may choose to offer, - * and charge a fee for, acceptance of support, warranty, indemnity, - * or other liability obligations and/or rights consistent with this - * License. However, in accepting such obligations, You may act only - * on Your own behalf and on Your sole responsibility, not on behalf - * of any other Contributor, and only if You agree to indemnify, - * defend, and hold each Contributor harmless for any liability - * incurred by, or claims asserted against, such Contributor by reason - * of your accepting any such warranty or additional liability. - * - * END OF TERMS AND CONDITIONS - * - * APPENDIX: How to apply the Apache License to your work. - * - * To apply the Apache License to your work, attach the following - * boilerplate notice, with the fields enclosed by brackets "[]" - * replaced with your own identifying information. (Don't include - * the brackets!) The text should be enclosed in the appropriate - * comment syntax for the file format. We also recommend that a - * file or class name and description of purpose be included on the - * same "printed page" as the copyright notice for easier - * identification within third-party archives. - * - * Copyright [yyyy] [name of copyright owner] - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ +/* + * Apache License + * Version 2.0, January 2004 + * http://www.apache.org/licenses/ + * + * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + * + * 1. Definitions. + * + * "License" shall mean the terms and conditions for use, reproduction, + * and distribution as defined by Sections 1 through 9 of this document. + * + * "Licensor" shall mean the copyright owner or entity authorized by + * the copyright owner that is granting the License. + * + * "Legal Entity" shall mean the union of the acting entity and all + * other entities that control, are controlled by, or are under common + * control with that entity. For the purposes of this definition, + * "control" means (i) the power, direct or indirect, to cause the + * direction or management of such entity, whether by contract or + * otherwise, or (ii) ownership of fifty percent (50%) or more of the + * outstanding shares, or (iii) beneficial ownership of such entity. + * + * "You" (or "Your") shall mean an individual or Legal Entity + * exercising permissions granted by this License. + * + * "Source" form shall mean the preferred form for making modifications, + * including but not limited to software source code, documentation + * source, and configuration files. + * + * "Object" form shall mean any form resulting from mechanical + * transformation or translation of a Source form, including but + * not limited to compiled object code, generated documentation, + * and conversions to other media types. + * + * "Work" shall mean the work of authorship, whether in Source or + * Object form, made available under the License, as indicated by a + * copyright notice that is included in or attached to the work + * (an example is provided in the Appendix below). + * + * "Derivative Works" shall mean any work, whether in Source or Object + * form, that is based on (or derived from) the Work and for which the + * editorial revisions, annotations, elaborations, or other modifications + * represent, as a whole, an original work of authorship. For the purposes + * of this License, Derivative Works shall not include works that remain + * separable from, or merely link (or bind by name) to the interfaces of, + * the Work and Derivative Works thereof. + * + * "Contribution" shall mean any work of authorship, including + * the original version of the Work and any modifications or additions + * to that Work or Derivative Works thereof, that is intentionally + * submitted to Licensor for inclusion in the Work by the copyright owner + * or by an individual or Legal Entity authorized to submit on behalf of + * the copyright owner. For the purposes of this definition, "submitted" + * means any form of electronic, verbal, or written communication sent + * to the Licensor or its representatives, including but not limited to + * communication on electronic mailing lists, source code control systems, + * and issue tracking systems that are managed by, or on behalf of, the + * Licensor for the purpose of discussing and improving the Work, but + * excluding communication that is conspicuously marked or otherwise + * designated in writing by the copyright owner as "Not a Contribution." + * + * "Contributor" shall mean Licensor and any individual or Legal Entity + * on behalf of whom a Contribution has been received by Licensor and + * subsequently incorporated within the Work. + * + * 2. Grant of Copyright License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * copyright license to reproduce, prepare Derivative Works of, + * publicly display, publicly perform, sublicense, and distribute the + * Work and such Derivative Works in Source or Object form. + * + * 3. Grant of Patent License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * (except as stated in this section) patent license to make, have made, + * use, offer to sell, sell, import, and otherwise transfer the Work, + * where such license applies only to those patent claims licensable + * by such Contributor that are necessarily infringed by their + * Contribution(s) alone or by combination of their Contribution(s) + * with the Work to which such Contribution(s) was submitted. If You + * institute patent litigation against any entity (including a + * cross-claim or counterclaim in a lawsuit) alleging that the Work + * or a Contribution incorporated within the Work constitutes direct + * or contributory patent infringement, then any patent licenses + * granted to You under this License for that Work shall terminate + * as of the date such litigation is filed. + * + * 4. Redistribution. You may reproduce and distribute copies of the + * Work or Derivative Works thereof in any medium, with or without + * modifications, and in Source or Object form, provided that You + * meet the following conditions: + * + * (a) You must give any other recipients of the Work or + * Derivative Works a copy of this License; and + * + * (b) You must cause any modified files to carry prominent notices + * stating that You changed the files; and + * + * (c) You must retain, in the Source form of any Derivative Works + * that You distribute, all copyright, patent, trademark, and + * attribution notices from the Source form of the Work, + * excluding those notices that do not pertain to any part of + * the Derivative Works; and + * + * (d) If the Work includes a "NOTICE" text file as part of its + * distribution, then any Derivative Works that You distribute must + * include a readable copy of the attribution notices contained + * within such NOTICE file, excluding those notices that do not + * pertain to any part of the Derivative Works, in at least one + * of the following places: within a NOTICE text file distributed + * as part of the Derivative Works; within the Source form or + * documentation, if provided along with the Derivative Works; or, + * within a display generated by the Derivative Works, if and + * wherever such third-party notices normally appear. The contents + * of the NOTICE file are for informational purposes only and + * do not modify the License. You may add Your own attribution + * notices within Derivative Works that You distribute, alongside + * or as an addendum to the NOTICE text from the Work, provided + * that such additional attribution notices cannot be construed + * as modifying the License. + * + * You may add Your own copyright statement to Your modifications and + * may provide additional or different license terms and conditions + * for use, reproduction, or distribution of Your modifications, or + * for any such Derivative Works as a whole, provided Your use, + * reproduction, and distribution of the Work otherwise complies with + * the conditions stated in this License. + * + * 5. Submission of Contributions. Unless You explicitly state otherwise, + * any Contribution intentionally submitted for inclusion in the Work + * by You to the Licensor shall be under the terms and conditions of + * this License, without any additional terms or conditions. + * Notwithstanding the above, nothing herein shall supersede or modify + * the terms of any separate license agreement you may have executed + * with Licensor regarding such Contributions. + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor, + * except as required for reasonable and customary use in describing the + * origin of the Work and reproducing the content of the NOTICE file. + * + * 7. Disclaimer of Warranty. Unless required by applicable law or + * agreed to in writing, Licensor provides the Work (and each + * Contributor provides its Contributions) on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied, including, without limitation, any warranties or conditions + * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + * PARTICULAR PURPOSE. You are solely responsible for determining the + * appropriateness of using or redistributing the Work and assume any + * risks associated with Your exercise of permissions under this License. + * + * 8. Limitation of Liability. In no event and under no legal theory, + * whether in tort (including negligence), contract, or otherwise, + * unless required by applicable law (such as deliberate and grossly + * negligent acts) or agreed to in writing, shall any Contributor be + * liable to You for damages, including any direct, indirect, special, + * incidental, or consequential damages of any character arising as a + * result of this License or out of the use or inability to use the + * Work (including but not limited to damages for loss of goodwill, + * work stoppage, computer failure or malfunction, or any and all + * other commercial damages or losses), even if such Contributor + * has been advised of the possibility of such damages. + * + * 9. Accepting Warranty or Additional Liability. While redistributing + * the Work or Derivative Works thereof, You may choose to offer, + * and charge a fee for, acceptance of support, warranty, indemnity, + * or other liability obligations and/or rights consistent with this + * License. However, in accepting such obligations, You may act only + * on Your own behalf and on Your sole responsibility, not on behalf + * of any other Contributor, and only if You agree to indemnify, + * defend, and hold each Contributor harmless for any liability + * incurred by, or claims asserted against, such Contributor by reason + * of your accepting any such warranty or additional liability. + * + * END OF TERMS AND CONDITIONS + * + * APPENDIX: How to apply the Apache License to your work. + * + * To apply the Apache License to your work, attach the following + * boilerplate notice, with the fields enclosed by brackets "[]" + * replaced with your own identifying information. (Don't include + * the brackets!) The text should be enclosed in the appropriate + * comment syntax for the file format. We also recommend that a + * file or class name and description of purpose be included on the + * same "printed page" as the copyright notice for easier + * identification within third-party archives. + * + * Copyright [yyyy] [name of copyright owner] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ package org.apache.ldap.clients.embedded; import java.io.IOException; -import java.math.BigInteger; import java.net.InetAddress; import java.net.Socket; import java.net.UnknownHostException; @@ -235,19 +234,16 @@ import org.apache.ldap.common.message.DeleteRequestImpl; import org.apache.ldap.common.message.DeleteResponse; import org.apache.ldap.common.message.DerefAliasesEnum; -import org.apache.ldap.common.message.LdapResult; import org.apache.ldap.common.message.MessageDecoder; import org.apache.ldap.common.message.MessageEncoder; import org.apache.ldap.common.message.ModifyRequest; import org.apache.ldap.common.message.ModifyRequestImpl; import org.apache.ldap.common.message.ModifyResponse; import org.apache.ldap.common.message.ResultCodeEnum; -import org.apache.ldap.common.message.ScopeEnum; import org.apache.ldap.common.message.SearchRequest; import org.apache.ldap.common.message.SearchRequestImpl; import org.apache.ldap.common.message.SearchResponseDoneImpl; import org.apache.ldap.common.message.SearchResponseEntryImpl; -import org.apache.ldap.common.message.SearchResponseReferenceImpl; import org.apache.ldap.common.message.UnbindRequest; import org.apache.ldap.common.message.UnbindRequestImpl; @@ -256,7 +252,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Jeff Machols</a> * @author $Author: jmachols $ - * @version $Revision: $ + * @version $Revision$ */ public class LdapClientImpl implements LdapClient @@ -312,7 +308,7 @@ /** * Message number of the request being sent to the server */ - private BigInteger m_messageId = BigInteger.ONE; + private int id = 1; /** * Socket used to connect to the server @@ -496,7 +492,7 @@ } // Setup the bind request - BindRequestImpl l_request = new BindRequestImpl( m_messageId) ; + BindRequestImpl l_request = new BindRequestImpl( id ) ; l_request.setName( m_bindDn ) ; l_request.setSimple( true ) ; l_request.setCredentials( m_password.getBytes() ) ; @@ -507,8 +503,8 @@ MessageDecoder l_decoder = new MessageDecoder(); // Send encoded request to server - l_encoder.encode( null, m_socket.getOutputStream(), l_request ); - m_messageId.add( BigInteger.ONE ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ); + id++; // Retrieve the response back from server to my last request. BindResponse l_bindResponse = @@ -534,21 +530,20 @@ public void ldapUnbind() throws IOException { - UnbindRequest l_request = new UnbindRequestImpl( m_messageId ) ; + UnbindRequest l_request = new UnbindRequestImpl( id ) ; // Setup the ASN1 Enoder and Decoder MessageEncoder l_encoder = new MessageEncoder(); - MessageDecoder l_decoder = new MessageDecoder(); - + // Send encoded request to server - l_encoder.encode( null, m_socket.getOutputStream(), l_request ); - m_messageId.add( BigInteger.ONE ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ); + id++; m_socket.close() ; } public LdapClientResponse ldapDelete ( String a_deleteDn ) throws IOException { - DeleteRequest l_request = new DeleteRequestImpl( m_messageId ) ; + DeleteRequest l_request = new DeleteRequestImpl( id ) ; l_request.setName( a_deleteDn ) ; @@ -557,8 +552,8 @@ MessageDecoder l_decoder = new MessageDecoder(); // Send encoded request to server - l_encoder.encode( null, m_socket.getOutputStream(), l_request ); - m_messageId.add( BigInteger.ONE ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ); + id++; // Retrieve the response back from server to my last request. DeleteResponse l_deleteResponse = @@ -583,8 +578,8 @@ MessageEncoder l_encoder = new MessageEncoder(); MessageDecoder l_decoder = new MessageDecoder(); - AddRequest l_request = new AddRequestImpl( m_messageId ) ; - m_messageId.add( BigInteger.ONE ) ; + AddRequest l_request = new AddRequestImpl( id ) ; + id++; try { @@ -607,21 +602,15 @@ l_attributes.remove( "dn" ) ; l_request.setEntry( l_attributes ) ; } - catch ( ParseException pe ) - { - System.out.println( "Error parsing entry " + pe.toString() ) ; - System.exit( -1 ) ; - } catch ( NamingException ne ) { System.out.println( "Error parsing file " + ne.toString() ) ; System.exit( -1 ) ; } - l_encoder.encode( null, m_socket.getOutputStream(), l_request ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ) ; AddResponse l_addResponse = ( AddResponse ) l_decoder.decode( null, m_socket.getInputStream() ) ; - LdapResult l_result = l_addResponse.getLdapResult() ; - LdapClientResponse l_clientResponse = new LdapClientResponse() ; + LdapClientResponse l_clientResponse = new LdapClientResponse() ; l_clientResponse.setResultCode ( l_addResponse.getLdapResult().getResultCode().getValue() ) ; @@ -644,8 +633,9 @@ MessageEncoder l_encoder = new MessageEncoder(); MessageDecoder l_decoder = new MessageDecoder(); - ModifyRequest l_request = new ModifyRequestImpl( m_messageId ) ; - m_messageId.add( BigInteger.ONE ) ; + ModifyRequest l_request = new ModifyRequestImpl( id ) ; + id++; + try { // ------------------------------------------ @@ -664,22 +654,16 @@ ( ModificationItem ) l_items.get( l_index ) ) ; } } - catch ( ParseException pe ) - { - System.out.println( "Error parsing entry " + pe.toString() ) ; - System.exit( -1 ) ; - } catch ( NamingException ne ) { System.out.println( "Error parsing file " + ne.toString() ) ; System.exit( -1 ) ; } - l_encoder.encode( null, m_socket.getOutputStream(), l_request ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ) ; ModifyResponse l_modifyResponse = ( ModifyResponse ) l_decoder.decode( null, m_socket.getInputStream() ) ; - LdapResult l_result = l_modifyResponse.getLdapResult() ; - + l_clientResponse.setResultCode ( l_modifyResponse.getLdapResult().getResultCode().getValue() ) ; l_clientResponse.setErrorMessage( @@ -697,30 +681,20 @@ LdapClientResponse l_clientReponse = new LdapClientResponse () ; Object l_response = new Object () ; SearchResponseDoneImpl l_searchResponseDone = - new SearchResponseDoneImpl ( BigInteger.ONE ); + new SearchResponseDoneImpl ( 1 ); SearchResponseEntryImpl l_searchResponseEntry ; - SearchResponseReferenceImpl l_searchResponseReference ; FilterParser l_filter = null ; ExprNode l_expr = null ; - ScopeEnum l_scope = null; - - SearchRequest l_request = new SearchRequestImpl( m_messageId ) ; - m_messageId.add( BigInteger.ONE ) ; + + SearchRequest l_request = new SearchRequestImpl( id ) ; + id++; // Setup the ASN1 Enoder and Decoder MessageEncoder l_encoder = new MessageEncoder(); MessageDecoder l_decoder = new MessageDecoder(); - - try - { - l_filter = new FilterParserImpl () ; - } - catch ( IOException e ) - { - System.out.println( "Failed to create Filter Parser" + e.getMessage() ) ; - System.exit( 1 ) ; - } - + + l_filter = new FilterParserImpl () ; + try { l_expr = l_filter.parse( a_parms.getFilter() ) ; @@ -741,18 +715,16 @@ l_request.setBase( a_parms.getBase() ); l_request.setScope( a_parms.getScope() ) ; l_request.setDerefAliases( DerefAliasesEnum.NEVERDEREFALIASES ) ; - l_request.setTimeLimit( - BigInteger.valueOf( ( long ) a_parms.getMaxEntries() ) ) ; - l_request.setSizeLimit( - BigInteger.valueOf( ( long ) a_parms.getMaxEntries() ) ) ; + l_request.setTimeLimit( a_parms.getMaxTime() ) ; + l_request.setSizeLimit( a_parms.getMaxEntries() ) ; l_request.setTypesOnly( a_parms.isTypesMode() ) ; -// System.out.println( "Sending the following request to the ldap" -// + " server " + a_parms.getHost() + ":" + a_parms.getPort() + "\n" +// System.out.println( "Sending the following request to the ldap" +// + " server " + a_parms.getHost() + ":" + a_parms.getPort() + "\n" // + requestToString( l_request ) ) ; - + // Send encoded request to server - l_encoder.encode( null, m_socket.getOutputStream(), l_request ) ; + l_encoder.encodeBlocking( null, m_socket.getOutputStream(), l_request ) ; // Retrieve the response back from server to my last request. l_response = l_decoder.decode( null, m_socket.getInputStream() ) ; @@ -801,7 +773,6 @@ public void printAttributeNames ( NamingEnumeration a_attributeList ) { Attribute l_attr; - NamingEnumeration l_attrValues; while ( a_attributeList.hasMoreElements() ) {
