File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed
src/main/kotlin/com/tomwyr/common Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change
1
+ @file:OptIn(ExperimentalSerializationApi ::class )
2
+
1
3
package com.tomwyr.common
2
4
5
+ import kotlinx.serialization.ExperimentalSerializationApi
6
+ import kotlinx.serialization.SerialName
3
7
import kotlinx.serialization.Serializable
8
+ import kotlinx.serialization.json.JsonClassDiscriminator
4
9
5
10
@Serializable
6
11
class NodeParams (
@@ -17,24 +22,28 @@ class NodeTree(val scenes: List<Scene>)
17
22
class Scene (val name : String , val root : Node )
18
23
19
24
@Serializable
25
+ @JsonClassDiscriminator(" nodeType" )
20
26
sealed class Node {
21
27
abstract val name: String
22
28
}
23
29
24
30
@Serializable
31
+ @SerialName(" parentNode" )
25
32
class ParentNode (
26
33
override val name : String ,
27
34
val type : String ,
28
35
val children : List <Node >,
29
36
) : Node()
30
37
31
38
@Serializable
39
+ @SerialName(" leafNode" )
32
40
class LeafNode (
33
41
override val name : String ,
34
42
val type : String ,
35
43
) : Node()
36
44
37
45
@Serializable
46
+ @SerialName(" nestedScene" )
38
47
class NestedScene (
39
48
override val name : String ,
40
49
val scene : String ,
You can’t perform that action at this time.
0 commit comments