[ 
https://issues.apache.org/jira/browse/PROTON-317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13729762#comment-13729762
 ] 

ASF subversion and git services commented on PROTON-317:
--------------------------------------------------------

Commit 1510646 from r...@apache.org in branch 'proton/trunk'
[ https://svn.apache.org/r1510646 ]

PROTON-317: made pn_data_point and pn_data_restore public
                
> Feature Enhancement - API Exposure of underlying references to internal atoms
> -----------------------------------------------------------------------------
>
>                 Key: PROTON-317
>                 URL: https://issues.apache.org/jira/browse/PROTON-317
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-c
>    Affects Versions: 0.3
>         Environment: Linux / C implementation
>            Reporter: Frank Quinn
>             Fix For: 0.5
>
>
> We're currently creating a pn_message_t and iterating over it using the 
> pn_data_t data type and the various convenience methods surrounding it. This 
> is great for iteration but we were also hoping to have a way to *mark* a 
> point in the payload for future realignment. I looked at get_message_id() but 
> that always seems to return NULL.
>  
> Let's take a pseudo example:
>  
> pn_data_rewind (pn_data);
> while (pn_data_next (pn_data))
> {
>     pn_atom_t atom = pn_data_get_atom (pn_data);
>     if(this_atom_might_be_useful)
>     {
>         // Mark this for potential modification later
>     }
> }
>  
> if (changes_are_required_based_on_a_combination_of_circumstances)
> {
>     // Jump to earlier marker(s)
>  
>     // put in relevant update(s)
> }
>  
> Is there anything we could use for this sort of use case? I want to avoid 
> having to iterate *again* to find values, and I also want to be able to write 
> functions which don't move (or move, then reset) the internal buffer pointers 
> in proton. If there was something like a get_position() or set_position(), 
> that would be perfect.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to