Return-Path: Delivered-To: apmail-jakarta-httpclient-dev-archive@www.apache.org Received: (qmail 76203 invoked from network); 29 Jun 2006 21:24:26 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 29 Jun 2006 21:24:26 -0000 Received: (qmail 71931 invoked by uid 500); 29 Jun 2006 21:24:25 -0000 Delivered-To: apmail-jakarta-httpclient-dev-archive@jakarta.apache.org Received: (qmail 71846 invoked by uid 500); 29 Jun 2006 21:24:24 -0000 Mailing-List: contact httpclient-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "HttpClient Project" Reply-To: "HttpClient Project" Delivered-To: mailing list httpclient-dev@jakarta.apache.org Received: (qmail 71834 invoked by uid 99); 29 Jun 2006 21:24:24 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 Jun 2006 14:24:24 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [195.186.18.66] (HELO mail21.bluewin.ch) (195.186.18.66) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 Jun 2006 14:24:23 -0700 Received: from [192.168.0.3] (85.2.19.35) by mail21.bluewin.ch (Bluewin 7.3.110.2) id 44A3DCBA0001D6E2 for httpclient-dev@jakarta.apache.org; Thu, 29 Jun 2006 21:24:01 +0000 Subject: [HttpComponents] HttpCookie API redesign From: Oleg Kalnichevski To: HttpClient Project Content-Type: text/plain Date: Thu, 29 Jun 2006 23:24:00 +0200 Message-Id: <1151616241.15243.13.camel@localhost.localdomain> Mime-Version: 1.0 X-Mailer: Evolution 2.6.1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Folks, I have completed the initial rewrite of the cookie management code. Please review the changes and let me know if you find something disagreeable. Here's a short summary of the most important points about the new API * Unlike HttpCore the new HttpCookie API represents an evolutionary continuation of the HttpClient 3.1 API. I mostly ended up removing ill-conceived API shortcuts that have been introduced in the course of the 3.x development to address some immediate problems and ugly left-overs from the 1.x and 2.x days. I also reused the best ideas introduced during the work on the RFC2965 spec. However, conceptually the cookie management API is still very much the same and is based on the same principles. Anyone who is familiar with the HttpClient 3.x cookie management API should be able to pick up the new one relatively easy. Essentially it is the same API only done right. * CookieSpecs are now stateful and are instantiated using an object factory * We were initially planning to make Cookie an interface. I am no longer sure this makes sense. The Cookie class does not have any processing logic left in it and now is merely a value object. There seems nothing to be gained from making Cookie abstract. Please let me know if you agree. * HttpCookie requires Java 1.3 and HttpCore only. It has no dependency on any code in HttpClient outside org.apache.http.cookie package. * HttpCookie code has a very high test coverage (98-100%). I succeeded in reusing almost all existing test cases from HttpClient 3.x branch. Anyways, this is just he very first iteration. Please do take a critical look at what is already there and feel free to suggest improvements. https://svn.apache.org/repos/asf/jakarta/httpcomponents/httpclient/trunk/src/java/org/apache/http/cookie/ Cheers Oleg --------------------------------------------------------------------- To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org