From 99eed1e3c7e7292aea91131baeb36f81e23e3e82 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Tue, 26 Jun 2012 12:41:11 +0200 Subject: Initial refactor from kernel --- .../java/com/c2kernel/gui/tree/NodeContext.java | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/main/java/com/c2kernel/gui/tree/NodeContext.java (limited to 'src/main/java/com/c2kernel/gui/tree/NodeContext.java') diff --git a/src/main/java/com/c2kernel/gui/tree/NodeContext.java b/src/main/java/com/c2kernel/gui/tree/NodeContext.java new file mode 100644 index 0000000..b2d215c --- /dev/null +++ b/src/main/java/com/c2kernel/gui/tree/NodeContext.java @@ -0,0 +1,65 @@ +package com.c2kernel.gui.tree; + +import java.util.Enumeration; + +import com.c2kernel.entity.proxy.DomainPathSubscriber; +import com.c2kernel.gui.EntityTabManager; +import com.c2kernel.lookup.DomainPath; +import com.c2kernel.lookup.Path; +import com.c2kernel.process.Gateway; +import com.c2kernel.utils.Logger; + + +public class NodeContext extends Node implements DomainPathSubscriber { + Enumeration children; + + public NodeContext(Path path, EntityTabManager desktop) { + super(path, desktop); + this.sysKey=Path.INVALID; + createTreeNode(); + this.makeExpandable(); + this.type = "Cristal Context"; + } + + + @Override + public void loadChildren() { + if (children == null) { + Gateway.getProxyManager().subscribeTree(this, (DomainPath)binding); + children = binding.getChildren(); + } + + int batch = 75; + while (children.hasMoreElements() && batch > 0) { + Path newPath = children.nextElement(); + if (newPath == null) break; + Logger.msg(2, "Subscription.run() - new node: " + newPath ); + add( newNode(newPath)); + batch--; + } + end(children.hasMoreElements()); + } + + @Override + public void pathAdded(DomainPath path) { + add(newNode(path)); + } + + @Override + public void refresh() { + children = null; + super.refresh(); + } + @Override + public void pathRemoved(DomainPath path) { + remove(path); + } + +} + + + + + + + -- cgit v1.2.3