11package org .finos .vuu .core .tree
22
33import com .typesafe .scalalogging .StrictLogging
4+ import org .finos .toolbox .collection .array .ImmutableArray
5+ import org .finos .toolbox .jmx .MetricsProvider
6+ import org .finos .toolbox .text .AsciiUtil
7+ import org .finos .toolbox .time .Clock
48import org .finos .vuu .api .{GroupByColumns , GroupByTableDef , TableDef }
59import org .finos .vuu .core .table ._
610import org .finos .vuu .net .ClientSessionId
711import org .finos .vuu .provider .JoinTableProvider
812import org .finos .vuu .viewport ._
9- import org .finos .toolbox .collection .array .ImmutableArray
10- import org .finos .toolbox .jmx .MetricsProvider
11- import org .finos .toolbox .text .AsciiUtil
12- import org .finos .toolbox .time .Clock
13- import org .finos .vuu .viewport .tree .{EmptyTree , Tree , TreeNode , TreeNodeState }
13+ import org .finos .vuu .viewport .tree .{EmptyTree , Tree , TreeNode }
1414
1515import java .util .concurrent .{ConcurrentHashMap , ConcurrentMap }
1616import scala .jdk .CollectionConverters ._
@@ -248,17 +248,11 @@ class TreeSessionTableImpl(val source: RowSource, val session: ClientSessionId,
248248// //this.notifyListeners(treeKey, false)
249249// }
250250
251- def mapKeyToTreeKey (rowUpdate : RowKeyUpdate ): RowKeyUpdate = {
251+ def mapKeyToTreeKey (nodeKey : String , treeKey : String , rowUpdate : RowKeyUpdate ): RowKeyUpdate = {
252252
253- val node = this .getTree.getNodeByOriginalKey(rowUpdate.key)
254-
255- val mapped = if (node != null ) {
256- rowUpdate.copy(key = node.key, source = this )
257- } else {
258- null
259- }
253+ val mapped = rowUpdate.copy(key = treeKey, source = this )
260254 if (mapped != null ) {
261- logger.debug(s " Found node $node for originalKey ${rowUpdate.key } mapped to ${node.key }" )
255+ logger.debug(s " Found node for originalKey ${nodeKey } mapped to ${treeKey }" )
262256 }
263257
264258 mapped
@@ -276,7 +270,7 @@ class TreeSessionTableImpl(val source: RowSource, val session: ClientSessionId,
276270
277271 logger.debug(s " Adding key observer ${originalKey} for tree key ${key}" )
278272
279- val wappedObserver = new WrappedUpdateHandlingKeyObserver [RowKeyUpdate ](mapKeyToTreeKey, observer, originalKey)
273+ val wappedObserver = new WrappedUpdateHandlingKeyObserver [RowKeyUpdate ](mapKeyToTreeKey(originalKey, key, _) , observer, originalKey)
280274
281275 wrappedObservers.put(key, wappedObserver)
282276
0 commit comments