@@ -15,8 +15,9 @@ import org.scalatest.Suite
1515import scala .collection .JavaConversions .mapAsJavaMap
1616import scala .concurrent ._
1717import scala .concurrent .duration ._
18- import scala .language .postfixOps
18+ import scala .language .{ higherKinds , postfixOps }
1919import scala .reflect .io .Directory
20+ import scala .reflect .runtime .universe ._
2021import scala .util .Try
2122
2223trait EmbeddedKafka {
@@ -110,24 +111,18 @@ trait EmbeddedKafka {
110111 }
111112 }
112113
113- def aKafkaProducerThat (): KafkaProducerConfiguration = {
114- new KafkaProducerConfiguration ()
115- }
116-
117- sealed class KafkaProducerConfiguration {
118-
119- def serializesValuesWith [T <: Serializer [_]](serializer : Class [T ])(implicit config : EmbeddedKafkaConfig ) = {
120- new KafkaProducer [String , T ](Map (
121- ProducerConfig .BOOTSTRAP_SERVERS_CONFIG -> s " localhost: ${config.kafkaPort}" ,
122- ProducerConfig .KEY_SERIALIZER_CLASS_CONFIG -> classOf [StringSerializer ].getName,
123- ProducerConfig .VALUE_SERIALIZER_CLASS_CONFIG -> serializer.getName,
124- ProducerConfig .METADATA_FETCH_TIMEOUT_CONFIG -> 3000 .toString,
125- ProducerConfig .RETRY_BACKOFF_MS_CONFIG -> 1000 .toString
114+ object aKafkaProducer {
115+ def thatSerializesValuesWith [V ](serializer : Class [_ <: Serializer [V ]])(implicit config : EmbeddedKafkaConfig ) = {
116+ new KafkaProducer [String , V ](Map (
117+ ProducerConfig .BOOTSTRAP_SERVERS_CONFIG -> s " localhost: ${config.kafkaPort}" ,
118+ ProducerConfig .KEY_SERIALIZER_CLASS_CONFIG -> classOf [StringSerializer ].getName,
119+ ProducerConfig .VALUE_SERIALIZER_CLASS_CONFIG -> serializer.getName,
120+ ProducerConfig .METADATA_FETCH_TIMEOUT_CONFIG -> 3000 .toString,
121+ ProducerConfig .RETRY_BACKOFF_MS_CONFIG -> 1000 .toString
126122 ))
127123 }
128124 }
129125
130-
131126 private def startZooKeeper (zooKeeperPort : Int ): ServerCnxnFactory = {
132127 val zkLogsDir = Directory .makeTemp(" zookeeper-logs" )
133128 val tickTime = 2000
0 commit comments