Wiki

Build-Server: http://jenkins.root1.de/job/SOS%20-%20trunk/
Snapshot Download: http://nexus.root1.de/content/repositories/snapshots/de/root1/SOS/
Maven dependency:

1<dependency>
2  <groupId>de.root1</groupId>
3  <artifactId>SOS</artifactId>
4  <version>1.0.0-SNAPSHOT</version>
5  <type>pom</type>
6</dependency>

Repository-URL: http://nexus.root1.de/content/repositories/snapshots

Usage

 1// init storage
 2Storage os = new Storage(new File("/home/achr/tmp/db"));
 3
 4// create an object to store
 5Pojo pojo = new Pojo();
 6pojo.setAge(10);
 7pojo.setBirthday(new Date());
 8pojo.setFirstname("Max");
 9pojo.setLastname("Mustermann");
10pojo.setPostcode(1000);
11pojo.setId(UUID.randomUUID());
12
13// store object
14os.store(pojo);
15
16// query for stored object
17Query query = os.query(Pojo.class);
18
19query.setCondition("firstname", new Condition<String>(){
20
21    public boolean condition(String variable) {
22        if (variable.contains("Max"))
23            return true;
24        return false;
25    }
26});
27
28// execute query
29List execute = query.execute();
30
31System.out.println("Result size: "+execute.size());
32
33// print results ...
34for (Object object : execute) {
35    System.out.println("Found:  "+object);
36
37    os.remove(((Pojo)object).getId()); // .. and remove object
38}
39
40// ask store for specific object
41Object xyz = os.get(anyUUID);
42
43os.close();

Prestudy