diff --git a/.travis.yml b/.travis.yml index 0836ca8..4c66636 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,6 +4,9 @@ scala: dummy # using crossScalaVersions over TRAVIS_SCALA_VERSION script: - cd sbt-sample - sbt +update + - sbt ++2.11.8 "runMain ExponentialTransformer" + - sbt ++2.12.0 "runMain ExponentialTransformer" + - sbt ++2.12.1 "runMain ExponentialTransformer" - cd - - cd maven-sample - mvn compile diff --git a/sbt-sample/ExponentialTransformer.scala b/sbt-sample/ExponentialTransformer.scala new file mode 100644 index 0000000..52c99c1 --- /dev/null +++ b/sbt-sample/ExponentialTransformer.scala @@ -0,0 +1,21 @@ +import scala.xml._ + +object ExponentialTransformer extends App { + + var i = 0 + def translate(text: String): String = { + i += 1 + return "!%s!".format(text) + } + + val xmlNode =

Hello Example

+ + new transform.RuleTransformer(new transform.RewriteRule { + override def transform(n: Node): Seq[Node] = n match { + case t: Text if !t.text.trim.isEmpty => Text(translate(t.text.trim)) + case _ => n + } + }).transform(xmlNode) + + println(s"scala.xml.transform.RuleTransformer called $i time(s)") +}