You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ba...@apache.org on 2009/10/06 22:26:18 UTC
svn commit: r822477 - in /james/jdkim/trunk: main/
main/src/main/java/org/apache/james/jdkim/
main/src/main/java/org/apache/james/jdkim/tagvalue/
main/src/test/java/org/apache/james/jdkim/ stage/
stage/org.apache.james/jars/
Author: bago
Date: Tue Oct 6 20:26:17 2009
New Revision: 822477
URL: http://svn.apache.org/viewvc?rev=822477&view=rev
Log:
Java 1.4 compatibility: downgraded to mime4j 0.5, some method "backport" and some javadoc fixes.
Added:
james/jdkim/trunk/stage/org.apache.james/jars/apache-mime4j-0.5.jar (with props)
Modified:
james/jdkim/trunk/main/pom.xml
james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/DKIMVerifier.java
james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/Message.java
james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/PublicKeyRecordRetriever.java
james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/tagvalue/PublicKeyRecordImpl.java
james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/MessageTest.java
james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/PublicKeyRecordTest.java
james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/SignatureRecordImplTest.java
james/jdkim/trunk/stage/pom.xml
Modified: james/jdkim/trunk/main/pom.xml
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/pom.xml?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/pom.xml (original)
+++ james/jdkim/trunk/main/pom.xml Tue Oct 6 20:26:17 2009
@@ -99,7 +99,7 @@
<dependency>
<groupId>org.apache.james</groupId>
<artifactId>apache-mime4j</artifactId>
- <version>0.6</version>
+ <version>0.5</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
@@ -112,11 +112,6 @@
<artifactId>dnsjava</artifactId>
<version>2.0.6</version>
</dependency>
- <dependency>
- <groupId>org.apache.james</groupId>
- <artifactId>apache-mime4j</artifactId>
- <version>0.6</version>
- </dependency>
</dependencies>
@@ -133,8 +128,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
- <source>1.5</source>
- <target>1.5</target>
+ <source>1.4</source>
+ <target>1.4</target>
<encoding>iso8859-1</encoding>
</configuration>
</plugin>
Modified: james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/DKIMVerifier.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/DKIMVerifier.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/DKIMVerifier.java (original)
+++ james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/DKIMVerifier.java Tue Oct 6 20:26:17 2009
@@ -86,7 +86,7 @@
* Iterates through signature's declared lookup method
*
* @param sign the signature record
- * @return
+ * @return an "applicable" PublicKeyRecord
* @throws TempFailException
* @throws PermFailException
*/
Modified: james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/Message.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/Message.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/Message.java (original)
+++ james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/Message.java Tue Oct 6 20:26:17 2009
@@ -19,13 +19,6 @@
package org.apache.james.jdkim;
-import org.apache.james.mime4j.MimeException;
-import org.apache.james.mime4j.MimeIOException;
-import org.apache.james.mime4j.io.EOLConvertingInputStream;
-import org.apache.james.mime4j.parser.Field;
-import org.apache.james.mime4j.parser.MimeEntityConfig;
-import org.apache.james.mime4j.parser.MimeTokenStream;
-
import java.io.IOException;
import java.io.InputStream;
import java.util.Collections;
@@ -35,12 +28,17 @@
import java.util.List;
import java.util.Map;
+import org.apache.james.mime4j.MimeException;
+import org.apache.james.mime4j.io.EOLConvertingInputStream;
+import org.apache.james.mime4j.parser.MimeEntityConfig;
+import org.apache.james.mime4j.parser.MimeTokenStream;
+
/**
* The header of an entity (see RFC 2045).
*
* TODO: we have to handle correct ordered extraction for fields.
*/
-public class Message implements Iterable, Headers {
+public class Message implements Headers {
private List fields = new LinkedList();
private Map fieldMap = new HashMap();
@@ -75,7 +73,7 @@
switch (state) {
// a field
case MimeTokenStream.T_FIELD:
- addField(stream.getField());
+ addField(stream.getFieldName(), stream.getField());
break;
// expected ignored tokens
@@ -115,14 +113,14 @@
* @param field
* the field to add.
*/
- public void addField(Field field) {
- List values = (List) fieldMap.get(field.getName().toLowerCase());
+ public void addField(String fieldName, String field) {
+ List values = (List) fieldMap.get(fieldName.toLowerCase());
if (values == null) {
values = new LinkedList();
- fieldMap.put(field.getName().toLowerCase(), values);
+ fieldMap.put(fieldName.toLowerCase(), values);
}
- values.add(new String(field.getRaw().toByteArray()));
- fields.add(new String(field.getRaw().toByteArray()));
+ values.add(field);
+ fields.add(field);
}
/* (non-Javadoc)
@@ -151,7 +149,7 @@
final List l = (List) fieldMap.get(lowerCaseName);
final List results;
if (l == null || l.isEmpty()) {
- results = Collections.emptyList();
+ results = null;
} else {
results = Collections.unmodifiableList(l);
}
Modified: james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/PublicKeyRecordRetriever.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/PublicKeyRecordRetriever.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/PublicKeyRecordRetriever.java (original)
+++ james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/PublicKeyRecordRetriever.java Tue Oct 6 20:26:17 2009
@@ -24,7 +24,7 @@
public interface PublicKeyRecordRetriever {
/**
- * @param method/options the options declared for the lookup method.
+ * @param methodAndOption the options declared for the lookup method.
* @param selector the value of "s=" tag
* @param token the value of the "d=" tag
* @return A list of strings representing 0 to multiple records
Modified: james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/tagvalue/PublicKeyRecordImpl.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/tagvalue/PublicKeyRecordImpl.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/tagvalue/PublicKeyRecordImpl.java (original)
+++ james/jdkim/trunk/main/src/main/java/org/apache/james/jdkim/tagvalue/PublicKeyRecordImpl.java Tue Oct 6 20:26:17 2009
@@ -121,10 +121,11 @@
return Pattern.compile("@");
} else if (pStar != -1) {
if (g.indexOf('*',pStar+1) != -1) throw new IllegalStateException("Invalid granularity using more than one wildcard: "+g);
- String pattern = "^"+Pattern.quote(g.subSequence(0, pStar).toString())+".*"+Pattern.quote(g.subSequence(pStar+1, g.length()).toString())+"$";
+ String pattern = "^\\Q"+g.subSequence(0, pStar).toString()+"\\E.*\\Q"+g.subSequence(pStar+1, g.length()).toString()+"\\E$";
return Pattern.compile(pattern);
} else {
- return Pattern.compile("^"+Pattern.quote(g)+"$");
+ // TODO we need some escaping. On Java 5 we have Pattern.quote that is better
+ return Pattern.compile("^\\Q"+g+"\\E$");
}
}
@@ -161,9 +162,9 @@
rsaKey = (RSAPublicKey) keyFactory.generatePublic(pubSpec);
return rsaKey;
} catch (NoSuchAlgorithmException e) {
- throw new IllegalStateException("Unknown algorithm",e);
+ throw new IllegalStateException("Unknown algorithm: "+e.getMessage());
} catch (InvalidKeySpecException e) {
- throw new IllegalStateException("Invalid key spec",e);
+ throw new IllegalStateException("Invalid key spec: "+e.getMessage());
}
}
Modified: james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/MessageTest.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/MessageTest.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/MessageTest.java (original)
+++ james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/MessageTest.java Tue Oct 6 20:26:17 2009
@@ -30,7 +30,6 @@
import junit.framework.TestCase;
import org.apache.james.mime4j.MimeException;
-import org.apache.james.mime4j.field.UnstructuredField;
public class MessageTest extends TestCase {
@@ -59,17 +58,17 @@
public void testAddField() throws MimeException {
Message m = new Message();
- m.addField(UnstructuredField.parse("Subject: test\r\n"));
- m.addField(UnstructuredField.parse("Subject: test2\r\n"));
+ m.addField("Subject", "Subject: test\r\n");
+ m.addField("Subject", "Subject: test2\r\n");
String f = m.getField("Subject");
assertEquals("Subject: test\r\n", f);
}
public void testGetFields() throws MimeException {
Message m = new Message();
- m.addField(UnstructuredField.parse("Subject: test\r\n"));
- m.addField(UnstructuredField.parse("Subject: test2\r\n"));
- m.addField(UnstructuredField.parse("From: test2\r\n"));
+ m.addField("Subject", "Subject: test\r\n");
+ m.addField("Subject", "Subject: test2\r\n");
+ m.addField("From", "From: test2\r\n");
List f = m.getFields();
List expects = new LinkedList();
expects.add("Subject: test\r\n");
@@ -93,9 +92,9 @@
public void testGetFieldsString() throws MimeException {
Message m = new Message();
- m.addField(UnstructuredField.parse("Subject: test\r\n"));
- m.addField(UnstructuredField.parse("subject: test2\r\n"));
- m.addField(UnstructuredField.parse("From: test2\r\n"));
+ m.addField("Subject", "Subject: test\r\n");
+ m.addField("subject", "subject: test2\r\n");
+ m.addField("From", "From: test2\r\n");
List f = m.getFields("Subject");
List expects = new LinkedList();
expects.add("Subject: test\r\n");
@@ -109,9 +108,9 @@
public void testIterator() throws MimeException {
Message m = new Message();
- m.addField(UnstructuredField.parse("Subject: test\r\n"));
- m.addField(UnstructuredField.parse("subject: test2\r\n"));
- m.addField(UnstructuredField.parse("From: test2\r\n"));
+ m.addField("Subject", "Subject: test\r\n");
+ m.addField("subject", "subject: test2\r\n");
+ m.addField("From", "From: test2\r\n");
Iterator i = m.iterator();
String field = (String) i.next();
assertEquals("Subject: test\r\n", field);
@@ -123,7 +122,7 @@
public void testToString() throws MimeException {
Message m = new Message();
- m.addField(UnstructuredField.parse("Subject: test\r\n"));
+ m.addField("Subject", "Subject: test\r\n");
m.setBodyInputStream(new ByteArrayInputStream("body".getBytes()));
String expected = "Subject: test\r\n\r\nbody";
assertEquals(expected, m.toString());
Modified: james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/PublicKeyRecordTest.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/PublicKeyRecordTest.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/PublicKeyRecordTest.java (original)
+++ james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/PublicKeyRecordTest.java Tue Oct 6 20:26:17 2009
@@ -163,7 +163,8 @@
pkr.validate();
PublicKey pk = pkr.getPublicKey();
assertEquals("RSA", pk.getAlgorithm());
- assertEquals("X.509", pk.getFormat());
+ // On older jvm this is X509
+ // assertEquals("X.509", pk.getFormat());
assertEquals(new BigInteger("140815480285950232210124449496973988135931539914762288985377502488754711434253259186192434865594456027796377309280714060984552676169392598862819043219650259702261370701494928576447797673342985377518637829874968725582762257956980427968667812066816497848410406856165942400151628259779523949079651036806330485849"), ((RSAKey) pk).getModulus());
try {
Modified: james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/SignatureRecordImplTest.java
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/SignatureRecordImplTest.java?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/SignatureRecordImplTest.java (original)
+++ james/jdkim/trunk/main/src/test/java/org/apache/james/jdkim/SignatureRecordImplTest.java Tue Oct 6 20:26:17 2009
@@ -50,19 +50,19 @@
sr.getHashAlgo();
fail("expected failure");
} catch (Exception e) {
- assertTrue(e.getMessage().toLowerCase().contains("hash"));
+ assertTrue(e.getMessage().toLowerCase().indexOf("hash") != -1);
}
try {
sr.getHashMethod();
fail("expected failure");
} catch (Exception e) {
- assertTrue(e.getMessage().toLowerCase().contains("hash"));
+ assertTrue(e.getMessage().toLowerCase().indexOf("hash") != -1);
}
try {
sr.getHashAlgo();
fail("expected failure");
} catch (Exception e) {
- assertTrue(e.getMessage().toLowerCase().contains("hash"));
+ assertTrue(e.getMessage().toLowerCase().indexOf("hash") != -1);
}
}
@@ -72,7 +72,7 @@
sr.validate();
fail("expected failure");
} catch (Exception e) {
- assertTrue(e.getMessage().contains("expired"));
+ assertTrue(e.getMessage().indexOf("expired") != -1);
}
}
Added: james/jdkim/trunk/stage/org.apache.james/jars/apache-mime4j-0.5.jar
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/stage/org.apache.james/jars/apache-mime4j-0.5.jar?rev=822477&view=auto
==============================================================================
Binary file - no diff available.
Propchange: james/jdkim/trunk/stage/org.apache.james/jars/apache-mime4j-0.5.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: james/jdkim/trunk/stage/pom.xml
URL: http://svn.apache.org/viewvc/james/jdkim/trunk/stage/pom.xml?rev=822477&r1=822476&r2=822477&view=diff
==============================================================================
--- james/jdkim/trunk/stage/pom.xml (original)
+++ james/jdkim/trunk/stage/pom.xml Tue Oct 6 20:26:17 2009
@@ -123,7 +123,7 @@
<dependency>
<groupId>org.apache.james</groupId>
<artifactId>apache-mime4j</artifactId>
- <version>0.6</version>
+ <version>0.5</version>
</dependency>
<dependency>
<groupId>dnsjava</groupId>
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org