Soda-Scala
Scala bindings for the SODA2 API.
Getting it
Soda-Scala is published to maven central. There are two artifacts, soda-publisher-scala
which contains everything, and soda-consumer-scala
which contains only those features required for read-access. SBT configuration can be done by adding
libraryDependencies += "com.socrata" %% "soda-publisher-scala" % "2.0.0"
to your .sbt
file, while for Maven, the pom snippet is:
<dependencies>
<dependency>
<groupId>com.socrata</groupId>
<artifactId>soda-publisher-scala_${scala.version}</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>
Soda-scala is published for Scala versions 2.10.4, 2.11.8 and 2.12.0.
Sample code
The soda-scala-sample subproject contains sample code for reading and writing.
Interop with databinder-dispatch
Version 0.9 and above of databinder-dispatch uses async-http-client as its underlying engine. The default client can be retrieved using Http.client
and passed to the soda-scala HttpConsumer
or HttpProducer
.
Future work
- A query-building system richer than raw SoQL strings.
- More ways to upload data (e.g., from a CSV file).