diff options
Diffstat (limited to 'standalone-container/src/main/scala/com/yahoo/container/standalone/Converter.scala')
-rw-r--r-- | standalone-container/src/main/scala/com/yahoo/container/standalone/Converter.scala | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/standalone-container/src/main/scala/com/yahoo/container/standalone/Converter.scala b/standalone-container/src/main/scala/com/yahoo/container/standalone/Converter.scala new file mode 100644 index 00000000000..443806d014b --- /dev/null +++ b/standalone-container/src/main/scala/com/yahoo/container/standalone/Converter.scala @@ -0,0 +1,26 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.container.standalone + +/** + * @author tonytv + */ +trait Converter[T] { + def convert(s: String): T +} + +object Converter { + def toConverter[T](f: String => T) = new Converter[T] { + override def convert(s: String) = f(s) + } + + implicit val intConverter = toConverter(_.toInt) + implicit val longConverter = toConverter(_.toLong) + implicit val boolConverter = toConverter(_.toBoolean) + implicit val stringConverter = toConverter(identity) + + implicit val javaIntegerConverter:Converter[Integer] = toConverter(_.toInt) + implicit val javaLongConverter:Converter[java.lang.Long] = toConverter(_.toLong) + implicit val javaBooleanConverter:Converter[java.lang.Boolean] = toConverter(_.toBoolean) + + +}
\ No newline at end of file |