Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def makeArray[T](classTag: ClassTag[T], elements: Array[Any]): Array[T] = Array(elements.map(_.asInstanceOf[T]): _*)(classTag)
- def convertArray(parameterName: String, parameterType: Type, array: JSONArray): Array[_] = {
- val genericType = parameterType.asInstanceOf[TypeRefApi].args.head
- val mapped = array.toArray().map {
- case x if x.isInstanceOf[Long] && genericType == typeOf[Double] => x.asInstanceOf[Long].toDouble
- case x => x
- }
- if (mapped.exists(getJavaType(_) != genericType)) throw new InvalidParameter(parameterName)
- val genericClass = mirror.runtimeClass(genericType)
- return makeArray(ClassTag(genericClass), mapped)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement