@@ -178,12 +178,12 @@ class IncrementalBranch(val branch: IBranch) : IBranch, IBranchWrapper {
178
178
}
179
179
180
180
override fun getConcept (nodeId : Long ): IConcept ? {
181
- accessed(UnclassifiedNodeDependency (this @IncrementalBranch, nodeId))
181
+ accessed(ConceptDependency (this @IncrementalBranch, nodeId))
182
182
return transaction.getConcept(nodeId)
183
183
}
184
184
185
185
override fun getConceptReference (nodeId : Long ): IConceptReference ? {
186
- accessed(UnclassifiedNodeDependency (this @IncrementalBranch, nodeId))
186
+ accessed(ConceptDependency (this @IncrementalBranch, nodeId))
187
187
return transaction.getConceptReference(nodeId)
188
188
}
189
189
@@ -331,11 +331,8 @@ class IncrementalBranch(val branch: IBranch) : IBranch, IBranchWrapper {
331
331
}
332
332
333
333
override fun setConcept (nodeId : Long , concept : IConceptReference ? ) {
334
- val oldParentId = transaction.getParent(nodeId)
335
- val oldRole = transaction.getRole(nodeId)
336
334
transaction.setConcept(nodeId, concept)
337
- modified(ChildrenDependency (this @IncrementalBranch, oldParentId, oldRole))
338
- modified(UnclassifiedNodeDependency (this @IncrementalBranch, nodeId))
335
+ modified(ConceptDependency (this @IncrementalBranch, nodeId))
339
336
}
340
337
341
338
override fun deleteNode (nodeId : Long ) {
@@ -378,12 +375,12 @@ class IncrementalBranch(val branch: IBranch) : IBranch, IBranchWrapper {
378
375
}
379
376
380
377
override fun getConcept (nodeId : Long ): IConcept ? {
381
- accessed(UnclassifiedNodeDependency (this @IncrementalBranch, nodeId))
378
+ accessed(ConceptDependency (this @IncrementalBranch, nodeId))
382
379
return tree.getConcept(nodeId)
383
380
}
384
381
385
382
override fun getConceptReference (nodeId : Long ): IConceptReference ? {
386
- accessed(UnclassifiedNodeDependency (this @IncrementalBranch, nodeId))
383
+ accessed(ConceptDependency (this @IncrementalBranch, nodeId))
387
384
return tree.getConceptReference(nodeId)
388
385
}
389
386
@@ -502,6 +499,11 @@ data class BranchDependency(val branch: IBranch) : IStateVariableReference<IBran
502
499
override fun read (): IBranch = branch
503
500
}
504
501
502
+ /* *
503
+ * Catch-all dependency for changes to a node.
504
+ * It's the group dependency for a single node.
505
+ * Also used directly when a node is added/deleted as a whole.
506
+ */
505
507
data class UnclassifiedNodeDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
506
508
override fun getGroup (): IStateVariableGroup ? {
507
509
return try {
@@ -516,34 +518,70 @@ data class UnclassifiedNodeDependency(val branch: IBranch, val nodeId: Long) : D
516
518
}
517
519
}
518
520
521
+ /* *
522
+ * Dependency for a single property change.
523
+ *
524
+ * @see AllPropertiesDependency
525
+ */
519
526
data class PropertyDependency (val branch : IBranch , val nodeId : Long , val role : String ) : DependencyBase() {
520
527
override fun getGroup () = AllPropertiesDependency (branch, nodeId)
521
528
}
522
529
530
+ /* *
531
+ * Dependency for a single reference change.
532
+ *
533
+ * @see AllReferencesDependency
534
+ */
523
535
data class ReferenceDependency (val branch : IBranch , val nodeId : Long , val role : String ) : DependencyBase() {
524
536
override fun getGroup () = AllReferencesDependency (branch, nodeId)
525
537
}
526
538
539
+ /* *
540
+ * Dependency for a single child role change.
541
+ *
542
+ * @see AllChildrenDependency
543
+ */
527
544
data class ChildrenDependency (val branch : IBranch , val nodeId : Long , val role : String? ) : DependencyBase() {
528
545
override fun getGroup () = AllChildrenDependency (branch, nodeId)
529
546
}
530
547
548
+ /* *
549
+ * Dependency for any child role changes.
550
+ *
551
+ * @see ChildrenDependency
552
+ */
531
553
data class AllChildrenDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
532
554
override fun getGroup () = UnclassifiedNodeDependency (branch, nodeId)
533
555
}
534
556
557
+ /* *
558
+ * Dependency for any reference changes.
559
+ *
560
+ * @see ReferenceDependency
561
+ */
535
562
data class AllReferencesDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
536
563
override fun getGroup () = UnclassifiedNodeDependency (branch, nodeId)
537
564
}
538
565
566
+ /* *
567
+ * Dependency for any property changes.
568
+ *
569
+ * @see PropertyDependency
570
+ */
539
571
data class AllPropertiesDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
540
572
override fun getGroup () = UnclassifiedNodeDependency (branch, nodeId)
541
573
}
542
574
575
+ /* *
576
+ * Dependency for parent or role in parent changes.
577
+ */
543
578
data class ContainmentDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
544
579
override fun getGroup () = UnclassifiedNodeDependency (branch, nodeId)
545
580
}
546
581
582
+ /* *
583
+ * Dependency for concept changes.
584
+ */
547
585
data class ConceptDependency (val branch : IBranch , val nodeId : Long ) : DependencyBase() {
548
586
override fun getGroup (): IStateVariableGroup = UnclassifiedNodeDependency (branch, nodeId)
549
587
}
0 commit comments