CaseClass2JsonHelper.scala 824 B

1234567891011121314151617181920212223242526
  1. package com.winhc.bigdata.flink.implicits
  2. import com.winhc.bigdata.flink.event.ValidationExceptionEntity
  3. import com.winhc.bigdata.flink.java.entity.CompanyDataReceive
  4. import com.winhc.bigdata.flink.utils.BaseUtils
  5. import org.apache.hadoop.hbase.client.Result
  6. import org.json4s.jackson.Serialization
  7. import org.json4s.{Formats, NoTypeHints}
  8. /**
  9. * @author: XuJiakai
  10. * @date: 2020/11/23 10:51
  11. */
  12. case class CaseClass2JsonHelper[A <: AnyRef](that: A) {
  13. def toJson()(implicit formats: Formats = Serialization.formats(NoTypeHints)): String = {
  14. if (that == null) {
  15. return null
  16. }
  17. that match {
  18. case result: Result => result.toJsonString()
  19. case x: ValidationExceptionEntity[CompanyDataReceive] => BaseUtils.objectmapper.writeValueAsString(x)
  20. case _ => Serialization.write(that)
  21. }
  22. }
  23. }