-
Notifications
You must be signed in to change notification settings - Fork 125
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
15 changed files
with
137 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
13 changes: 3 additions & 10 deletions
13
.../src/commonMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryReader.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,10 @@ | ||
@file:Suppress("detekt:all") | ||
|
||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.readString | ||
import org.cqframework.cql.elm.serializing.ElmLibraryReader | ||
import org.hl7.elm.r1.Library | ||
|
||
class ElmXmlLibraryReader : ElmLibraryReader { | ||
override fun read(string: String): Library { | ||
return xml.decodeFromString(Library.serializer(), string) | ||
} | ||
override fun read(source: Source): Library { | ||
return read(source.readString()) | ||
} | ||
expect class ElmXmlLibraryReader() : ElmLibraryReader { | ||
override fun read(string: String): Library | ||
override fun read(source: Source): Library | ||
} |
12 changes: 3 additions & 9 deletions
12
.../src/commonMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryWriter.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,16 +1,10 @@ | ||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Sink | ||
import kotlinx.io.writeString | ||
import org.cqframework.cql.elm.serializing.ElmLibraryWriter | ||
import org.hl7.elm.r1.Library | ||
|
||
class ElmXmlLibraryWriter : ElmLibraryWriter { | ||
override fun write(library: Library, sink: Sink) { | ||
sink.writeString(writeAsString(library)) | ||
} | ||
|
||
override fun writeAsString(library: Library): String { | ||
return xml.encodeToString(Library.serializer(), library) | ||
} | ||
expect class ElmXmlLibraryWriter() : ElmLibraryWriter { | ||
override fun write(library: Library, sink: Sink) | ||
override fun writeAsString(library: Library): String | ||
} |
15 changes: 15 additions & 0 deletions
15
...il/src/jsMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryReaderJs.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.readString | ||
import org.cqframework.cql.elm.serializing.ElmLibraryReader | ||
import org.hl7.elm.r1.Library | ||
|
||
actual class ElmXmlLibraryReader actual constructor() : ElmLibraryReader { | ||
actual override fun read(string: String): Library { | ||
return xml.decodeFromString(Library.serializer(), string) | ||
} | ||
actual override fun read(source: Source): Library { | ||
return read(source.readString()) | ||
} | ||
} |
15 changes: 15 additions & 0 deletions
15
...il/src/jsMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryWriterJs.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Sink | ||
import kotlinx.io.writeString | ||
import org.cqframework.cql.elm.serializing.ElmLibraryWriter | ||
import org.hl7.elm.r1.Library | ||
|
||
actual class ElmXmlLibraryWriter actual constructor() : ElmLibraryWriter { | ||
actual override fun write(library: Library, sink: Sink) { | ||
sink.writeString(writeAsString(library)) | ||
} | ||
actual override fun writeAsString(library: Library): String { | ||
return xml.encodeToString(Library.serializer(), library) | ||
} | ||
} |
20 changes: 20 additions & 0 deletions
20
.../src/jvmMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryReaderJvm.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.asInputStream | ||
import nl.adaptivity.xmlutil.newGenericReader | ||
import nl.adaptivity.xmlutil.xmlStreaming | ||
import org.cqframework.cql.elm.serializing.ElmLibraryReader | ||
import org.hl7.elm.r1.Library | ||
|
||
actual class ElmXmlLibraryReader actual constructor() : ElmLibraryReader { | ||
actual override fun read(string: String): Library { | ||
return xml.decodeFromString(Library.serializer(), string) | ||
} | ||
actual override fun read(source: Source): Library { | ||
return xml.decodeFromReader( | ||
Library.serializer(), | ||
xmlStreaming.newGenericReader(source.asInputStream()) | ||
) | ||
} | ||
} |
21 changes: 21 additions & 0 deletions
21
.../src/jvmMain/kotlin/org/cqframework/cql/elm/serializing/xmlutil/ElmXmlLibraryWriterJvm.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package org.cqframework.cql.elm.serializing.xmlutil | ||
|
||
import kotlinx.io.Sink | ||
import kotlinx.io.asOutputStream | ||
import nl.adaptivity.xmlutil.core.impl.newWriter | ||
import nl.adaptivity.xmlutil.xmlStreaming | ||
import org.cqframework.cql.elm.serializing.ElmLibraryWriter | ||
import org.hl7.elm.r1.Library | ||
|
||
actual class ElmXmlLibraryWriter actual constructor() : ElmLibraryWriter { | ||
actual override fun write(library: Library, sink: Sink) { | ||
xml.encodeToWriter( | ||
xmlStreaming.newWriter(sink.asOutputStream(), "UTF-8"), | ||
Library.serializer(), | ||
library | ||
) | ||
} | ||
actual override fun writeAsString(library: Library): String { | ||
return xml.encodeToString(Library.serializer(), library) | ||
} | ||
} |
16 changes: 4 additions & 12 deletions
16
.../src/commonMain/kotlin/org/hl7/elm_modelinfo/r1/serializing/xmlutil/XmlModelInfoReader.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,13 @@ | ||
package org.hl7.elm_modelinfo.r1.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.readString | ||
import nl.adaptivity.xmlutil.serialization.XML | ||
import org.hl7.elm_modelinfo.r1.ModelInfo | ||
import org.hl7.elm_modelinfo.r1.serializing.ModelInfoReader | ||
|
||
private val xml = XML(org.hl7.elm_modelinfo.r1.serializersModule) | ||
internal val xml = XML(org.hl7.elm_modelinfo.r1.serializersModule) | ||
|
||
class XmlModelInfoReader : ModelInfoReader { | ||
override fun read(string: String): ModelInfo { | ||
return xml.decodeFromString( | ||
ModelInfo.serializer(), | ||
string | ||
) | ||
} | ||
override fun read(source: Source): ModelInfo { | ||
return read(source.readString()) | ||
} | ||
expect class XmlModelInfoReader() : ModelInfoReader { | ||
override fun read(string: String): ModelInfo | ||
override fun read(source: Source): ModelInfo | ||
} |
18 changes: 18 additions & 0 deletions
18
...il/src/jsMain/kotlin/org/hl7/elm_modelinfo/r1/serializing/xmlutil/XmlModelInfoReaderJs.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
package org.hl7.elm_modelinfo.r1.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.readString | ||
import org.hl7.elm_modelinfo.r1.ModelInfo | ||
import org.hl7.elm_modelinfo.r1.serializing.ModelInfoReader | ||
|
||
actual class XmlModelInfoReader actual constructor() : ModelInfoReader { | ||
actual override fun read(string: String): ModelInfo { | ||
return xml.decodeFromString( | ||
ModelInfo.serializer(), | ||
string | ||
) | ||
} | ||
actual override fun read(source: Source): ModelInfo { | ||
return read(source.readString()) | ||
} | ||
} |
23 changes: 23 additions & 0 deletions
23
.../src/jvmMain/kotlin/org/hl7/elm_modelinfo/r1/serializing/xmlutil/XmlModelInfoReaderJvm.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
package org.hl7.elm_modelinfo.r1.serializing.xmlutil | ||
|
||
import kotlinx.io.Source | ||
import kotlinx.io.asInputStream | ||
import nl.adaptivity.xmlutil.newGenericReader | ||
import nl.adaptivity.xmlutil.xmlStreaming | ||
import org.hl7.elm_modelinfo.r1.ModelInfo | ||
import org.hl7.elm_modelinfo.r1.serializing.ModelInfoReader | ||
|
||
actual class XmlModelInfoReader actual constructor() : ModelInfoReader { | ||
actual override fun read(string: String): ModelInfo { | ||
return xml.decodeFromString( | ||
ModelInfo.serializer(), | ||
string | ||
) | ||
} | ||
actual override fun read(source: Source): ModelInfo { | ||
return xml.decodeFromReader( | ||
ModelInfo.serializer(), | ||
xmlStreaming.newGenericReader(source.asInputStream()) | ||
) | ||
} | ||
} |