Return-Path: Delivered-To: apmail-jakarta-httpcomponents-dev-archive@www.apache.org Received: (qmail 69267 invoked from network); 23 Aug 2007 09:22:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Aug 2007 09:22:52 -0000 Received: (qmail 88098 invoked by uid 500); 23 Aug 2007 09:22:48 -0000 Delivered-To: apmail-jakarta-httpcomponents-dev-archive@jakarta.apache.org Received: (qmail 88065 invoked by uid 500); 23 Aug 2007 09:22:48 -0000 Mailing-List: contact httpcomponents-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "HttpComponents Project" Delivered-To: mailing list httpcomponents-dev@jakarta.apache.org Received: (qmail 88056 invoked by uid 99); 23 Aug 2007 09:22:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2007 02:22:48 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2007 09:22:51 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 214B8714204 for ; Thu, 23 Aug 2007 02:22:31 -0700 (PDT) Message-ID: <3244380.1187860951132.JavaMail.jira@brutus> Date: Thu, 23 Aug 2007 02:22:31 -0700 (PDT) From: "Roland Weber (JIRA)" To: httpcomponents-dev@jakarta.apache.org Subject: [jira] Updated: (HTTPCORE-110) refactor message parsing and formatting, step 2 In-Reply-To: <10356420.1187513130986.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HTTPCORE-110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Roland Weber updated HTTPCORE-110: ---------------------------------- Attachment: 2k7-08-23-parser-2.txt Here's the next step. The header section parsing has been moved into a separate class, which is stateful. The class basically encapsulates the parsing logic found in nio.AbstractMessageParser. With respect to object creations, for blocking IO the change should be neutral for the message head and add one object per footer section being received. The same interface and class can be used for NIO in AbstractMessageParser and ChunkedInput, where it would add one object creation per message and footer, respectively. The logic there is a bit intricate though, I would prefer not to change it myself. If I hear no complains by tomorrow evening (CET), I will commit this patch and proceed with subsequent cleanup. cheers, Roland > refactor message parsing and formatting, step 2 > ----------------------------------------------- > > Key: HTTPCORE-110 > URL: https://issues.apache.org/jira/browse/HTTPCORE-110 > Project: HttpComponents Core > Issue Type: Improvement > Components: HttpCore > Affects Versions: 4.0-alpha5 > Reporter: Roland Weber > Assignee: Roland Weber > Fix For: 4.0-alpha6 > > Attachments: 2k7-08-20-parser-1.txt, 2k7-08-23-parser-2.txt > > > The line-level parsing and formatting for HTTP messages is spread across static helper methods in o.a.h.message. Refactor the code to allow for easy replacement of these parser and formatter elements, which are used by both core and NIO. > Ideally, handling of header continuation lines, which is currently still implemented in specific parsers for blocking and NIO, could be factored out too. That would require a stateful parser. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: httpcomponents-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: httpcomponents-dev-help@jakarta.apache.org