gitextract_o11b8m2f/ ├── .dockerignore ├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── big-pipe/ │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── ybrikman/ │ │ │ └── ping/ │ │ │ └── javaapi/ │ │ │ ├── bigpipe/ │ │ │ │ ├── BigPipe.java │ │ │ │ ├── HtmlPagelet.java │ │ │ │ ├── HtmlStreamHelper.java │ │ │ │ ├── JsonPagelet.java │ │ │ │ ├── Pagelet.java │ │ │ │ ├── PageletContentType.java │ │ │ │ ├── PageletRenderOptions.java │ │ │ │ └── TextPagelet.java │ │ │ ├── dedupe/ │ │ │ │ ├── CacheFilter.java │ │ │ │ └── DedupingCache.java │ │ │ └── promise/ │ │ │ ├── Function2.java │ │ │ ├── Function3.java │ │ │ ├── Function4.java │ │ │ ├── Function5.java │ │ │ ├── Function6.java │ │ │ ├── Promise2.java │ │ │ ├── Promise3.java │ │ │ ├── Promise4.java │ │ │ ├── Promise5.java │ │ │ ├── Promise6.java │ │ │ └── PromiseHelper.java │ │ ├── resources/ │ │ │ └── public/ │ │ │ └── com/ │ │ │ └── ybrikman/ │ │ │ └── ping/ │ │ │ └── big-pipe.js │ │ ├── scala/ │ │ │ └── com/ │ │ │ └── ybrikman/ │ │ │ └── ping/ │ │ │ └── scalaapi/ │ │ │ ├── bigpipe/ │ │ │ │ ├── BigPipe.scala │ │ │ │ ├── Embed.scala │ │ │ │ ├── HtmlStream.scala │ │ │ │ ├── JavaAdapter.scala │ │ │ │ └── Pagelet.scala │ │ │ ├── compose/ │ │ │ │ └── Compose.scala │ │ │ └── dedupe/ │ │ │ ├── BeforeAndAfterFilter.scala │ │ │ ├── Cache.scala │ │ │ ├── CacheFilter.scala │ │ │ ├── CacheNotInitializedException.scala │ │ │ └── DedupingCache.scala │ │ └── twirl/ │ │ └── com/ │ │ └── ybrikman/ │ │ └── bigpipe/ │ │ ├── css.scala.html │ │ ├── js.scala.html │ │ ├── pageletClientSide.scala.html │ │ └── pageletServerSide.scala.html │ └── test/ │ └── scala/ │ └── com/ │ └── ybrikman/ │ └── ping/ │ ├── javaapi/ │ │ └── dedupe/ │ │ ├── TestCacheFilter.scala │ │ └── TestDedupingCache.scala │ └── scalaapi/ │ ├── bigpipe/ │ │ ├── TestBigPipeJavaScript.scala │ │ └── TestEmbed.scala │ └── dedupe/ │ ├── TestBeforeAndAfterFilter.scala │ ├── TestCache.scala │ ├── TestCacheFilter.scala │ └── TestDedupingCache.scala ├── build.sbt ├── circle.yml ├── docker-compose.yml ├── project/ │ ├── build.properties │ └── plugins.sbt ├── sample-app-common/ │ └── src/ │ ├── main/ │ │ ├── resources/ │ │ │ └── public/ │ │ │ ├── javascripts/ │ │ │ │ ├── big-pipe-with-mustache.js │ │ │ │ ├── mustache.js │ │ │ │ └── timing.js │ │ │ └── stylesheets/ │ │ │ └── main.css │ │ ├── scala/ │ │ │ └── data/ │ │ │ ├── FakeServiceClient.scala │ │ │ ├── FutureUtil.scala │ │ │ ├── Response.scala │ │ │ └── UrlAndId.scala │ │ └── twirl/ │ │ └── views/ │ │ ├── clientSideTemplating.scala.stream │ │ ├── dedupe.scala.html │ │ ├── escaping.scala.stream │ │ ├── helpers/ │ │ │ ├── error.scala.html │ │ │ ├── module.scala.html │ │ │ └── timing.scala.html │ │ ├── withBigPipe.scala.stream │ │ └── withoutBigPipe.scala.html │ └── test/ │ └── scala/ │ └── com/ │ └── ybrikman/ │ └── ping/ │ ├── BaseBigPipeSpec.scala │ ├── BaseBigPipeTimingSpec.scala │ ├── BaseDedupeSpec.scala │ └── PingSpecification.scala ├── sample-app-java/ │ ├── app/ │ │ ├── controllers/ │ │ │ ├── Deduping.java │ │ │ ├── Mock.java │ │ │ ├── MoreBigPipeExamples.java │ │ │ ├── WithBigPipe.java │ │ │ └── WithoutBigPipe.java │ │ ├── data/ │ │ │ └── ServiceClient.java │ │ ├── helper/ │ │ │ └── FakeServiceClient.java │ │ └── loader/ │ │ └── Filters.java │ ├── conf/ │ │ ├── application.conf │ │ └── routes │ └── test/ │ └── com/ │ └── ybrikman/ │ └── ping/ │ ├── PingJavaTestComponents.scala │ └── Tests.scala ├── sample-app-scala/ │ ├── app/ │ │ ├── controllers/ │ │ │ ├── Deduping.scala │ │ │ ├── Mock.scala │ │ │ ├── MoreBigPipeExamples.scala │ │ │ ├── WithBigPipe.scala │ │ │ └── WithoutBigPipe.scala │ │ ├── data/ │ │ │ └── ServiceClient.scala │ │ └── loader/ │ │ └── PingApplicationLoader.scala │ ├── conf/ │ │ ├── application.conf │ │ └── routes │ └── test/ │ └── com/ │ └── ybrikman/ │ └── ping/ │ ├── PingScalaTestComponents.scala │ └── Tests.scala └── version.sbt