You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by jo...@apache.org on 2021/09/24 09:04:33 UTC
[isis] 02/03: ISIS-2846 Extensions attribute changes adopted,
class refactored
This is an automated email from the ASF dual-hosted git repository.
joergrade pushed a commit to branch ISIS-2872
in repository https://gitbox.apache.org/repos/asf/isis.git
commit cfd1da2b5aa781604e9265c213a8033c2060014a
Author: Jörg Rade <jo...@kuehne-nagel.com>
AuthorDate: Mon Sep 20 09:04:26 2021 +0200
ISIS-2846 Extensions attribute changes adopted, class refactored
---
.../kroviz/core/aggregator/AggregatorWithLayout.kt | 6 ++-
.../kroviz/core/model/CollectionProperties.kt | 4 +-
.../org/apache/isis/client/kroviz/to/Action.kt | 1 +
.../org/apache/isis/client/kroviz/to/Collection.kt | 3 +-
.../org/apache/isis/client/kroviz/to/DomainType.kt | 5 +-
.../org/apache/isis/client/kroviz/to/Member.kt | 1 +
.../isis/client/kroviz/to/PlainTransferObjects.kt | 21 +++-----
.../org/apache/isis/client/kroviz/to/TObject.kt | 1 +
.../apache/isis/client/kroviz/to/mb/Extensions.kt | 56 ++++++++++++++++++++++
.../client/kroviz/ui/diagram/LinkTreeDiagram.kt | 4 +-
.../snapshots/demo2_0_0/COLLECTION_DESCRIPTION.kt | 3 +-
.../apache/isis/client/kroviz/to/DomainTypeTest.kt | 2 +-
.../org/apache/isis/client/kroviz/to/MemberTest.kt | 5 +-
.../apache/isis/client/kroviz/to/PropertyTest.kt | 5 +-
.../client/kroviz/ui/table/LinkTreeDiagramTest.kt | 39 +++++++--------
.../client/kroviz/ui/table/TableFactoryTest.kt | 6 +--
16 files changed, 109 insertions(+), 53 deletions(-)
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/aggregator/AggregatorWithLayout.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/aggregator/AggregatorWithLayout.kt
index 32ed837..434fa1b 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/aggregator/AggregatorWithLayout.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/aggregator/AggregatorWithLayout.kt
@@ -19,12 +19,14 @@ abstract class AggregatorWithLayout : BaseAggregator() {
}
protected fun handleLayout(layout: Layout, dm: DisplayModelWithLayout, referrer: String) {
+ console.log("[CA.handleLayout] ISIS-2846")
+ console.log(layout)
if (dm.layout == null) {
dm.addLayout(layout)
dm.properties.propertyLayoutList.forEach { p ->
val l = p.link
if (l == null) {
- // console.log(p.id + " link empty") // ISIS-2846
+ console.log(p.id + " link empty") // ISIS-2846
} else {
val isDn = l.href.contains("datanucleus")
if (!isDn) {
@@ -36,7 +38,7 @@ abstract class AggregatorWithLayout : BaseAggregator() {
}
}
- protected fun invokeLayoutLink(obj: TObject, aggregator: AggregatorWithLayout, referrer :String) {
+ protected fun invokeLayoutLink(obj: TObject, aggregator: AggregatorWithLayout, referrer: String) {
val l = obj.getLayoutLink()
if (l.representation() == Represention.OBJECT_LAYOUT_BS3) {
invoke(l, aggregator, Constants.subTypeXml, referrer)
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/model/CollectionProperties.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/model/CollectionProperties.kt
index e48782b..e821481 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/model/CollectionProperties.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/core/model/CollectionProperties.kt
@@ -19,8 +19,8 @@
package org.apache.isis.client.kroviz.core.model
import org.apache.isis.client.kroviz.layout.PropertyLt
-import org.apache.isis.client.kroviz.to.Extensions
import org.apache.isis.client.kroviz.to.Property
+import org.apache.isis.client.kroviz.to.mb.Extensions
class CollectionProperties() {
val list = mutableListOf<ColumnProperties>()
@@ -58,7 +58,7 @@ class CollectionProperties() {
val id = description.id
val cp = findOrCreate(id)
val e: Extensions = description.extensions!!
- cp.friendlyName = e.friendlyName
+ cp.friendlyName = e.getFriendlyName()
}
private fun findOrCreate(id: String): ColumnProperties {
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Action.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Action.kt
index f62cbfe..ee5d392 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Action.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Action.kt
@@ -19,6 +19,7 @@
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
@Serializable
data class Action(val id: String,
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Collection.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Collection.kt
index 31f8848..d220e26 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Collection.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Collection.kt
@@ -19,6 +19,7 @@
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
@Serializable
data class Collection(val id: String,
@@ -27,4 +28,4 @@ data class Collection(val id: String,
val extensions: Extensions,
val value: List<Link> = emptyList(),
val disabledReason: String = ""
-) : TransferObject, HasLinks {}
+) : TransferObject, HasLinks
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/DomainType.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/DomainType.kt
index 3f4c0d5..ca024dd 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/DomainType.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/DomainType.kt
@@ -20,6 +20,7 @@
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
@Serializable
data class DomainType(
@@ -28,6 +29,4 @@ data class DomainType(
val members: Map<String, Link>,
val typeActions: Map<String, Link>,
val extensions: Extensions
-) : TransferObject, HasLinks {
-
-}
+) : TransferObject, HasLinks
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Member.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Member.kt
index 82d8e07..d9401b2 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Member.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/Member.kt
@@ -19,6 +19,7 @@
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
@Serializable
data class Member(val id: String,
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/PlainTransferObjects.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/PlainTransferObjects.kt
index 24e8217..2d05e0d 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/PlainTransferObjects.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/PlainTransferObjects.kt
@@ -16,11 +16,11 @@
* specific language governing permissions and limitations
* under the License.
*/
-
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
enum class ActionSemantics(val type: String) {
IDEMPOTENT("idempotent"),
@@ -35,20 +35,6 @@ data class DomainTypes(override val links: List<Link> = emptyList(),
) : TransferObject, HasLinks
@Serializable
-data class Extensions(val oid: String = "",
- val isService: Boolean = false,
- val isPersistent: Boolean = false,
- val menuBar: String? = MenuBarPosition.PRIMARY.position,
- val actionSemantics: String? = null,
- val actionType: String = "",
- @SerialName("x-isis-format") val xIsisFormat: String? = null,
- val friendlyName: String = "",
- val collectionSemantics: String? = null,
- val pluralName: String = "",
- val description: String = ""
-) : TransferObject
-
-@Serializable
data class HttpError(
val httpStatusCode: Int,
val message: String,
@@ -87,6 +73,11 @@ enum class Method(val operation: String) {
// DELETE("DELETE") not used - Apache Isis defines delete operations on DomainObjects
}
+enum class Position(val type: String) {
+ PANEL("PANEL"),
+ PANEL_DROPDOWN("PANEL_DROPDOWN")
+}
+
@Serializable
data class Property(val id: String = "",
val memberType: String = "",
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/TObject.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/TObject.kt
index d0ba6b4..fd1be37 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/TObject.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/TObject.kt
@@ -19,6 +19,7 @@
package org.apache.isis.client.kroviz.to
import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.mb.Extensions
@Serializable
data class TObject(override val links: List<Link> = emptyList(),
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/mb/Extensions.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/mb/Extensions.kt
new file mode 100644
index 0000000..adfd028
--- /dev/null
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/to/mb/Extensions.kt
@@ -0,0 +1,56 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.isis.client.kroviz.to.mb
+
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
+import org.apache.isis.client.kroviz.to.MenuBarPosition
+import org.apache.isis.client.kroviz.to.TransferObject
+
+@Serializable
+data class Extensions(val oid: String = "",
+ val isService: Boolean = false,
+ val isPersistent: Boolean = false,
+ val menuBar: String? = MenuBarPosition.PRIMARY.position,
+ val actionSemantics: String? = null,
+ val actionType: String = "",
+ @SerialName("x-isis-format") val xIsisFormat: String? = null,
+ private val friendlyName: String = "",
+ private val friendlyNameForm: String = "",
+ val collectionSemantics: String? = null,
+ val pluralName: String = "",
+ private val description: String = "",
+ private val descriptionForm: String = ""
+) : TransferObject {
+
+ fun getFriendlyName(): String {
+ if (friendlyName.isEmpty()) {
+ console.log("[Extensions.getFriendlyName] is empty")
+ }
+ return friendlyName
+ }
+
+ fun getDescription(): String {
+ if (description.isEmpty()) {
+ console.log("[Extensions.getDescription] is empty")
+ }
+ return description
+ }
+
+}
diff --git a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/diagram/LinkTreeDiagram.kt b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/diagram/LinkTreeDiagram.kt
index e11cfc8..decb7c1 100644
--- a/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/diagram/LinkTreeDiagram.kt
+++ b/incubator/clients/kroviz/src/main/kotlin/org/apache/isis/client/kroviz/ui/diagram/LinkTreeDiagram.kt
@@ -94,9 +94,9 @@ object LinkTreeDiagram {
val obj = logEntry.obj
if (obj != null) {
val ets = (obj as Property).extensions!!
- pc.addLine("friendlyName: " + ets.friendlyName)
+ pc.addLine("friendlyName: " + ets.getFriendlyName())
pc.addHorizontalLine()
- pc.add("descriptions: " + ets.description)
+ pc.add("descriptions: " + ets.getDescription())
pc.toMindmapNode(level)
}
return pc.code
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/snapshots/demo2_0_0/COLLECTION_DESCRIPTION.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/snapshots/demo2_0_0/COLLECTION_DESCRIPTION.kt
index 5165d72..04546dd 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/snapshots/demo2_0_0/COLLECTION_DESCRIPTION.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/snapshots/demo2_0_0/COLLECTION_DESCRIPTION.kt
@@ -44,7 +44,8 @@ object COLLECTION_DESCRIPTION: Response(){
"type" : "application/json;profile=\"urn:org.restfulobjects:repr-types/domain-type\""
} ],
"extensions" : {
- "friendlyName" : "Entities"
+ "friendlyName" : "Entities",
+ "friendlyNameForm" : "static"
}
}
"""
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/DomainTypeTest.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/DomainTypeTest.kt
index 50f7d9c..9dbde2e 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/DomainTypeTest.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/DomainTypeTest.kt
@@ -34,7 +34,7 @@ class DomainTypeTest {
//when
val to = DomainTypeHandler().parse(jsonStr) as DomainType
//then
- assertEquals("Java Lang String Jdo", to.extensions.friendlyName)
+ assertEquals("Java Lang String Jdo", to.extensions.getFriendlyName())
}
@Test
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/MemberTest.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/MemberTest.kt
index 2511fd2..bdef37a 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/MemberTest.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/MemberTest.kt
@@ -22,6 +22,7 @@ import kotlinx.serialization.json.Json
import org.apache.isis.client.kroviz.handler.MemberHandler
import org.apache.isis.client.kroviz.snapshots.demo2_0_0.COLLECTION_DESCRIPTION
import org.apache.isis.client.kroviz.snapshots.simpleapp1_16_0.FR_PROPERTY_DESCRIPTION
+import org.apache.isis.client.kroviz.to.mb.Extensions
import kotlin.test.Test
import kotlin.test.assertEquals
import kotlin.test.assertNotNull
@@ -73,7 +74,7 @@ class MemberTest() {
val m = MemberHandler().parse(FR_PROPERTY_DESCRIPTION.str) as Member
val extensions: Extensions? = m.extensions
assertNotNull(extensions)
- assertEquals("ResultListResult class", extensions.friendlyName)
+ assertEquals("ResultListResult class", extensions.getFriendlyName())
}
@Test
@@ -81,7 +82,7 @@ class MemberTest() {
val m = MemberHandler().parse(COLLECTION_DESCRIPTION.str) as Member
val extensions: Extensions? = m.extensions
assertNotNull(extensions)
- assertEquals("Entities", extensions.friendlyName)
+ assertEquals("Entities", extensions.getFriendlyName())
}
private fun parse(jsonStr: String): Member {
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/PropertyTest.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/PropertyTest.kt
index bd40c88..9641ddb 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/PropertyTest.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/to/PropertyTest.kt
@@ -24,6 +24,7 @@ import org.apache.isis.client.kroviz.snapshots.demo2_0_0.PROPERTY
import org.apache.isis.client.kroviz.snapshots.demo2_0_0.PROPERTY_DESCRIPTION
import org.apache.isis.client.kroviz.snapshots.simpleapp1_16_0.FR_OBJECT_PROPERTY_
import org.apache.isis.client.kroviz.snapshots.simpleapp1_16_0.SO_PROPERTY
+import org.apache.isis.client.kroviz.to.mb.Extensions
import kotlin.test.Test
import kotlin.test.assertEquals
import kotlin.test.assertTrue
@@ -35,7 +36,7 @@ class PropertyTest {
val jsonStr = PROPERTY_DESCRIPTION.str
val p = PropertyHandler().parse(jsonStr) as Property
assertEquals("parity", p.id)
- assertEquals("The parity of this 'DemoItem'.", p.extensions!!.description)
+ assertEquals("The parity of this 'DemoItem'.", p.extensions!!.getDescription())
}
@Test
@@ -84,7 +85,7 @@ class PropertyTest {
val jsonStr = DOMAIN_TYPES_PROPERTY.str
val p = PropertyHandler().parse(jsonStr) as Property
val e: Extensions = p.extensions!!
- val actual = e.friendlyName
+ val actual = e.getFriendlyName()
val expected = "Read Only Property Derived Render Day Not Specified"
assertEquals(expected, actual)
}
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/LinkTreeDiagramTest.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/LinkTreeDiagramTest.kt
index 73a3432..90bdf8e 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/LinkTreeDiagramTest.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/LinkTreeDiagramTest.kt
@@ -19,6 +19,7 @@
package org.apache.isis.client.kroviz.ui.table
+import org.apache.isis.client.kroviz.core.aggregator.SystemAggregator
import org.apache.isis.client.kroviz.core.event.EventStore
import org.apache.isis.client.kroviz.core.event.ResourceSpecification
import org.apache.isis.client.kroviz.handler.*
@@ -26,21 +27,22 @@ import org.apache.isis.client.kroviz.snapshots.Response
import org.apache.isis.client.kroviz.snapshots.simpleapp1_16_0.*
import org.apache.isis.client.kroviz.to.Method
import org.apache.isis.client.kroviz.ui.diagram.LinkTreeDiagram
-import kotlin.test.Test
import kotlin.test.assertNotNull
import kotlin.test.assertTrue
class LinkTreeDiagramTest {
- @Test
+ //@Test //TODO rework test to use AggregatorWithLayout
fun testLinkTreeDiagram() {
//when
- load(RESTFUL, RestfulHandler())
- load(RESTFUL_SERVICES, ServiceHandler())
- load(RESTFUL_USER, UserHandler())
- load(RESTFUL_MENUBARS, MenuBarsHandler())
- load(RESTFUL_VERSION, VersionHandler())
- load(RESTFUL_DOMAIN_TYPES, DomainTypesHandler())
+ val aggregator = SystemAggregator()
+ load(RESTFUL, "", RestfulHandler(), aggregator)
+ val referer = RESTFUL.url
+ load(RESTFUL_SERVICES, referer, ServiceHandler(), aggregator)
+ load(RESTFUL_USER, referer, UserHandler(), aggregator)
+ load(RESTFUL_MENUBARS, referer, MenuBarsHandler(), aggregator)
+ load(RESTFUL_VERSION, referer, VersionHandler(), aggregator)
+ load(RESTFUL_DOMAIN_TYPES, referer, DomainTypesHandler(), aggregator)
// then
assertTrue(EventStore.log.size >= 6)
val rootRs = ResourceSpecification(RESTFUL.url)
@@ -48,20 +50,19 @@ class LinkTreeDiagramTest {
assertNotNull(rootLogEntry) //1
// when
- val code = LinkTreeDiagram.build().trim()
+ val code = LinkTreeDiagram.build(aggregator).trim()
// then
-// console.log("[LTDT.testLinkTreeDiagram] ${code}")
- assertTrue(code.startsWith("@startsalt"))
- assertTrue(code.endsWith("@endsalt"))
- assertTrue(code.contains("+ /http://localhost:8080/restful/"))
- assertTrue(code.contains("++ /http://localhost:8080/restful/version"))
- //menuBars json doesn't have UP nor SELF nor a reference to it's parent
-// assertTrue(code.contains("++ /http://localhost:8080/restful/menuBars"))
+ console.log("[LTDT.testLinkTreeDiagram] ${code}")
+ assertTrue(code.startsWith("@startmindmap"))
+ assertTrue(code.endsWith("@endmindmap"))
+ assertTrue(code.contains("http://localhost:8080/restful/"))
+ assertTrue(code.contains("http://localhost:8080/restful/version"))
+ assertTrue(code.contains("http://localhost:8080/restful/menuBars"))
}
- private fun load(response: Response, handler: BaseHandler) {
- val rs = ResourceSpecification(response.url)
- EventStore.start(rs, Method.GET.operation)
+ private fun load(response: Response, referer: String, handler: BaseHandler, aggregator: SystemAggregator) {
+ val rs = ResourceSpecification(response.url, referrerUrl = referer)
+ EventStore.start(rs, Method.GET.operation, aggregator = aggregator)
val le = EventStore.end(rs, response.str)!!
val tObj = handler.parse(response.str)!!
le.setTransferObject(tObj)
diff --git a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/TableFactoryTest.kt b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/TableFactoryTest.kt
index af7127a..75f6d60 100644
--- a/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/TableFactoryTest.kt
+++ b/incubator/clients/kroviz/src/test/kotlin/org/apache/isis/client/kroviz/ui/table/TableFactoryTest.kt
@@ -18,13 +18,13 @@
*/
package org.apache.isis.client.kroviz.ui.table
+import io.kvision.state.ObservableList
+import io.kvision.state.observableListOf
import org.apache.isis.client.kroviz.core.model.Exposer
-import org.apache.isis.client.kroviz.to.Extensions
import org.apache.isis.client.kroviz.to.Member
import org.apache.isis.client.kroviz.to.MemberType
import org.apache.isis.client.kroviz.to.TObject
-import io.kvision.state.ObservableList
-import io.kvision.state.observableListOf
+import org.apache.isis.client.kroviz.to.mb.Extensions
class TableFactoryTest {