[ 
https://issues.apache.org/jira/browse/CAMEL-4427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hadrian Zbarcea updated CAMEL-4427:
-----------------------------------

    Description: 
Hash signs '#' are not quite allowed in URIs. While they do mark a URI 
fragment, a URI cannot have more than one fragment (and hence '#' signs) and 
URI parameters must appear before the fragment.

The [IRC spec|http://www.irchelp.org/irchelp/rfc/rfc.html] mandates channel 
names to start with either a '&' or a '#', both not allowed in a URI (i.e. need 
to be escaped). I am proposing the following changes that will make camel-irc 
URIs valid. Current URIs will still be supported but deprecated until 3.0.

The changes/clarifications are:
1. Current syntax is supported, yet deprecated
2. Current syntax with '#' symbols properly encoded is supported (i.e. a 
channel name will be "%23camel" instead of "camel"
3. Make the '#' symbol optional (i.e. "channels=camel,activemq" is equivalent 
with "channels=%23camel,%23activemq"). That makes URIs simpler, if the '#' is 
missing camel-irc will prepend exacly one '#'.
4. For channels that start with '&' or double "##", like [freenode non-primary 
channels] encoding is mandatory.
5. The userInfo part always represents the username, which could be different 
than the nick. The documentation is not clear on that. By default the nick is 
the same as the username.
6. Username is mandatory.
7. Deprecate the "username" parameter, it must be supplied in the userInfo part 
of the URI.
8. IRC URIs are URLs not URNs; i.e. the scheme must be followed by "://", not 
just ":".

I will update the code to preProcess() camel-irc URIs to follow the rules above 
and update the documentation.


  was:
Hash signs '#' are not quite allowed in URIs. While they do mark a URI 
fragment, a URI cannot have more than one fragment (and hence '#' signs) and 
URI parameters must appear before the fragment.

The [IRC spec|http://www.irchelp.org/irchelp/rfc/rfc.html] mandates channel 
names to start with either a '&' or a '#', both not allowed in a URI (i.e. need 
to be escaped). I am proposing the following changes that will make camel-irc 
URIs valid. Current URIs will still be supported but deprecated until 3.0.

The changes/clarifications are:
1. Current syntax is supported, yet deprecated
2. Current syntax with '#' symbols properly encoded is supported (i.e. a 
channel name will be "%23camel" instead of "camel"
3. Make the '#' symbol optional (i.e. "channels=camel,activemq" is equivalent 
with "channels=%23camel,%23activemq"). That makes URIs simpler, if the '#' is 
missing camel-irc will prepend exacly one '#'.
4. For channels that start with '&' or double "##", like [freenode non-primary 
channels] encoding is mandatory.
5. The userInfo part always represents the username, which could be different 
than the nick. The documentation is not clear on that. By default the nick is 
the same as the username.
6. Deprecate the "username" parameter, it must be supplied in the userInfo part 
of the URI.
7. IRC URIs are URLs not URNs; i.e. the scheme must be followed by "://", not 
just ":".

I will update the code to preProcess() camel-irc URIs to follow the rules above 
and update the documentation.



> Fix URI definition for camel-irc to provide valid URIs
> ------------------------------------------------------
>
>                 Key: CAMEL-4427
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4427
>             Project: Camel
>          Issue Type: Sub-task
>          Components: camel-irc
>    Affects Versions: 2.8.0
>            Reporter: Hadrian Zbarcea
>            Assignee: Hadrian Zbarcea
>             Fix For: 2.9.0
>
>
> Hash signs '#' are not quite allowed in URIs. While they do mark a URI 
> fragment, a URI cannot have more than one fragment (and hence '#' signs) and 
> URI parameters must appear before the fragment.
> The [IRC spec|http://www.irchelp.org/irchelp/rfc/rfc.html] mandates channel 
> names to start with either a '&' or a '#', both not allowed in a URI (i.e. 
> need to be escaped). I am proposing the following changes that will make 
> camel-irc URIs valid. Current URIs will still be supported but deprecated 
> until 3.0.
> The changes/clarifications are:
> 1. Current syntax is supported, yet deprecated
> 2. Current syntax with '#' symbols properly encoded is supported (i.e. a 
> channel name will be "%23camel" instead of "camel"
> 3. Make the '#' symbol optional (i.e. "channels=camel,activemq" is equivalent 
> with "channels=%23camel,%23activemq"). That makes URIs simpler, if the '#' is 
> missing camel-irc will prepend exacly one '#'.
> 4. For channels that start with '&' or double "##", like [freenode 
> non-primary channels] encoding is mandatory.
> 5. The userInfo part always represents the username, which could be different 
> than the nick. The documentation is not clear on that. By default the nick is 
> the same as the username.
> 6. Username is mandatory.
> 7. Deprecate the "username" parameter, it must be supplied in the userInfo 
> part of the URI.
> 8. IRC URIs are URLs not URNs; i.e. the scheme must be followed by "://", not 
> just ":".
> I will update the code to preProcess() camel-irc URIs to follow the rules 
> above and update the documentation.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to