Skip to content

Commit

Permalink
Moved our Scala code to access eXist DB to its own repo
Browse files Browse the repository at this point in the history
  • Loading branch information
fsteeg committed Sep 2, 2010
0 parents commit d7ab57b
Show file tree
Hide file tree
Showing 12 changed files with 558 additions and 0 deletions.
33 changes: 33 additions & 0 deletions .classpath
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src/main/scala"/>
<classpathentry kind="src" path="src/test/scala"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/classpath_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compile_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-bin_2.7.7.final/compiler-interface-bin-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-bin_2.8.0.RC2/compiler-interface-bin-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-src/compiler-interface-src-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-src/jline-0.9.94.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/control_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/io_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/ivy_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/ivy-2.1.0.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/jsch-0.1.31.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/launcher-interface-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/sbt_2.7.7-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/test-interface-0.5.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/xsbti/interface-0.7.4.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.8.0/lib/scala-compiler.jar"/>
<classpathentry kind="lib" path="project/boot/scala-2.8.0/lib/scala-library.jar"/>
<classpathentry kind="lib" path="lib/exist.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/junit-4.8.1.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/scalatest-1.2.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/xercesImpl-2.9.1.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/xml-apis-1.3.04.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/log4j-1.2.16.jar"/>
<classpathentry kind="lib" path="lib_managed/scala_2.8.0/compile/ws-commons-util-1.0.2.jar"/>
<classpathentry kind="lib" path="lib/xmldb.jar"/>
<classpathentry kind="con" path="org.scala-ide.sdt.launching.SCALA_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin"/>
</classpath>
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
target/
lib_managed/
src_managed/
project/boot/
bin/
18 changes: 18 additions & 0 deletions .project
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>sinist</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.scala-ide.sdt.core.scalabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.scala-ide.sdt.core.scalanature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
13 changes: 13 additions & 0 deletions .scala_dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/Users/fsteeg/Documents/workspaces/sinist/bin:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/classpath_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compile_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-bin_2.7.7.final/compiler-interface-bin-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-bin_2.8.0.RC2/compiler-interface-bin-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-src/compiler-interface-src-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/compiler-interface-src/jline-0.9.94.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/control_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/io_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/ivy_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/ivy-2.1.0.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/jsch-0.1.31.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/launcher-interface-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/sbt_2.7.7-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/test-interface-0.5.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.7.7/org.scala-tools.sbt/sbt/0.7.4/xsbti/interface-0.7.4.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.8.0/lib/scala-compiler.jar:/Users/fsteeg/Documents/workspaces/sinist/project/boot/scala-2.8.0/lib/scala-library.jar:/Users/fsteeg/Documents/workspaces/sinist/lib/exist.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/junit-4.8.1.jar:/sinist/lib_managed/scala_2.8.0/compile/junit-4.1.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/scalatest-1.2.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/xercesImpl-2.9.1.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/xml-apis-1.3.04.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/log4j-1.2.16.jar:/Users/fsteeg/Documents/workspaces/sinist/lib_managed/scala_2.8.0/compile/ws-commons-util-1.0.2.jar:/Users/fsteeg/Documents/workspaces/sinist/lib/xmldb.jar:/Users/fsteeg/Documents/eclipse/configuration/org.eclipse.osgi/bundles/379/1/.cp/lib/scala-library.jar:/Users/fsteeg/Documents/eclipse/configuration/org.eclipse.osgi/bundles/379/1/.cp/lib/scala-dbc.jar:/Users/fsteeg/Documents/eclipse/configuration/org.eclipse.osgi/bundles/379/1/.cp/lib/scala-swing.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar:/System/Library/Frameworks/JavaVM.framework/Frameworks/JavaRuntimeSupport.framework/Resources/Java/JavaRuntimeSupport.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/ui.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jsse.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/jce.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/charsets.jar:/System/Library/Java/Extensions/AppleScriptEngine.jar:/System/Library/Java/Extensions/dns_sd.jar:/System/Library/Java/Extensions/j3daudio.jar:/System/Library/Java/Extensions/j3dcore.jar:/System/Library/Java/Extensions/j3dutils.jar:/System/Library/Java/Extensions/jai_codec.jar:/System/Library/Java/Extensions/jai_core.jar:/System/Library/Java/Extensions/mlibwrapper_jai.jar:/System/Library/Java/Extensions/MRJToolkit.jar:/System/Library/Java/Extensions/QTJava.zip:/System/Library/Java/Extensions/vecmath.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/apple_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/dnsns.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/localedata.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/sunjce_provider.jar:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/ext/sunpkcs11.jar
-------
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/src/main/scala/com/quui/sinist/XmlDb.scala
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala
-------
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$1.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$2.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$3.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$5.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$4.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1$$anonfun$apply$mcV$sp$6.class
/Users/fsteeg/Documents/workspaces/sinist/src/test/scala/com/quui/sinist/XmlDbSpec.scala -> /Users/fsteeg/Documents/workspaces/sinist/bin/com/quui/sinist/XmlDbSpec$$anonfun$1.class
20 changes: 20 additions & 0 deletions README.textile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
**A simple (and very early) Scala wrapper to access "eXist DB":http://exist.sourceforge.net/ and potentially other XML:DB implementations**

The basic idea (some background and details can be found in "this blog post":http://fsteeg.wordpress.com/2010/08/30/scala-object-persistence-and-the-original-nosql-xml/):

bc.
val db = XmlDb() // pass optional location, root and collection prefix
db.putXml(<some><xml>element</xml></some>, collId, xmlDocId)
db.putBin("data".getBytes, collId, binDocId)
val xml: Option[List[Elem]] = db.getXml(collId)
val bin: Option[List[Array[Byte]]] = db.getBin(collId)

To run the tests, have an eXist DB running via @startup.sh@ at @xmldb:exist://localhost:8080/exist/xmlrpc@

Building with "SBT":http://code.google.com/p/simple-build-tool/:

* update
* test
* package

This will fetch dependencies, run the tests, and create a jar in the @target@ directory.
Loading

0 comments on commit d7ab57b

Please sign in to comment.