-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
75 lines (63 loc) · 2.21 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Usage example:
public class Person {
public String name;
public Integer age;
}
private Database db;
public void onModuleLoad() {
createDocument();
}
void createDocument() {
db = new Database("test");
Person p = new Person();
p.name = "John";
p.age = 31;
db.save(p, new DoneCallback<Person>() {
public void onFailure(Throwable exception) {}
public void onSuccess(Person document) {
editDocument(document);
}
});
}
private void editDocument(Person p) {
p.age = 32;
db.save(p, new DoneCallback<Person>() {
public void onFailure(Throwable exception) {}
public void onSuccess(Person document) {
getDocument(document._id);
}
});
}
private void getDocument(String id) {
Person p = new Person();
p._id = id;
db.get(p, new DoneCallback<Person>() {
public void onFailure(Throwable exception) {}
public void onSuccess(Person p) {
getAll();
}
});
}
private void getAll() {
db.getAll(new Person(), new DoneCallback<List<Person>>() {
public void onFailure(Throwable exception) {}
public void onSuccess(List<Person> all) {
for (Person p : all) {
delete(p);
}
}
});
}
private void delete(Person p) {
db.delete(p, new DoneCallback<Person>() {
public void onFailure(Throwable exception) {}
public void onSuccess(Person document) {}
});
}
How to try it:
Compile the example
$ cd example
$ mvn package
Create a document in CouchDB, and upload all files in target/gwt-couch-example-1.0-SNAPSHOT/gwt_couch_example/ as attachments.
Create the database named "test" that the example uses (database creation not supported yet).
If you attached the build output to a document named 'example' in a database named 'gwt-couch', you can now run the app by pointing your browser at something like http://localhost:5984/gwt-couch/example/example.html