moliere

The DDS API for Scala and Android

Moliere: the DDS API for Scala and Android

Moliere is a thin library that adds a few useful constructs and abstractions for building distributed applications with the Data Distribution Service (DDS) in Scala. Moliere targets generic Scala applications as well as Android applications written in Scala. If you are new to DDS you may want to check it out since it is a standard for very efficient and scalable data sharing among distributed applications. Some of the nice things about DDS is that it is peer-to-peer -- in other terms does not require a broker -- and data-centric. As a result it provides a very productive framework for building distributed applications since it facilitates configuration -- through its dynamic discovery -- and it provides data sharing as a first class citizen. This means that you don't need to be bothered with sending message around (as in messaging technologies), you just express interest with respect to that data that you are interested in and then simply read and write values for these data types. If you are familier with JMS and want to learn how it compares to DDS you can check out this presentation.

To get started with Moliere you need to have a DDS implementation handy. If you are writing your code in Scala/Java it is highly likely that you may want to use a pure Java DDS implementation. In this case you can get started with OpenSplice Mobile.

Download OpenSplice Mobile

Once downloaded OpenSplice Mobile you should install it by doing the following:

$ cd path/to/OpenSpliceMobile
$ cd apache-maven
$ mvn -f OpenSpliceMobile-installation.pom
							

This will install OpenSplice Mobile on your local maven repository, thus to be able to create your first Moliere project you'll have to add the following lines to your build.sbt

resolvers += "Local Maven Repo" at "file://"+Path.userHome.absolutePath+"/.m2/repository"

resolvers += "nuvo.io maven repo" at "http://nuvo-io.github.com/mvn-repo/snapshots"

libraryDependencies += "io.nuvo" % "moliere_2.10" % "0.0.1-SNAPSHOT"								
							

At this point you are ready to write your first application!

Example goes here.