Skip to content

Commit ed9947a

Browse files
mosesnjenkins
authored and
jenkins
committed
scrooge: Get the maven demos to build
Problem The maven demos are broken, cf #254 Solution Fix 'em and update the libraries and plugin. RB_ID=916328
1 parent c34dda7 commit ed9947a

File tree

6 files changed

+43
-15
lines changed

6 files changed

+43
-15
lines changed

demos/scrooge-maven-demo/pom.xml

+5-5
Original file line numberDiff line numberDiff line change
@@ -33,27 +33,27 @@
3333
<dependency>
3434
<groupId>com.twitter</groupId>
3535
<artifactId>util-core_2.12</artifactId>
36-
<version>6.40.0</version>
36+
<version>6.43.0</version>
3737
</dependency>
3838
<dependency>
3939
<groupId>com.twitter</groupId>
4040
<artifactId>util-codec_2.12</artifactId>
41-
<version>6.40.0</version>
41+
<version>6.43.0</version>
4242
</dependency>
4343
<dependency>
4444
<groupId>com.twitter</groupId>
4545
<artifactId>finagle-core_2.12</artifactId>
46-
<version>6.41.0</version>
46+
<version>6.44.0</version>
4747
</dependency>
4848
<dependency>
4949
<groupId>com.twitter</groupId>
5050
<artifactId>finagle-thrift_2.12</artifactId>
51-
<version>6.41.0</version>
51+
<version>6.44.0</version>
5252
</dependency>
5353
<dependency>
5454
<groupId>com.twitter</groupId>
5555
<artifactId>scrooge-core_2.12</artifactId>
56-
<version>4.13.0</version>
56+
<version>4.16.0</version>
5757
</dependency>
5858
<dependency>
5959
<groupId>junit</groupId>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
scala_library(name='scala',
2+
dependencies=[
3+
'scrooge/scrooge-core',
4+
'scrooge/demos/scrooge-maven-demo/src/main/thrift',
5+
],
6+
sources=globs('com/twitter/example/Demo.scala'),
7+
)

demos/scrooge-maven-demo/src/main/scala/com/twitter/example/Demo.scala

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
package com.twitter.example
2-
import com.twitter.mydemo.renamed.{User, UserService}
2+
33
import com.twitter.finagle.Thrift
4-
import com.twitter.finagle.thrift.ThriftClientRequest
54
import com.twitter.finagle.builder.{ServerBuilder, ClientBuilder}
6-
import org.apache.thrift.protocol.TBinaryProtocol
7-
import java.net.{SocketAddress, InetSocketAddress}
5+
import com.twitter.mydemo.renamed.{User, UserService}
86
import com.twitter.util.Future
7+
import java.net.{SocketAddress, InetSocketAddress}
98
import java.util.concurrent.atomic.AtomicInteger
9+
import org.apache.thrift.protocol.TBinaryProtocol
1010

1111
object DemoClient {
1212
def buildClient(address: SocketAddress) = {
1313
val clientService = ClientBuilder()
14-
.hosts(Seq(address))
14+
.hosts(address.asInstanceOf[InetSocketAddress])
1515
.stack(Thrift.client)
1616
.hostConnectionLimit(1)
1717
.build()
@@ -34,7 +34,7 @@ object DemoServer {
3434
val protocol = new TBinaryProtocol.Factory()
3535
val serverService = new UserService.FinagledService(new MyUserImpl, protocol)
3636
ServerBuilder()
37-
.stack(Thrift.client)
37+
.stack(Thrift.server)
3838
.name("binary_service")
3939
.bindTo(new InetSocketAddress(0))
4040
.build(serverService)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
java_thrift_library(name='thrift',
2+
sources=['user.thrift'],
3+
compiler='scrooge',
4+
language='scala',
5+
rpc_style='finagle',
6+
namespace_map={
7+
'com.twitter.demo.thriftscala': 'com.twitter.mydemo.renamed',
8+
},
9+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
junit_tests(
2+
dependencies=[
3+
'3rdparty/jvm/junit',
4+
'3rdparty/jvm/org/scalatest',
5+
'scrooge/demos/scrooge-maven-demo/src/main/scala',
6+
],
7+
sources=globs('com/twitter/example/DemoSpec.scala'),
8+
)

demos/scrooge-maven-demo/src/test/scala/com/twitter/example/DemoSpec.scala

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
package com.twitter.example
22

3+
import com.twitter.conversions.time._
4+
import com.twitter.mydemo.renamed.User
5+
import com.twitter.util.{Future, Await}
36
import org.junit.runner.RunWith
4-
import org.scalatest.{MustMatchers, WordSpec}
57
import org.scalatest.junit.JUnitRunner
6-
import com.twitter.mydemo.renamed.User
8+
import org.scalatest.{MustMatchers, WordSpec}
79

810
@RunWith(classOf[JUnitRunner])
911
class DemoSpec extends WordSpec with MustMatchers {
1012
def printUser(user: User) {println("User %s, id %d".format(user.name, user.id))}
1113

14+
def await[A](f: Future[A]): A = Await.result(f, 5.seconds)
15+
1216
"generated finagle service" should {
1317
"server and client" in {
1418
val server = DemoServer.buildServer()
1519
val client = DemoClient.buildClient(server.boundAddress)
16-
client.createUser("Tyrion")().name must be("Tyrion")
17-
client.createUser("Jon")().name must be("Jon")
20+
await(client.createUser("Tyrion")).name must be("Tyrion")
21+
await(client.createUser("Jon")).name must be("Jon")
1822
}
1923
}
2024
}

0 commit comments

Comments
 (0)