[
https://issues.apache.org/jira/browse/OLINGO-1099?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Christian Amend resolved OLINGO-1099.
-------------------------------------
Resolution: Fixed
Assignee: Christian Amend
Fix Version/s: (Java) V4 4.4.0
Thanks for the contribution. I applied the patch with the following commit:
https://git-wip-us.apache.org/repos/asf?p=olingo-odata4.git;a=commit;h=f55205561ea5a4f7d37b2015e5f06bfdbb704c89
> Refactor the V4 $levels implementation
> --------------------------------------
>
> Key: OLINGO-1099
> URL: https://issues.apache.org/jira/browse/OLINGO-1099
> Project: Olingo
> Issue Type: Improvement
> Components: odata4-server
> Affects Versions: (Java) V4 4.1.0
> Reporter: Archana Rai
> Assignee: Christian Amend
> Priority: Minor
> Fix For: (Java) V4 4.4.0
>
> Attachments: f7aa6aac.diff
>
>
> Refactor the V4 $levels implementation based on the code review notes:
> There have been ExpandSelectHelper changes. If they are not needed revert
> them.
> With version 4.3.0 EntityIds became mandatory in the ODataEntity object.
> Revert this change.
> -> If not there generate the key
> -> if not possible to generate because key fields are missing or the id field
> isn`t set but the Id is mandatory then throw an exception
> $levels specific:
> Do not check for ancestors based on the ODataEntity ID. Just use object
> references and comape with ==
> $levels=1 expandes Navigation properties for the first level. $levels=1 has
> the same functionality as leaving it away.
> ExpandSelectHelper getExpandAll and isExpandAll have the same functionallity.
> Remove on method.
> Important:
> Only navigation properties of the same type get expanded. Not all of them.
> This is a bug.
> Refactor navigation property serialization. There should only be one call to
> writeExpandedNavigation property! Not multiple ones based on some flags etc.
> Check for cycle only if navigation property has to be expanded.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)