ICEfaces
  1. ICEfaces
  2. ICE-3701

Tree navigatedNode currentNode state saving

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Invalid
    • Affects Version/s: 1.8DR#1
    • Fix Version/s: 1.8DR#2, 1.8
    • Component/s: ICE-Components
    • Labels:
      None
    • Environment:
      All

      Description

      Tree's navigatedNode currentNode fields are both DefaultMutableTreeNode objects, which means that trying to save the last selected or expanded node info, may serialize the entire tree model (twice). That could also entail a memory leak, if the model changes, while these two fields continue referencing the old model's nodes. We need to instead be storing some kind of path expression, and just look up the nodes as needed.

        Issue Links

          Activity

          Mark Collette created issue -
          Mark Collette made changes -
          Field Original Value New Value
          Fix Version/s 1.8DR#2 [ 10142 ]
          Assignee Mark Collette [ mark.collette ]
          Mark Collette made changes -
          Link This issue depends on ICE-3442 [ ICE-3442 ]
          Mark Collette made changes -
          Link This issue depends on ICE-3696 [ ICE-3696 ]
          Mark Collette made changes -
          Link This issue depends on ICE-3696 [ ICE-3696 ]
          Mark Collette made changes -
          Link This issue depends on ICE-3442 [ ICE-3442 ]
          Mark Collette made changes -
          Link This issue blocks ICE-3442 [ ICE-3442 ]
          Mark Collette made changes -
          Link This issue blocks ICE-3696 [ ICE-3696 ]
          Ken Fyten made changes -
          Assignee Priority P1
          Assignee Mark Collette [ mark.collette ] Adnan Durrani [ adnan.durrani ]
          Repository Revision Date User Message
          ICEsoft Public SVN Repository #17859 Mon Nov 03 13:27:36 MST 2008 adnan.durrani Fix related to the ICE-3701 (Tree navigatedNode currentNode state saving)
          Support added so the getNavigatedNode would work after save/restore, if accessed by the bean directly.
          Files Changed
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/tree/Tree.java
          Commit graph MODIFY /icefaces/trunk/icefaces/component/src/com/icesoft/faces/component/tree/TreeRenderer.java
          Adnan Durrani made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          Hide
          Adnan Durrani added a comment -

          It came across that both the "navigatedNode" and the "currentNode" do not need to saved/restore.

          Reason:

          • navigatedNode:
            The "navigated node" property has never being accessed. However the decode method of the Tree component do the lookup of the "navigated node" using the "navigatedPathNode" sent by the client, to just to flip the Expended state. So it doesn't require state variable.
          • currentNode:
            The "currentNode" is a state variable which represents the current processing node, which is set inside the iteration and its not required after JSF lifecycle completes.
          Show
          Adnan Durrani added a comment - It came across that both the "navigatedNode" and the "currentNode" do not need to saved/restore. Reason: navigatedNode: The "navigated node" property has never being accessed. However the decode method of the Tree component do the lookup of the "navigated node" using the "navigatedPathNode" sent by the client, to just to flip the Expended state. So it doesn't require state variable. currentNode: The "currentNode" is a state variable which represents the current processing node, which is set inside the iteration and its not required after JSF lifecycle completes.
          Adnan Durrani made changes -
          Status In Progress [ 3 ] Resolved [ 5 ]
          Resolution Invalid [ 6 ]
          Hide
          Adnan Durrani added a comment -

          We have added the save/restore support to for the "navigatedNode" using the "navigatedNodePath". Considering the fact that the "navigatedNode" is a public property and might be accessed by the application code.

          trunk: revision 17859

          Show
          Adnan Durrani added a comment - We have added the save/restore support to for the "navigatedNode" using the "navigatedNodePath". Considering the fact that the "navigatedNode" is a public property and might be accessed by the application code. trunk: revision 17859
          Ken Fyten made changes -
          Fix Version/s 1.8 [ 10161 ]
          Assignee Priority P1
          Ken Fyten made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Assignee Adnan Durrani [ adnan.durrani ]

            People

            • Assignee:
              Unassigned
              Reporter:
              Mark Collette
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: