
com.caldremch.http.impl.HttpConvertImpl.kt Maven / Gradle / Ivy
The newest version!
package com.caldremch.http.impl
import com.caldremch.http.core.HttpInitializer
import com.caldremch.http.core.abs.IConvert
import com.caldremch.http.core.framework.base.IBaseResp
import com.caldremch.http.core.model.ResponseBodyWrapper
import okhttp3.ResponseBody
import java.lang.reflect.Type
/**
* Created by Leon on 2022/7/5
*/
class HttpConvertImpl : IConvert {
private val convertStrategy = HttpInitializer.getConvertStrategy();
override fun convert(
responseBodyWrapper: ResponseBodyWrapper, clz:Type
): IBaseResp {
val responseBody = responseBodyWrapper.responseBody
if(convertStrategy.isStreamConvert(clz)){
return convertStrategy.convertStream(responseBody.byteStream())
}
responseBody.use {
val jsonRespStr: String = responseBody.string()
return convertStrategy.convertCommon(jsonRespStr, clz)
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy