annotate src/begin/MakeNode.java @ 12:bf7863a55cd6 draft

add wikigraph.Neo4jTest.java
author one
date Thu, 23 Aug 2012 03:40:48 +0900
parents d8d0855bcdfd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
1 package begin;
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
2
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
3 import java.net.URI;
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
4
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
5 import javax.ws.rs.core.MediaType;
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
6
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
7 import org.json.JSONException;
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
8 import org.json.JSONObject;
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
9
8
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
10
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
11 import com.sun.jersey.api.client.Client;
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
12 import com.sun.jersey.api.client.ClientHandlerException;
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
13 import com.sun.jersey.api.client.ClientResponse;
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
14 import com.sun.jersey.api.client.UniformInterfaceException;
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
15 import com.sun.jersey.api.client.WebResource;
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
16
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
17 public class MakeNode {
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
18 final static String SERVER_ROOT_URI = "http://localhost:7474";
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
19 final static String nodeEntryPointUri = "http://localhost:7474/db/data/node";
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
20 final static String nodeIndexEntryPointUri = "http://localhost:7474/db/data/index/node";
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
21
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
22 public static URI createNode() {
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
23 WebResource resource = Client.create().resource(nodeEntryPointUri);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
24 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON).post(ClientResponse.class);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
25 System.out.println(String.format(
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
26 "POST to [%s], status code [%d], location header [%s]",
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
27 nodeEntryPointUri, response.getStatus(), response.getLocation()
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
28 .toString()));
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
29 return response.getLocation();
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
30 }
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
31
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
32 public static ClientResponse getNode(String nodeUri) {
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
33 WebResource resource = Client.create().resource(nodeUri);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
34 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON).get(ClientResponse.class);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
35 System.out.println(String.format("GET on [%s], status code [%d]",nodeUri, response.getStatus() ));
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
36 return response;
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
37 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
38
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
39 public static void setProperty(String uri,String propertyName,String propertyValue) {
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
40 String propertyUri = uri + "/properties/" + propertyName;
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
41 WebResource resource = Client.create().resource(propertyUri); // http://localhost:7474/db/data/node/(node_id)/properties/(property_name)
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
42 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON)
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
43 .type(MediaType.APPLICATION_JSON)
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
44 .entity(toJsonStringLiteral(propertyValue))
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
45 .put(ClientResponse.class);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
46 System.out.println(String.format("PUT to [%s], status code [%d]",propertyUri, response.getStatus()));
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
47 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
48
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
49 public static void addProperty(URI nodeUri, String propertyName,
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
50 String propertyValue) {
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
51 setProperty(nodeUri.toString(), propertyName, propertyValue);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
52 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
53
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
54 private static String toJsonStringLiteral(String str) {
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
55 return "\"" + str + "\"";
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
56 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
57
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
58 public static void createRelationship(String uri1, String uri2, String typeValue) throws JSONException {
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
59 String relationshipUri = uri1 + "/relationships";
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
60 WebResource resource = Client.create().resource(relationshipUri);
8
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
61 JSONObject obj = new JSONObject();
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
62 obj.put("to",uri2);
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
63 obj.put("type", typeValue);
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
64
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
65 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON).type(MediaType.APPLICATION_JSON)
8
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
66 .entity(obj.toString())
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
67 .post(ClientResponse.class);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
68
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
69 System.out.println(String.format("POST to [%s], status code [%d]",relationshipUri , response.getStatus()));
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
70 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
71
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
72 public static void deleteNode(String uri) {
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
73 WebResource resource = Client.create().resource(uri);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
74 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON).delete(ClientResponse.class);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
75 System.out.println(String.format(
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
76 "DELETE to [%s], status code [%d]", uri, response.getStatus()));
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
77 }
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
78
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
79 public static URI createIndexNode(String indexName) throws JSONException {
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
80 WebResource resource = Client.create().resource(nodeIndexEntryPointUri);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
81 JSONObject obj = new JSONObject();
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
82 obj.put("name",indexName);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
83 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON)
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
84 .type(MediaType.APPLICATION_JSON)
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
85 .entity(obj.toString())
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
86 .post(ClientResponse.class);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
87 System.out.println(String.format(
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
88 "POST to [%s], status code [%d], location header [%s]",
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
89 nodeIndexEntryPointUri, response.getStatus(), response.getLocation()
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
90 .toString()));
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
91 return response.getLocation();
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
92 }
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
93
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
94 public static URI addNodeToIndex(String indexUri, String value, String uri, String key) throws JSONException {
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
95 WebResource resource = Client.create().resource(indexUri);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
96 JSONObject obj = new JSONObject();
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
97 obj.put("value", value);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
98 obj.put("uri",uri);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
99 obj.put("key",key);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
100
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
101 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON)
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
102 .type(MediaType.APPLICATION_JSON)
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
103 .entity(obj.toString())
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
104 .post(ClientResponse.class);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
105 System.out.println(String.format(
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
106 "POST to [%s], status code [%d], location header [%s]",
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
107 nodeIndexEntryPointUri, response.getStatus(), response.getLocation()
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
108 .toString()));
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
109 return response.getLocation();
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
110 }
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
111
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
112 public static void main(String[] args) throws ClientHandlerException, UniformInterfaceException, JSONException {
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
113
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
114 final String uri1 = "http://localhost:7474/db/data/node/1";
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
115 final String uri2 = "http://localhost:7474/db/data/node/2";
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
116
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
117 final String indexUri = "http://localhost:7474/db/data/index/node/hogehoge";
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
118 addNodeToIndex(indexUri, "test_value", uri1, "test_key");
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
119
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
120 ClientResponse response = getNode(uri1);
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
121 // System.out.println(response.getEntity(String.class));
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
122 JSONObject obj = new JSONObject(response.getEntity(String.class));
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
123 System.out.println(obj.toString());
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
124
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
125
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
126 /*
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
127
8
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
128 getNode(uri2);
d8d0855bcdfd add CharReader.java , WikiLinkParser.java
one
parents: 6
diff changeset
129 createRelationship(uri1, uri2, "RELATED_TO");
12
bf7863a55cd6 add wikigraph.Neo4jTest.java
one
parents: 8
diff changeset
130 */
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
131
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
132
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
133 /*
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
134 URI firstNode = createNode();
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
135 addProperty(firstNode, "name", "Joe Strummer");
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
136 */
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
137 /*
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
138 setProperty(uri1, "name", "Jason Kidd");
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
139 setProperty(uri2, "name", "Magic");
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
140 */
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
141
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
142 }
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
143
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
144 public static void testCreateNodeWithProperty() {
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
145 WebResource resource = Client.create().resource(nodeEntryPointUri);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
146 ClientResponse response = resource.accept(MediaType.APPLICATION_JSON)
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
147 .type(MediaType.APPLICATION_JSON).entity("{ \"foo\" : \"hogehoge\" }"/* Empty Node */)
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
148 .post(ClientResponse.class);
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
149 System.out.println(String.format(
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
150 "POST to [%s], status code [%d], location header [%s]",
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
151 nodeEntryPointUri, response.getStatus(), response.getLocation()
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
152 .toString()));
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
153 }
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
154
6
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
155
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
156
86924c16b4df modify MakeNode.js
one
parents: 2
diff changeset
157
2
667546c44b36 modify MakeNode.java
one
parents:
diff changeset
158 }