All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gsonpath.adapter.AdapterMethodBuilder.kt Maven / Gradle / Ivy

package gsonpath.adapter

import com.google.gson.stream.JsonReader
import com.google.gson.stream.JsonWriter
import com.squareup.javapoet.TypeName
import gsonpath.util.MethodSpecExt
import java.io.IOException

object AdapterMethodBuilder {
    fun createReadMethodBuilder(returnTypeName: TypeName) = MethodSpecExt.overrideMethodBuilder("read").apply {
        returns(returnTypeName)
        addParameter(JsonReader::class.java, Constants.IN)
        addException(IOException::class.java)
    }

    fun createWriteMethodBuilder(writtenValueTypeName: TypeName) = MethodSpecExt.overrideMethodBuilder("write").apply {
        addParameter(JsonWriter::class.java, Constants.OUT)
        addParameter(writtenValueTypeName, Constants.VALUE)
        addException(IOException::class.java)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy