[
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]