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) {



Reply via email to