mirror of
				https://github.com/OpenAPITools/openapi-generator.git
				synced 2025-10-30 16:23:42 +00:00 
			
		
		
		
	added scala json mapper
This commit is contained in:
		
							parent
							
								
									cec3fa5810
								
							
						
					
					
						commit
						44d018b642
					
				| @ -1,6 +1,5 @@ | |||||||
| package {{package}} | package {{package}} | ||||||
| 
 | 
 | ||||||
| import com.wordnik.swagger.core.util.JsonUtil |  | ||||||
| import com.sun.jersey.api.client.Client | import com.sun.jersey.api.client.Client | ||||||
| import com.sun.jersey.api.client.ClientResponse | import com.sun.jersey.api.client.ClientResponse | ||||||
| import com.sun.jersey.api.client.config.ClientConfig | import com.sun.jersey.api.client.config.ClientConfig | ||||||
| @ -13,7 +12,27 @@ import javax.ws.rs.core.MediaType | |||||||
| import scala.collection.JavaConverters._ | import scala.collection.JavaConverters._ | ||||||
| import scala.collection.mutable.HashMap | import scala.collection.mutable.HashMap | ||||||
| 
 | 
 | ||||||
|  | import com.fasterxml.jackson.module.scala.DefaultScalaModule | ||||||
|  | import com.fasterxml.jackson.core.JsonGenerator.Feature | ||||||
|  | import com.fasterxml.jackson.databind._ | ||||||
|  | import com.fasterxml.jackson.annotation._ | ||||||
|  | import com.fasterxml.jackson.databind.annotation.JsonSerialize | ||||||
|  | 
 | ||||||
|  | object ScalaJsonUtil { | ||||||
|  |   def getJsonMapper = { | ||||||
|  |     val mapper = new ObjectMapper() | ||||||
|  |     mapper.registerModule(new DefaultScalaModule()) | ||||||
|  |     mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); | ||||||
|  |     mapper.setSerializationInclusion(JsonInclude.Include.NON_DEFAULT) | ||||||
|  |     mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false) | ||||||
|  |     mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false) | ||||||
|  |     mapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY) | ||||||
|  |     mapper | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| object ApiInvoker { | object ApiInvoker { | ||||||
|  |   val mapper = ScalaJsonUtil.getJsonMapper | ||||||
|   val defaultHeaders: HashMap[String, String] = HashMap() |   val defaultHeaders: HashMap[String, String] = HashMap() | ||||||
|   val hostMap: HashMap[String, Client] = HashMap() |   val hostMap: HashMap[String, Client] = HashMap() | ||||||
| 
 | 
 | ||||||
| @ -33,14 +52,14 @@ object ApiInvoker { | |||||||
|     } else { |     } else { | ||||||
|       containerType match { |       containerType match { | ||||||
|         case "List" => { |         case "List" => { | ||||||
|           val typeInfo = JsonUtil.getJsonMapper.getTypeFactory().constructCollectionType(classOf[java.util.List[_]], cls) |           val typeInfo = mapper.getTypeFactory().constructCollectionType(classOf[java.util.List[_]], cls) | ||||||
|           val response = JsonUtil.getJsonMapper.readValue(json, typeInfo).asInstanceOf[java.util.List[_]] |           val response = mapper.readValue(json, typeInfo).asInstanceOf[java.util.List[_]] | ||||||
|           response.asScala.toList |           response.asScala.toList | ||||||
|         } |         } | ||||||
|         case _ => { |         case _ => { | ||||||
|           json match { |           json match { | ||||||
|             case e: String if ("\"\"" == e) => null |             case e: String if ("\"\"" == e) => null | ||||||
|             case _ => JsonUtil.getJsonMapper.readValue(json, cls) |             case _ => mapper.readValue(json, cls) | ||||||
|           } |           } | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
| @ -50,8 +69,8 @@ object ApiInvoker { | |||||||
|   def serialize(obj: AnyRef): String = { |   def serialize(obj: AnyRef): String = { | ||||||
|     if (obj != null) { |     if (obj != null) { | ||||||
|       obj match { |       obj match { | ||||||
|         case e: List[_] => JsonUtil.getJsonMapper.writeValueAsString(obj.asInstanceOf[List[_]].asJava) |         case e: List[_] => mapper.writeValueAsString(obj.asInstanceOf[List[_]].asJava) | ||||||
|         case _ => JsonUtil.getJsonMapper.writeValueAsString(obj) |         case _ => mapper.writeValueAsString(obj) | ||||||
|       } |       } | ||||||
|     } else null |     } else null | ||||||
|   } |   } | ||||||
|  | |||||||
| @ -4,9 +4,9 @@ package {{package}} | |||||||
| {{/imports}} | {{/imports}} | ||||||
| 
 | 
 | ||||||
| {{#models}} | {{#models}} | ||||||
| import scala.reflect.BeanProperty |  | ||||||
| 
 | 
 | ||||||
| {{#model}} | {{#model}} | ||||||
|  | 
 | ||||||
| case class {{classname}} ( | case class {{classname}} ( | ||||||
|   {{#vars}} |   {{#vars}} | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user