diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-01-19 16:33:21 +0100 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-01-19 16:33:21 +0100 |
commit | a1c3d1ad9b2815e827e52662b91974145e9b5a20 (patch) | |
tree | 433ca43d2401bb00ca123924f0a5c173b72ad4d6 /same/src/main/java/com/orbekk | |
parent | 91b109414204db19f2aba63915045742dc87bcca (diff) |
Add SameInterface – the programming interface to Same.
SameInterface is supposed to contain the library interface to Same.
Diffstat (limited to 'same/src/main/java/com/orbekk')
-rw-r--r-- | same/src/main/java/com/orbekk/same/SameInterface.java | 42 | ||||
-rw-r--r-- | same/src/main/java/com/orbekk/same/UpdateConflict.java | 4 |
2 files changed, 46 insertions, 0 deletions
diff --git a/same/src/main/java/com/orbekk/same/SameInterface.java b/same/src/main/java/com/orbekk/same/SameInterface.java new file mode 100644 index 0000000..a778f39 --- /dev/null +++ b/same/src/main/java/com/orbekk/same/SameInterface.java @@ -0,0 +1,42 @@ +package com.orbekk.same; + +import java.util.List; + +import org.codehaus.jackson.type.TypeReference; + +public interface SameInterface { + /** + * Get the state with identifier 'id'. + */ + String get(String id); + + /** + * Get the state with identifier 'id', converted to a Java + * object of type T using Jackson. + */ + <T> T get(String id, TypeReference<T> type); + + /** + * Get the state with identifier 'id' as a list. + */ + List<String> getList(String id); + + /** + * Set the state. + * + * @throws UpdateConflictException + */ + void set(String id, String data) throws UpdateConflict; + + /** + * Set the state. + * + * Retry until there is no conflict. + */ + void forceSet(String id, String data); + + /** + * Set from an object: Pass it, e.g., a List<String>. + */ + void setObject(String id, Object data); +} diff --git a/same/src/main/java/com/orbekk/same/UpdateConflict.java b/same/src/main/java/com/orbekk/same/UpdateConflict.java new file mode 100644 index 0000000..35fbb01 --- /dev/null +++ b/same/src/main/java/com/orbekk/same/UpdateConflict.java @@ -0,0 +1,4 @@ +package com.orbekk.same; + +public class UpdateConflict extends Exception { +} |