|
From: <pe...@us...> - 2003-09-22 19:24:13
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders
In directory sc8-pr-cvs1:/tmp/cvs-serv4908/src/java/org/neuclear/senders
Modified Files:
LogSender.java SmtpSender.java SoapSender.java
Added Files:
Sender.java
Log Message:
More fixes throughout to problems caused by renaming.
--- NEW FILE: Sender.java ---
package org.neuclear.senders;
import org.neuclear.id.NamedObject;
import org.neudist.utils.NeudistException;
/*
NeuClear Distributed Transaction Clearing Platform
(C) 2003 Pelle Braendgaard
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/**
*
* User: pelleb
* Date: Sep 22, 2003
* Time: 1:28:39 PM
*/
public abstract class Sender {
public abstract void send(String endpoint, NamedObject obj) throws NeudistException;
public static void quickSend(String receiver, NamedObject obj) {
}
}
Index: LogSender.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders/LogSender.java,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** LogSender.java 19 Sep 2003 14:41:29 -0000 1.1.1.1
--- LogSender.java 22 Sep 2003 19:24:02 -0000 1.2
***************
*** 1,10 ****
package org.neuclear.senders;
- import org.neuclear.crypto.Base64;
import org.neuclear.id.NamedObject;
import org.neuclear.id.NamedObjectFactory;
import org.neuclear.time.TimeTools;
! import org.neuclear.utils.NeudistException;
! import org.neuclear.utils.Utility;
import java.io.BufferedReader;
--- 1,10 ----
package org.neuclear.senders;
import org.neuclear.id.NamedObject;
import org.neuclear.id.NamedObjectFactory;
import org.neuclear.time.TimeTools;
! import org.neudist.crypto.Base64;
! import org.neudist.utils.NeudistException;
! import org.neudist.utils.Utility;
import java.io.BufferedReader;
***************
*** 23,26 ****
--- 23,29 ----
* $Id$
* $Log$
+ * Revision 1.2 2003/09/22 19:24:02 pelle
+ * More fixes throughout to problems caused by renaming.
+ *
* Revision 1.1.1.1 2003/09/19 14:41:29 pelle
* First import into the neuclear project. This was originally under the SF neudist
***************
*** 47,53 ****
public void send(String endpoint, NamedObject obj) throws NeudistException {
try {
! String digest=URLEncoder.encode(Base64.encode(obj.getDigest()));
! String name=URLEncoder.encode(obj.getName());
! URL url=new URL(Utility.denullString(endpoint,LOGGER)+"?nohtml=1&name="+name+"&digest="+digest);
url.openStream();
--- 50,56 ----
public void send(String endpoint, NamedObject obj) throws NeudistException {
try {
! String digest = URLEncoder.encode(Base64.encode(obj.getDigest()));
! String name = URLEncoder.encode(obj.getName());
! URL url = new URL(Utility.denullString(endpoint, LOGGER) + "?nohtml=1&name=" + name + "&digest=" + digest);
url.openStream();
***************
*** 56,91 ****
// if (!line.substring(0,2).equals("OK")) // TODO We need to be able to sense if there is a real error
// System.err.println("Error logging: "+line);
! //throw new NeudistException("Object wasn't logged");
} catch (MalformedURLException e) {
Utility.rethrowException(e);
} catch (IOException e) {
! Utility.rethrowException(e);
}
}
! public static void main (String args[]){
try {
logObject("neu://free");
logObject("neu://free/pelle");
logObject("neu://pelle");
! System.out.println("Object neu://free/pelle was logged at: "+getTimeStamp(NamedObjectFactory.fetchNamedObject("neu://free/pelle")));
} catch (NeudistException e) {
e.printStackTrace(); //To change body of catch statement use Options | File Templates.
}
}
! public static Timestamp getTimeStamp(String endpoint,byte rdigest[]) throws NeudistException {
try {
! String digest=Base64.encode(rdigest);
// System.out.println(digest);
! String encdigest=URLEncoder.encode(digest);
! URL url=null;
! url = new URL(LOGGER+"?mode=Query&nohtml=1&digest="+encdigest);
! BufferedReader reader=new BufferedReader(new InputStreamReader(url.openStream()));
! String line=reader.readLine();
// System.out.println(line);
! int pos=line.indexOf('\t');
! if (pos>=0) {
! String stamp=line.substring(0,pos);
return TimeTools.parseTimeStamp(stamp);
}
--- 59,95 ----
// if (!line.substring(0,2).equals("OK")) // TODO We need to be able to sense if there is a real error
// System.err.println("Error logging: "+line);
! //throw new NeudistException("Object wasn't logged");
} catch (MalformedURLException e) {
Utility.rethrowException(e);
} catch (IOException e) {
! Utility.rethrowException(e);
}
}
! public static void main(String args[]) {
try {
logObject("neu://free");
logObject("neu://free/pelle");
logObject("neu://pelle");
! System.out.println("Object neu://free/pelle was logged at: " + getTimeStamp(NamedObjectFactory.fetchNamedObject("neu://free/pelle")));
} catch (NeudistException e) {
e.printStackTrace(); //To change body of catch statement use Options | File Templates.
}
}
!
! public static Timestamp getTimeStamp(String endpoint, byte rdigest[]) throws NeudistException {
try {
! String digest = Base64.encode(rdigest);
// System.out.println(digest);
! String encdigest = URLEncoder.encode(digest);
! URL url = null;
! url = new URL(LOGGER + "?mode=Query&nohtml=1&digest=" + encdigest);
! BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
! String line = reader.readLine();
// System.out.println(line);
! int pos = line.indexOf('\t');
! if (pos >= 0) {
! String stamp = line.substring(0, pos);
return TimeTools.parseTimeStamp(stamp);
}
***************
*** 98,103 ****
return null;
}
public static Timestamp getTimeStamp(NamedObject obj) throws NeudistException {
! return getTimeStamp(Utility.denullString(obj.getParent().getLogger(),LOGGER),obj.getDigest());
}
--- 102,108 ----
return null;
}
+
public static Timestamp getTimeStamp(NamedObject obj) throws NeudistException {
! return getTimeStamp(Utility.denullString(obj.getParent().getLogger(), LOGGER), obj.getDigest());
}
***************
*** 105,115 ****
private static void logObject(String name) throws NeudistException {
System.out.print("Fetching...");
! NamedObject obj=NamedObjectFactory.fetchNamedObject(name);
! System.out.println("Got "+obj.getName());
! Sender log=new LogSender();
System.out.print("Logging...");
! log.send(LOGGER,obj);
System.out.println("Done");
}
! public static final String LOGGER="http://logger.neuclear.org/log.cgi";
}
--- 110,121 ----
private static void logObject(String name) throws NeudistException {
System.out.print("Fetching...");
! NamedObject obj = NamedObjectFactory.fetchNamedObject(name);
! System.out.println("Got " + obj.getName());
! Sender log = new LogSender();
System.out.print("Logging...");
! log.send(LOGGER, obj);
System.out.println("Done");
}
!
! public static final String LOGGER = "http://logger.neuclear.org/log.cgi";
}
Index: SmtpSender.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders/SmtpSender.java,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** SmtpSender.java 19 Sep 2003 14:41:29 -0000 1.1.1.1
--- SmtpSender.java 22 Sep 2003 19:24:02 -0000 1.2
***************
*** 8,11 ****
--- 8,14 ----
* $Id$
* $Log$
+ * Revision 1.2 2003/09/22 19:24:02 pelle
+ * More fixes throughout to problems caused by renaming.
+ *
* Revision 1.1.1.1 2003/09/19 14:41:29 pelle
* First import into the neuclear project. This was originally under the SF neudist
***************
*** 27,32 ****
import org.neuclear.id.NamedObject;
! import org.neuclear.utils.NeudistException;
! import org.neuclear.utils.Utility;
import javax.mail.*;
--- 30,35 ----
import org.neuclear.id.NamedObject;
! import org.neudist.utils.NeudistException;
! import org.neudist.utils.Utility;
import javax.mail.*;
***************
*** 42,46 ****
Properties props = System.getProperties();
if (endpoint.startsWith("mailto:"))
! endpoint=endpoint.substring(7);
// -- Attaching to default Session, or we could start a new one --
--- 45,49 ----
Properties props = System.getProperties();
if (endpoint.startsWith("mailto:"))
! endpoint = endpoint.substring(7);
// -- Attaching to default Session, or we could start a new one --
***************
*** 55,59 ****
msg.setFrom(new InternetAddress("pe...@ne..."));// TODO Remove this hardcoded email
msg.setRecipients(Message.RecipientType.TO,
! InternetAddress.parse(endpoint, false));
// -- We could include CC recipients too --
--- 58,62 ----
msg.setFrom(new InternetAddress("pe...@ne..."));// TODO Remove this hardcoded email
msg.setRecipients(Message.RecipientType.TO,
! InternetAddress.parse(endpoint, false));
// -- We could include CC recipients too --
***************
*** 63,75 ****
// -- Set the subject and body text --
! msg.setSubject("You have received a New Named Object: "+obj.getName());
! BodyPart body=new MimeBodyPart();
body.setText("This message contains a signed named object. Please see http://neuclear.org for more info.");
! Multipart multi=new MimeMultipart();
multi.addBodyPart(body);
! BodyPart objpart=new MimeBodyPart();
objpart.setText(obj.asXML());
! objpart.setHeader("Content-type","application/nsdl");
multi.addBodyPart(objpart);
msg.setContent(multi);
--- 66,78 ----
// -- Set the subject and body text --
! msg.setSubject("You have received a New Named Object: " + obj.getName());
! BodyPart body = new MimeBodyPart();
body.setText("This message contains a signed named object. Please see http://neuclear.org for more info.");
! Multipart multi = new MimeMultipart();
multi.addBodyPart(body);
! BodyPart objpart = new MimeBodyPart();
objpart.setText(obj.asXML());
! objpart.setHeader("Content-type", "application/nsdl");
multi.addBodyPart(objpart);
msg.setContent(multi);
Index: SoapSender.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders/SoapSender.java,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** SoapSender.java 19 Sep 2003 14:41:29 -0000 1.1.1.1
--- SoapSender.java 22 Sep 2003 19:24:02 -0000 1.2
***************
*** 1,4 ****
package org.neuclear.senders;
! /**
* (C) 2003 Antilles Software Ventures SA
* User: pelleb
--- 1,5 ----
package org.neuclear.senders;
!
! /**
* (C) 2003 Antilles Software Ventures SA
* User: pelleb
***************
*** 7,10 ****
--- 8,14 ----
* $Id$
* $Log$
+ * Revision 1.2 2003/09/22 19:24:02 pelle
+ * More fixes throughout to problems caused by renaming.
+ *
* Revision 1.1.1.1 2003/09/19 14:41:29 pelle
* First import into the neuclear project. This was originally under the SF neudist
***************
*** 26,36 ****
import org.neuclear.id.NamedObject;
! import org.neuclear.utils.NeudistException;
! import org.neuclear.xml.soap.SOAPTools;
public class SoapSender extends Sender {
public void send(String endpoint, NamedObject obj) throws NeudistException {
! SOAPTools.soapRequest(endpoint,obj.getElement(),"/receive");
}
}
--- 30,40 ----
import org.neuclear.id.NamedObject;
! import org.neudist.utils.NeudistException;
! import org.neudist.xml.soap.SOAPTools;
public class SoapSender extends Sender {
public void send(String endpoint, NamedObject obj) throws NeudistException {
! SOAPTools.soapRequest(endpoint, obj.getElement(), "/receive");
}
}
|