diff options
Diffstat (limited to 'java/src/IceGrid/TreeNode/Adapter.java')
-rwxr-xr-x | java/src/IceGrid/TreeNode/Adapter.java | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/java/src/IceGrid/TreeNode/Adapter.java b/java/src/IceGrid/TreeNode/Adapter.java index 25357b0b1ed..daf8ebdefa1 100755 --- a/java/src/IceGrid/TreeNode/Adapter.java +++ b/java/src/IceGrid/TreeNode/Adapter.java @@ -185,11 +185,36 @@ class Adapter extends Leaf _descriptor = descriptor;
_editable = editable;
_resolver = resolver;
+
+ if(resolver != null)
+ {
+ //
+ // In a server instance
+ //
+ _adapterId = _resolver.substitute(_descriptor.id);
+
+ _proxy = _model.getRoot().registerAdapter(_resolver.find("node"),
+ _resolver.find("server"),
+ _adapterId,
+ this);
+ createToolTip();
+ }
}
+ public void cleanup()
+ {
+ if(_resolver != null)
+ {
+ _model.getRoot().unregisterAdapter(_resolver.find("node"),
+ _resolver.find("server"),
+ _adapterId,
+ this);
+ }
+ }
void updateProxy(Ice.ObjectPrx proxy)
{
+ assert _resolver != null;
_proxy = proxy;
createToolTip();
fireNodeChangedEvent(this);
|