Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 273801 - NavigationNode enhancement for NavigationArgument
Summary: NavigationNode enhancement for NavigationArgument
Status: RESOLVED FIXED
Alias: None
Product: Riena
Classification: RT
Component: navigation (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: 1.1.0.M7   Edit
Assignee: Christian Campo CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-04-27 05:42 EDT by Stefan Flick CLA
Modified: 2011-05-18 12:06 EDT (History)
1 user (show)

See Also:


Attachments
patch file with the enhancement (10.31 KB, patch)
2009-04-27 05:43 EDT, Stefan Flick CLA
christian.campo: iplog+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Flick CLA 2009-04-27 05:42:41 EDT
We need the possibility to set a NavigationArgument not only for the navigate() api, but also for the create() api.  With the given patch the interface and implementation is extended. The current NavigationArgument is stored in the node context. There is an api to access the NavigationArgument,. With the current implementation the ViewController classes didn't have access to the NavigationArgument. Now they can use the getNavigationArgument()  from the node to get access.

Also it's now possible to use the create() api to let build navigation nodes from other assemblers. In the past you must use the assemblers buildNode() method. This makes it nessecary to have the assemblers defining bundle in the dependency chain. Now the coupling is done via the extension point of an assembly. No furtehr dependency (except the knowledge of the NavigationNodes typeId) is nessecary.

The attached patch is based on the current HEAD from 1.1.0m7
Comment 1 Stefan Flick CLA 2009-04-27 05:43:52 EDT
Created attachment 133330 [details]
patch file with the enhancement

patchfile is based on the latest HEAD of 1.1.0m7
Comment 2 Christian Campo CLA 2009-04-27 07:50:25 EDT
hi stefan, why does the controller need to access the navigationargument itself. I thought the important part was to access the object inside the NavigationArgument which can already be accessed with the current API.

Is the create() api meant to replace all your assemblers as an alternate API for building node trees ?

Just curious.
Comment 3 Christian Campo CLA 2009-04-27 09:33:02 EDT
fixed for 1.1.0.M7