Skip to content

Commit fe09d0d

Browse files
committed
feat(model-datastructure): add serializer for SetConceptOp
1 parent 890e6dd commit fe09d0d

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

model-datastructure/src/commonMain/kotlin/org/modelix/model/persistent/OperationSerializer.kt

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ import org.modelix.model.operations.MoveNodeOp
3131
import org.modelix.model.operations.NoOp
3232
import org.modelix.model.operations.PositionInRole
3333
import org.modelix.model.operations.RevertToOp
34+
import org.modelix.model.operations.SetConceptOp
3435
import org.modelix.model.operations.SetPropertyOp
3536
import org.modelix.model.operations.SetReferenceOp
3637
import org.modelix.model.operations.UndoOp
@@ -225,6 +226,19 @@ class OperationSerializer private constructor() {
225226
}
226227
},
227228
)
229+
INSTANCE.registerSerializer(
230+
SetConceptOp::class,
231+
object : Serializer<SetConceptOp> {
232+
override fun serialize(op: SetConceptOp): String {
233+
return longToHex(op.nodeId) + SEPARATOR + serializeConcept(op.concept)
234+
}
235+
236+
override fun deserialize(serialized: String): SetConceptOp {
237+
val parts = serialized.split(SEPARATOR)
238+
return SetConceptOp(nodeId = longFromHex(parts[0]), concept = deserializeConcept(parts[2]))
239+
}
240+
},
241+
)
228242
INSTANCE.registerSerializer(
229243
UndoOp::class,
230244
object : Serializer<UndoOp> {

0 commit comments

Comments
 (0)