Author: batosai
Date: 2008-08-12 15:04:17 +0000 (Tue, 12 Aug 2008)
New Revision: 21761
Modified:
trunk/apps/WoT/src/plugins/WoT/WoTplugin.java
Log:
Refactor.
Modified: trunk/apps/WoT/src/plugins/WoT/WoTplugin.java
===================================================================
--- trunk/apps/WoT/src/plugins/WoT/WoTplugin.java 2008-08-12 14:45:27 UTC
(rev 21760)
+++ trunk/apps/WoT/src/plugins/WoT/WoTplugin.java 2008-08-12 15:04:17 UTC
(rev 21761)
@@ -64,7 +64,6 @@
wot = new WoT(db);
client = pr.getHLSimpleClient();
- //inserter = new IdentityInserter(db, client);
fetcher = new IdentityFetcher(db, wot, client);
Config nc = pr.getNode().config;
@@ -299,7 +298,7 @@
createForm.addChild("input", new String[] { "type", "name",
"size", "value" }, new String[] { "text", "insertURI", "70",
keypair[0].toString() });
createForm.addChild("br");
createForm.addChild("#", "Publish trust list ");
- createForm.addChild("input", new String[] { "type", "name",
"checked" }, new String[] { "checkbox", "publishTrustList", "true"});
+ createForm.addChild("input", new String[] { "type", "name",
"value", "checked" }, new String[] { "checkbox", "publishTrustList", "true",
"checked"});
createForm.addChild("br");
createForm.addChild("input", new String[] { "type", "name",
"value" }, new String[] { "hidden", "nickName", nickName });
createForm.addChild("input", new String[] { "type", "name",
"value" }, new String[] { "submit", "create", "Create a new identity !" });
@@ -317,58 +316,64 @@
}
String page = request.getPath().substring(SELF_URI.length());
-
- if(page.equals("/createIdentity")) {
- return
makeCreateIdentityPage(request.getPartAsString("nickName",1024));
- }
- else if(page.equals("/createIdentity2")) {
- try {
+
+ try {
+ if(page.equals("/createIdentity")) {
+ return
makeCreateIdentityPage(request.getPartAsString("nickName",1024));
+ }
+ else if(page.equals("/createIdentity2")) {
createIdentity(request);
- } catch (Exception e) {
- return e.getLocalizedMessage();
+ return makeOwnIdentitiesPage();
}
- return makeOwnIdentitiesPage();
+ else if(page.equals("/addIdentity")) {
+ return addIdentity(request);
+ }
+ else if(page.equals("/viewTree")) {
+ return
makeKnownIdentitiesPage(request.getPartAsString("ownerURI", 1024));
+ }
+ else if (page.equals("/setTrust")) {
+ setTrust(request);
+ return
makeKnownIdentitiesPage(request.getPartAsString("truster", 1024));
+ }
+ else {
+ return makeHomePage();
+ }
+ } catch (Exception e) {
+ return e.getLocalizedMessage();
}
- else if(page.equals("/addIdentity")) {
- return addIdentity(request);
- }
- else if(page.equals("/viewTree")) {
- return
makeKnownIdentitiesPage(request.getPartAsString("ownerURI", 1024));
- }
- else if (page.equals("/setTrust")) {
- return updateTrust(request);
- }
- else {
- return makeHomePage();
- }
}
- private String updateTrust(HTTPRequest request) {
+ private void setTrust(HTTPRequest request) throws Exception {
+
+ setTrust( request.getPartAsString("truster", 1024),
+ request.getPartAsString("trustee",
1024),
+
Integer.parseInt(request.getPartAsString("value", 1024)),
+ request.getPartAsString("comment",
1024));
+ }
+
+ private void setTrust(String truster, String trustee, int value, String
comment) throws Exception {
- try {
- Identity truster = wot.getIdentityByURI(new
FreenetURI(request.getPartAsString("truster", 1024)));
- Identity trustee = wot.getIdentityByURI(new
FreenetURI(request.getPartAsString("trustee", 1024)));
- int value =
Integer.parseInt(request.getPartAsString("value", 1024));
- String comment = request.getPartAsString("comment",
1024);
+ Identity trusterId = wot.getIdentityByURI(new
FreenetURI(truster));
+ Identity trusteeId = wot.getIdentityByURI(new
FreenetURI(trustee));
+
+ if(!(trusterId instanceof OwnIdentity)) throw new Exception
("Truster isn't an OwnIdentity");
+ if(trusterId == null) throw new Exception ("Truster doesn't
exist");
+ if(trusteeId == null) throw new Exception ("Trustee doesn't
exist");
+
+ setTrust((OwnIdentity)trusterId, trusteeId, value, comment);
+}
+
+ private void setTrust(OwnIdentity truster, Identity trustee, int value,
String comment) throws Exception {
- wot.setTrust(new Trust(truster, trustee, value,
comment));
-
- if(truster instanceof OwnIdentity) {
- OwnIdentity id = (OwnIdentity) truster;
- if(id.getLastInsert() != null) { // Insert
already in progress
- id.setLastInsert(null);
- db.store(id);
- new IdentityInserter(db,
client).insert(id);
- }
- }
-
- db.commit();
-
- return
makeKnownIdentitiesPage(request.getPartAsString("truster", 1024));
-
- } catch (Exception e) {
- return e.getLocalizedMessage();
+ wot.setTrust(new Trust(truster, trustee, value, comment));
+
+ if(truster.getLastInsert() != null) { // Insert already in
progress
+ truster.setLastInsert(null);
+ db.store(truster);
+ new IdentityInserter(db, client).insert(truster);
}
+
+ db.commit();
}
private String addIdentity(HTTPRequest request) {
@@ -392,24 +397,35 @@
return makeKnownIdentitiesPage();
}
- private OwnIdentity createIdentity(HTTPRequest request) throws
TransformerConfigurationException, FileNotFoundException,
MalformedURLException, ParserConfigurationException, TransformerException,
IOException, InsertException {
- return createIdentity( new
FreenetURI(request.getPartAsString("insertURI",1024)).setKeyType("USK"),
- new
FreenetURI(request.getPartAsString("requestURI",1024)).setKeyType("USK"),
+ private OwnIdentity createIdentity(HTTPRequest request) throws
Exception {
+ return createIdentity(
request.getPartAsString("insertURI",1024),
+
request.getPartAsString("requestURI",1024),
request.getPartAsString("nickName", 1024),
-
(request.getPartAsString("publishTrustList", 1024).equals("")) ? "false" :
"true");
+
request.getPartAsString("publishTrustList", 1024));
}
- private OwnIdentity createIdentity(String nickName, String
publishTrustList) throws TransformerConfigurationException,
FileNotFoundException, ParserConfigurationException, TransformerException,
IOException, InsertException {
+ private OwnIdentity createIdentity(String nickName, String
publishTrustList) throws Exception {
FreenetURI[] keypair = client.generateKeyPair("WoT");
return createIdentity( keypair[0], keypair[1], nickName,
publishTrustList);
}
+
+ private OwnIdentity createIdentity(String insertURI, String requestURI,
String nickName, String publishTrustList) throws Exception {
+
+ return createIdentity(new FreenetURI(insertURI), new
FreenetURI(requestURI), nickName, publishTrustList);
+ }
+
- private OwnIdentity createIdentity(FreenetURI insertURI, FreenetURI
requestURI, String nickName, String publishTrustList) throws
TransformerConfigurationException, FileNotFoundException,
ParserConfigurationException, TransformerException, IOException,
InsertException {
+ private OwnIdentity createIdentity(FreenetURI insertURI, FreenetURI
requestURI, String nickName, String publishTrustList) throws Exception {
- OwnIdentity identity = new OwnIdentity( insertURI, requestURI,
null, new Date());
+ if(nickName==null || nickName.equals("")) throw new
Exception("Missing parameter (NickName)");
+
+ OwnIdentity identity = new OwnIdentity(
insertURI.setKeyType("USK"), requestURI.setKeyType("USK"), null, new Date());
identity.setProp("nickName", nickName, db);
+
+ if(!publishTrustList.equals("true")) publishTrustList = "false";
identity.setProp("publishTrustList", publishTrustList, db);
+
db.store(identity);
Score score = new Score(identity, identity, 100, 0, 100); // We
need to initialize the trust tree
@@ -440,40 +456,54 @@
@Override
public void handle(PluginReplySender replysender, SimpleFieldSet
params, Bucket data, int accesstype) {
- if(params.get("Message").equals("CreateIdentity")) {
- replysender.send(handleCreateIdentity(params), data);
+ try {
+ if(params.get("Message").equals("CreateIdentity")) {
+ replysender.send(handleCreateIdentity(params),
data);
+ }
+ else if(params.get("Message").equals("SetTrust")) {
+ replysender.send(handleSetTrust(params), data);
+ }
+ else {
+ throw new Exception("Unknown message (" +
params.get("Message") + ")");
+ }
}
+ catch (Exception e) {
+ replysender.send(errorMessageFCP(e), data);
+ }
}
-
- private SimpleFieldSet handleCreateIdentity(SimpleFieldSet params) {
+
+ private SimpleFieldSet handleCreateIdentity(SimpleFieldSet params)
throws Exception {
SimpleFieldSet sfs = new SimpleFieldSet(false);
OwnIdentity identity;
- try {
- if(params.get("NickName")==null) throw new
Exception("Missing parameter (NickName)");
- else if(params.get("PublishTrustList")==null) throw new
Exception("Missing parameter (publishTrustList)");
- else if(params.get("RequestURI")==null ||
params.get("InsertURI")==null) {
- identity =
createIdentity(params.get("NickName"), params.get("PublishTrustList"));
- sfs.putAppend("Message", "IdentityCreated");
- sfs.putAppend("InsertURI",
identity.getInsertURI().toString());
- sfs.putAppend("RequestURI",
identity.getRequestURI().toString());
- }
- else {
- identity = createIdentity( new
FreenetURI(params.get("InsertURI")),
-
new FreenetURI(params.get("RequestURI")),
-
params.get("NickName"),
-
params.get("PublishTrustList"));
- sfs.putAppend("Message", "IdentityCreated");
- sfs.putAppend("InsertURI",
identity.getInsertURI().toString());
- sfs.putAppend("RequestURI",
identity.getRequestURI().toString());
- }
-
- return sfs;
- } catch (Exception e) {
- return errorMessageFCP(e);
+ if(params.get("RequestURI")==null ||
params.get("InsertURI")==null) {
+ identity = createIdentity(params.get("NickName"),
params.get("PublishTrustList"));
+ sfs.putAppend("Message", "IdentityCreated");
+ sfs.putAppend("InsertURI",
identity.getInsertURI().toString());
+ sfs.putAppend("RequestURI",
identity.getRequestURI().toString());
}
+ else {
+ identity = createIdentity( new
FreenetURI(params.get("InsertURI")),
+
new FreenetURI(params.get("RequestURI")),
+
params.get("NickName"),
+
params.get("PublishTrustList"));
+ sfs.putAppend("Message", "IdentityCreated");
+ sfs.putAppend("InsertURI",
identity.getInsertURI().toString());
+ sfs.putAppend("RequestURI",
identity.getRequestURI().toString());
+ }
+
+ return sfs;
}
+
+ private SimpleFieldSet handleSetTrust(SimpleFieldSet params) {
+
+ SimpleFieldSet sfs = new SimpleFieldSet(false);
+
+
+
+ return sfs;
+ }
private SimpleFieldSet errorMessageFCP (Exception e) {