[
https://jira.jboss.org/browse/JBIDE-7503?page=com.atlassian.jira.plugin.s...
]
Andre Dietisheim edited comment on JBIDE-7503 at 11/5/10 5:04 PM:
------------------------------------------------------------------
the properties view gets blank because the cloud view looses its selection. The reason for
this is that the child items in the treeviewer are replaced by new ones and there's no
chance for the viewer to know which new instance corresponds to the formerly selected
one:
1) if you start/stop/reboot/destroy an instance, DeltaCloud#performInstanceAction is
executed
2) DeltaCloud#pperformInstanceAction:
notifies of a change in an instance (it was stopped, started, etc.)
The current design relies on notifying the whole list of instances (not only the changed
one!)
3.) CVInstanceCategory#listChanged:
gets notified of the change in the list. It then removes all child instances, adds new
instances and refreshes the TreeViewer (see the calls to clearChildren() and
addInstances()):
public void listChanged(DeltaCloud cloud, DeltaCloudInstance[] newInstances) {
clearChildren();
DeltaCloudInstance[] instances = filter(newInstances);
addInstances(instances);
initialized = true;
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
((TreeViewer)viewer).refresh(category, false);
}
});
}
was (Author: adietish):
the properties view gets blank because the cloud view looses its selection. The reason
for this is that the child items in the treeviewer are replaced by new ones and
there's no chance for the viewer to know which new instance corresponds to the
formerly selected one:
1) if you start/stop/reboot/destroy an instance, DeltaCloud#performInstanceAction is
executed
2) DeltaCloud#pperformInstanceAction:
notifies of a change in an instance (it was stopped, started, etc.)
The current design relies on notifying the whole list of instances (not only the changed
one!)
3.) CVInstanceCategory#listChanged:
gets notified of the change in the list of the change in the list of instances. It then
clears the whole list of child instances and re-adds the instances that it got notified of
and refreshes the TreeViewer (see the calls to clearChildren() and addInstances()):
public void listChanged(DeltaCloud cloud, DeltaCloudInstance[] newInstances) {
clearChildren();
DeltaCloudInstance[] instances = filter(newInstances);
addInstances(instances);
initialized = true;
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
((TreeViewer)viewer).refresh(category, false);
}
});
}
Properties View, Instance View: instance states are not updated
---------------------------------------------------------------
Key: JBIDE-7503
URL:
https://jira.jboss.org/browse/JBIDE-7503
Project: Tools (JBoss Tools)
Issue Type: Bug
Components: deltacloud
Affects Versions: 3.2.0.Beta2
Reporter: Andre Dietisheim
Assignee: Andre Dietisheim
Fix For: 3.2.0.Beta2
how to reproduce:
1) have the Properties View opened
2) go to the Cloud View
3) select a stopped instance
4) start the instance by selecting Start in the context menu
5) check for updates in the properties view
Result:
In the properties view, the instance is still STOPPED, use refresh in the local view menu
and see that the state is refreshed, the instance is now RUNNIN
Expected result:
the instance in the properties view shall immediately get updated and show the new,
correct state.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira