summaryrefslogtreecommitdiff
path: root/test/files/pos/t715/meredith_1.scala
diff options
context:
space:
mode:
Diffstat (limited to 'test/files/pos/t715/meredith_1.scala')
-rw-r--r--test/files/pos/t715/meredith_1.scala98
1 files changed, 0 insertions, 98 deletions
diff --git a/test/files/pos/t715/meredith_1.scala b/test/files/pos/t715/meredith_1.scala
deleted file mode 100644
index c28afb4a9b..0000000000
--- a/test/files/pos/t715/meredith_1.scala
+++ /dev/null
@@ -1,98 +0,0 @@
-package com.sap.dspace.model.othello;
-
-import scala.xml._
-
-trait XMLRenderer {
- type T <: Any {def getClass(): java.lang.Class[_]}
- val valueTypes =
- List(
- classOf[java.lang.Boolean],
- classOf[java.lang.Integer],
- classOf[java.lang.Float],
- classOf[java.lang.String]
- // more to come
- )
-
- def value2XML(
- value: Object,
- field: java.lang.reflect.Field,
- pojo: T
- ): Node = {
- value match {
- case null => Text("null")
- case vUnmatched =>
- if (value.isInstanceOf[java.lang.Boolean])
- Text(value.asInstanceOf[java.lang.Boolean].toString)
- else if (value.isInstanceOf[java.lang.Integer])
- Text(value.asInstanceOf[java.lang.Integer].toString)
- else if (value.isInstanceOf[java.lang.Float])
- Text(value.asInstanceOf[java.lang.Float].toString)
- // else if (value.isInstanceOf[T])
- // pojo2XML(value.asInstanceOf[T])
- else
- <unmatchedType>
- <theType>
- {vUnmatched.getClass.toString}
- </theType>
- <theValue>
- {vUnmatched.toString}
- </theValue>
- </unmatchedType>
- }
- }
-
- def field2XML(
- field: java.lang.reflect.Field,
- pojo: T
- ): Elem = {
-
- val accessible = field.isAccessible
- field.setAccessible(true)
- // BUGBUG lgm need to disambiguate on type and possibly make
- // recursive call to pojo2XML
- val fldValXML = value2XML(field.get( pojo ), field, pojo)
- field.setAccessible( accessible )
-
- Elem(
- null,
- field.getName,
- null,
- TopScope,
- fldValXML
- )
- }
-
- def pojo2XML(pojo: T): Elem = {
- val progeny =
- for (field <- pojo.getClass.getDeclaredFields)
- yield field2XML(field, pojo)
-
- Elem(
- null,
- pojo.getClass.getName,
- null,
- TopScope,
- progeny.asInstanceOf[Array[scala.xml.Node]]: _*
- )
- }
-}
-
-case class POJO2XMLRenderer(recurse: Boolean)
- extends XMLRenderer {
- type T = java.io.Serializable
- override def value2XML(
- value: Object,
- field: java.lang.reflect.Field,
- pojo: java.io.Serializable
- ): Node = {
- if (recurse) super.value2XML(value, field, pojo)
- else Text(value + "")
- }
-}
-
-object thePOJO2XMLRenderer extends POJO2XMLRenderer(true) {
-}
-
-object Test extends App {
- println(com.sap.dspace.model.othello.thePOJO2XMLRenderer)
-}