57
|
1 import java.util.ArrayList;
|
|
2
|
15
|
3 import javax.ws.rs.core.MediaType;
|
|
4
|
16
|
5 import models.NodeModel;
|
|
6
|
28
|
7 import org.codehaus.jackson.JsonNode;
|
|
8 import org.codehaus.jackson.node.ArrayNode;
|
|
9 import org.codehaus.jackson.node.ObjectNode;
|
|
10
|
|
11 import play.libs.Json;
|
15
|
12
|
|
13 import com.sun.jersey.api.client.Client;
|
|
14 import com.sun.jersey.api.client.ClientResponse;
|
|
15 import com.sun.jersey.api.client.WebResource;
|
|
16
|
|
17 public class RequestTest {
|
|
18 final static String SERVER_ROOT_URI = "http://localhost:9000";
|
|
19
|
28
|
20 public static void main(String[] args) {
|
57
|
21 String userA = "Yana";
|
|
22 String userB = "Tatsumi";
|
|
23 String userC = "Shiomi";
|
|
24 String userD = "Ikuhiro";
|
|
25 createUser(userA);
|
|
26 createUser(userB);
|
|
27 createUser(userC);
|
|
28 String[] users = {userB,userC};
|
|
29
|
|
30 JsonNode allUsers = getAllUsers();
|
|
31 String[] allUsersArray = new String[allUsers.size()];
|
|
32 for (int i=0;i<allUsers.size(); i++) {
|
|
33 String id = allUsers.get(i).asText();
|
|
34 allUsersArray[i] = id;
|
|
35 }
|
|
36
|
|
37 createClaim(userA, users);
|
|
38
|
|
39
|
|
40 /*
|
|
41 JsonNode user1Cons = getUserInfo(user1,"claims/");
|
|
42 for (int i=0; i<user1Cons.size(); i++) {
|
|
43 int id = user1Cons.get(i).asInt();
|
|
44 System.out.println("id = "+id);
|
|
45 editClaimInfo(user1, allUsersArray, id);
|
|
46 }
|
|
47 */
|
|
48
|
|
49
|
|
50
|
|
51 /*
|
|
52 String[] users1 = {user2,user3};
|
50
|
53 String[] u = {user2,user3};
|
57
|
54
|
44
|
55 createClaim(user1, u);
|
57
|
56 */
|
|
57 /*
|
50
|
58 JsonNode user2Requests = getUserInfo(user2, "requests/");
|
|
59 for (int i=0; i<user2Requests.size(); i++) {
|
|
60 int id = user2Requests.get(0).asInt();
|
|
61 String[] users = {user1,user3};
|
44
|
62 createMention(user2, users, NodeModel.L_REFUTATION, id);
|
|
63 }
|
50
|
64 JsonNode user1Requests = getUserInfo(user1, "requests/");
|
|
65 for (int i=0; i< user1Requests.size(); i++) {
|
|
66 int id = user1Requests.get(0).asInt();
|
|
67 createMention(user1, u, NodeModel.L_REFUTATION, id);
|
|
68 }
|
|
69 user2Requests = getUserInfo(user2, "requests/");
|
|
70 for (int i=0; i<user2Requests.size(); i++) {
|
|
71 int id = user2Requests.get(0).asInt();
|
|
72 String[] users = {user1,user3};
|
|
73 createMention(user2, users, NodeModel.L_REFUTATION, id);
|
|
74 }
|
57
|
75 */
|
48
|
76
|
44
|
77 /*
|
|
78 JsonNode user1Claim = getUserInfo(user1, "requests/");
|
|
79 if (user2Claim.size() != 0) {
|
|
80 int id = user1Claim.get(0).asInt();
|
|
81 String[] users = {user2};
|
|
82 createMention(user1, users, NodeModel.L_SUGGESTION, id);
|
|
83 updateUserConsensusStatus(id, user1, NodeModel.AGREED);
|
|
84 }
|
|
85 */
|
|
86
|
48
|
87 // allAgreed(user1);
|
|
88 // allAgreed(user2);
|
|
89
|
57
|
90 // getClaimTree(6);
|
44
|
91
|
|
92
|
|
93 /*
|
27
|
94 createClaim(user1, users1);
|
26
|
95 String[] users2 = {user2};
|
42
|
96 createClaim(user1, users1);
|
28
|
97 JsonNode user1Claim = getUserInfo(user1,"consensus/");
|
36
|
98 getClaimInfo(user1Claim.get(0).asInt());
|
|
99 editClaimInfo(user1, users2, user1Claim.get(0).asInt());
|
|
100 getClaimInfo(user1Claim.get(0).asInt());
|
28
|
101 for (int i=0; i<user1Claim.size(); i++) {
|
|
102 int claimId = user1Claim.get(i).asInt();
|
43
|
103 String[] users = {user1};
|
|
104 createMention(user2, users, NodeModel.L_QUESTION, claimId);
|
|
105 createMention(user3, users, NodeModel.L_REFUTATION, claimId);
|
28
|
106 }
|
39
|
107 JsonNode user2Claim = getUserInfo(user2,"claims/");
|
38
|
108 for (int i=0; i<user2Claim.size(); i++) {
|
39
|
109 int claimId = user2Claim.get(user2Claim.size()-1).asInt();
|
38
|
110 String[] users = {user2};
|
|
111 createMention(user1, users, NodeModel.L_SUGGESTION, claimId);
|
|
112 }
|
27
|
113 getUserInfo(user1,"requests/");
|
39
|
114 getUserInfo(user1,"claims/");
|
25
|
115 getUserInfo(user1,"consensus/");
|
39
|
116 getUserInfo(user2,"requests/");
|
25
|
117 getUserInfo(user2,"claims/");
|
|
118 getUserInfo(user2,"consensus/");
|
|
119 getUserInfo(user3,"claims/");
|
23
|
120 getUserInfo(user3,"consensus/");
|
42
|
121 allAgreed(user1);
|
|
122 allAgreed(user2);
|
|
123 allAgreed(user3);
|
|
124 allAgreed(user4);
|
|
125 /*
|
34
|
126 for (int i=0; i<user1Claim.size(); i++) {
|
39
|
127 int id = user1Claim.get(i).asInt();
|
35
|
128 getClaimTree(id);
|
39
|
129 getUserConsensusStatus(id, user2);
|
42
|
130 }
|
|
131 */
|
|
132 }
|
|
133
|
57
|
134 public static JsonNode getAllUsers() {
|
|
135 final String uri = SERVER_ROOT_URI + "/users/all";
|
|
136 WebResource resource = Client.create().resource(uri);
|
|
137 ClientResponse response = resource.get(ClientResponse.class);
|
|
138 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
|
139 String resStr = response.getEntity(String.class);
|
|
140 System.out.println(resStr);
|
|
141 return Json.toJson(resStr);
|
|
142 }
|
|
143
|
42
|
144 public static void allAgreed(String name) {
|
|
145 JsonNode requestsJson = getUserInfo(name,"requests/");
|
|
146 for (int i=0; i<requestsJson.size(); i++) {
|
|
147 int id = requestsJson.get(i).asInt();
|
|
148 updateUserConsensusStatus(id, name, NodeModel.AGREED);
|
29
|
149 }
|
25
|
150 }
|
35
|
151
|
36
|
152 public static JsonNode editClaimInfo(String author, String[] users, int id) {
|
|
153 ObjectNode jobj = createEditClaimParameter(author,users);
|
|
154 final String uri = SERVER_ROOT_URI + "/claims/edit/"+id;
|
|
155 WebResource resource = Client.create().resource(uri);
|
|
156 ClientResponse response = resource.header("Content-type",MediaType.APPLICATION_JSON)
|
|
157 .entity(jobj.toString())
|
|
158 .post(ClientResponse.class);
|
|
159 System.out.println(String.format("POST on [%s], status code [%d]", uri, response.getStatus()));
|
|
160 String resStr = response.getEntity(String.class);
|
|
161 System.out.println(resStr);
|
|
162 return Json.toJson(resStr);
|
35
|
163 }
|
32
|
164
|
30
|
165 public static JsonNode getClaimTree(int id) {
|
32
|
166 final String uri = SERVER_ROOT_URI + "/consensus/browse/"+id;
|
30
|
167 WebResource resource = Client.create().resource(uri);
|
36
|
168 ClientResponse response = resource.get(ClientResponse.class);
|
30
|
169 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
|
170 String resStr = response.getEntity(String.class);
|
|
171 System.out.println(resStr);
|
|
172 return Json.parse(resStr);
|
|
173 }
|
41
|
174
|
|
175 public static void updateUserConsensusStatus(int id, String name, String status) {
|
|
176 final String uri = SERVER_ROOT_URI + "/claims/answer/"+id+"/"+name+"/"+status;
|
|
177 WebResource resource = Client.create().resource(uri);
|
|
178 ClientResponse response = resource.post(ClientResponse.class);
|
|
179 System.out.println(String.format("POST on [%s], status code [%d]", uri, response.getStatus()));
|
|
180 String resStr = response.getEntity(String.class);
|
|
181 System.out.println(resStr);
|
|
182 }
|
30
|
183
|
39
|
184 public static JsonNode getUserConsensusStatus(int id, String name) {
|
|
185 final String uri = SERVER_ROOT_URI + "/claims/answer/"+id+"/"+name;
|
|
186 WebResource resource = Client.create().resource(uri);
|
|
187 ClientResponse response = resource.get(ClientResponse.class);
|
|
188 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
|
189 String resStr = response.getEntity(String.class);
|
|
190 System.out.println(resStr);
|
|
191 return Json.parse(resStr);
|
|
192 }
|
|
193
|
29
|
194 public static JsonNode getClaimInfo(int id) {
|
|
195 final String uri = SERVER_ROOT_URI + "/claims/browse/"+id;
|
|
196 WebResource resource = Client.create().resource(uri);
|
|
197 ClientResponse response = resource.get(ClientResponse.class);
|
|
198 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
|
199 String resStr = response.getEntity(String.class);
|
|
200 System.out.println(resStr);
|
|
201 return Json.parse(resStr);
|
|
202 }
|
|
203
|
28
|
204 public static void createMention(String author, String[] users, String type, Object id) {
|
|
205 ObjectNode jobj = createClaimParameter(author, users);
|
25
|
206 final String uri = SERVER_ROOT_URI + "/claims/"+type+"/"+id+"/create";
|
|
207 WebResource resource = Client.create().resource(uri);
|
|
208 ClientResponse response = resource.header("Content-type",MediaType.APPLICATION_JSON)
|
|
209 .entity(jobj.toString())
|
|
210 .post(ClientResponse.class);
|
|
211 System.out.println(String.format("POST on [%s], status code [%d]", uri, response.getStatus()));
|
28
|
212 String resStr = response.getEntity(String.class);
|
|
213 System.out.println(resStr);
|
15
|
214 }
|
|
215
|
28
|
216 public static JsonNode createClaim(String author, String[] users) {
|
|
217 ObjectNode jobj = createClaimParameter(author, users);
|
25
|
218 final String uri = SERVER_ROOT_URI + "/claims/create";
|
|
219 WebResource resource = Client.create().resource(uri);
|
|
220 ClientResponse response = resource.header("Content-type",MediaType.APPLICATION_JSON)
|
|
221 .entity(jobj.toString())
|
|
222 .post(ClientResponse.class);
|
|
223 System.out.println(String.format("POST on [%s], status code [%d]", uri, response.getStatus()));
|
28
|
224 String resStr = response.getEntity(String.class);
|
|
225 System.out.println(resStr);
|
|
226 return Json.toJson(resStr);
|
25
|
227 }
|
35
|
228
|
|
229 public static ObjectNode createEditClaimParameter(String author, String[] users) {
|
|
230 ObjectNode toulmin = Json.newObject();
|
36
|
231 toulmin.put(NodeModel.TITLE, "Edit Test");
|
|
232 toulmin.put(NodeModel.CONTENTS, "Edited Contents");
|
|
233 toulmin.put(NodeModel.QUALIFIER, "Edited qualifier");
|
|
234 toulmin.put(NodeModel.WARRANT,"Edited warrant");
|
|
235 toulmin.put(NodeModel.BACKING, "Edited backing");
|
|
236 toulmin.put(NodeModel.DATA,"Edited DATA");
|
|
237 toulmin.put(NodeModel.REBUTTLE,"Edited REBUTTLE");
|
35
|
238 ObjectNode jobj = Json.newObject();
|
|
239 jobj.put(NodeModel.TOULMIN, toulmin);
|
|
240 jobj.put(NodeModel.L_AUTHOR, author);
|
|
241 ArrayNode usersArray = jobj.putArray(NodeModel.USERS);
|
|
242 for (String u : users) usersArray.add(u);
|
37
|
243 jobj.put(NodeModel.TYPE, NodeModel.MAJORITY );
|
35
|
244 return jobj;
|
|
245 }
|
|
246
|
25
|
247
|
28
|
248 public static ObjectNode createClaimParameter(String author, String[] users) {
|
|
249 ObjectNode toulmin = Json.newObject();
|
16
|
250 toulmin.put(NodeModel.TITLE, "アプリでGraphDBを利用する。");
|
|
251 toulmin.put(NodeModel.CONTENTS, "最近話題のデータベースとしてGraphDBがある。我々のアプリでは、新しい技術のためにもGraphDBを利用したい。");
|
|
252 toulmin.put(NodeModel.QUALIFIER, "絶対");
|
|
253 toulmin.put(NodeModel.WARRANT,"GraphDBの実用例 etc...");
|
|
254 toulmin.put(NodeModel.BACKING, "GraphDBの最新動向 etc...");
|
|
255 toulmin.put(NodeModel.DATA,"GraphDBの実用例 etc...");
|
|
256 toulmin.put(NodeModel.REBUTTLE,"");
|
|
257
|
28
|
258 ObjectNode jobj = Json.newObject();
|
16
|
259 jobj.put(NodeModel.TOULMIN, toulmin);
|
18
|
260 jobj.put(NodeModel.L_AUTHOR, author);
|
28
|
261 ArrayNode usersArray = jobj.putArray(NodeModel.USERS);
|
|
262 for (String u : users) usersArray.add(u);
|
|
263
|
|
264 jobj.put(NodeModel.TYPE, NodeModel.UNANIMOUSLY);
|
25
|
265 return jobj;
|
16
|
266
|
15
|
267 }
|
|
268
|
28
|
269 public static JsonNode getUserInfo(String name, String preUri) {
|
15
|
270 final String uri = SERVER_ROOT_URI + "/users/"+preUri+name;
|
|
271 WebResource resource = Client.create().resource(uri);
|
|
272 ClientResponse response = resource.get(ClientResponse.class);
|
|
273 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
28
|
274 String resStr = response.getEntity(String.class);
|
|
275 System.out.println(resStr);
|
|
276 return Json.parse(resStr);
|
15
|
277 }
|
|
278
|
|
279 public static void createUser(String name) {
|
|
280 final String uri = SERVER_ROOT_URI + "/users/create/"+name;
|
|
281 WebResource resource = Client.create().resource(uri);
|
|
282 ClientResponse response = resource.put(ClientResponse.class);
|
|
283 System.out.println(String.format("PUT on [%s], status code [%d]", uri, response.getStatus()));
|
|
284 System.out.println(response.getEntity(String.class));
|
|
285 }
|
|
286
|
28
|
287 public static JsonNode getUser(String name) {
|
15
|
288 final String uri = SERVER_ROOT_URI + "/users/browse/"+name;
|
|
289 WebResource resource = Client.create().resource(uri);
|
|
290 ClientResponse response = resource.get(ClientResponse.class);
|
|
291 System.out.println(String.format("GET on [%s], status code [%d]", uri, response.getStatus()));
|
28
|
292 String resStr = response.getEntity(String.class);
|
|
293 return Json.parse(resStr);
|
15
|
294 }
|
|
295
|
28
|
296 public static void postName() {
|
15
|
297 final String uri = SERVER_ROOT_URI + "/hello";
|
|
298 WebResource resource = Client.create().resource(uri);
|
28
|
299 ObjectNode jobj = Json.newObject();
|
15
|
300 jobj.put("name","taro");
|
|
301 // ClientResponse response = resource.accept(MediaType.APPLICATION_JSON)
|
|
302 ClientResponse response = resource.header("Content-type",MediaType.APPLICATION_JSON)
|
|
303 .entity(jobj.toString())
|
|
304 .post(ClientResponse.class);
|
|
305 System.out.println(String.format("POST on [%s], status code [%d]", uri, response.getStatus()));
|
|
306 System.out.println(response.getEntity(String.class));
|
|
307 }
|
|
308 }
|