You're right! Thanks for catching that. I've updated the wiki.
There is also a typesafe DSL for constructing select queries which
I've found a lot more convenient than constructing the select queries
manually.
The code has a reasonable amount of javadoc, but I haven't written an
introduction or other proper documentation yet.
Here are some snippets from a simple (working) blog example:
import org.sublime.amazon.simpleDB.api._
import org.sublime.Conversions._
import org.sublime.Attributes._
import org.sublime.amazon.simpleDB.Select._
/** YOU CAN DEFINE A TYPED 'RECORD' (REALLY JUST A GROUP OF
ATTRIBUTES) **/
object PostingRecord {
/** Attributes used in simpleDB **/
val title = attribute("title")
val author = attribute("author")
val tags = attribute("tags")
val date = attribute("date", ISO8601Date)
}
// Get a reference to the the domain where the postings are to
be stored
val postings = account domain "postings"
// and make sure it exists
postings create
// updates are identified as such by a tag
val updateTag = "update"
/** THEN YOU CAN DEFINE QUERIES USING SCALA **/
// query for the index of postings
def index = postings (((tags is updateTag) intersection (date
< new java.util.Date)) order_by date desc)
/** INDEX IS A FUNCTION THAT CREATES A SELECT QUERY AND EXECUTES IT
EACH TIME IT'S CALLED **/
def buildPostings {
for (entry <- index) buildPosting(entry)