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

Andreas Veithen updated WSCOMMONS-346:
--------------------------------------

    Fix Version/s:     (was: Axiom 1.2.10)
                   Axiom 1.2.11

> getFirstChildWithName should not read the next element.
> -------------------------------------------------------
>
>                 Key: WSCOMMONS-346
>                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-346
>             Project: WS-Commons
>          Issue Type: Improvement
>          Components: AXIOM
>            Reporter: Jose Antonio
>            Assignee: Andreas Veithen
>            Priority: Minor
>             Fix For: Axiom 1.2.11
>
>
> When calling getFirstChildWithName operation over an element, it reads not 
> only the first element, but the next also. I think that could be improved 
> since the operation name semantics specifies that the caller is only 
> interested in the first element and not the rest of them, so a iterator (the 
> reason to read the next element) is useless here. Suppose the following 
> scenario.
> <root-element>
>   <chlid-element att="value">
>      <sub-child-element>
>           -- very big content --
>      </sub-child-element>
>   </child-element>
> </root-element>
> I want to read the sub-child-element only in some cases depending on the 
> 'value' attribute. If I call to getFirstElement I get the behaviour I want, 
> since only the header is readed and I can skip and discard the message if it 
> doesn't match. I get the behaviour that I would expect from a StaX parser and 
> a getFirst* method, so I can discard the message quickly. Instead, 
> getFirstElementWithName seems to call internally to getElementsWithName and 
> returns the first occurence, which forces the parser to read the next element 
> and (in this case) the complete big message.
> I think that the efficiency of that method could be improved since, for a 
> StaX model, one expects that the parser only reads the minimal information 
> needed to serve the request. Instead of calling to getElementsWithName, it 
> would be better an implementation based on getFirstElement and then going 
> through getNextOMSibling.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to