|
From: SVN c. m. f. t. SWORD-A. p. <swo...@li...> - 2012-04-27 16:37:09
|
Revision: 506
http://sword-app.svn.sourceforge.net/sword-app/?rev=506&view=rev
Author: richard-jones
Date: 2012-04-27 16:37:03 +0000 (Fri, 27 Apr 2012)
Log Message:
-----------
Error handling improvements
* add default title to error documents
* support configurable alternate urls to error documents
* max upload size now expects bytes not kilobytes
Modified Paths:
--------------
JavaServer2.0/trunk/src/main/java/org/swordapp/server/ErrorDocument.java
JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordAPIEndpoint.java
JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfiguration.java
JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfigurationDefault.java
JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordError.java
Modified: JavaServer2.0/trunk/src/main/java/org/swordapp/server/ErrorDocument.java
===================================================================
--- JavaServer2.0/trunk/src/main/java/org/swordapp/server/ErrorDocument.java 2012-04-27 12:44:54 UTC (rev 505)
+++ JavaServer2.0/trunk/src/main/java/org/swordapp/server/ErrorDocument.java 2012-04-27 16:37:03 UTC (rev 506)
@@ -85,6 +85,7 @@
// write some boiler-plate text into the document
Element title = new Element("atom:title", UriRegistry.ATOM_NAMESPACE);
+ title.appendChild("ERROR");
Element updates = new Element("atom:updated", UriRegistry.ATOM_NAMESPACE);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
updates.appendChild(sdf.format(new Date()));
@@ -118,6 +119,20 @@
error.appendChild(vd);
}
+ String alternate = config.getAlternateUrl();
+ String altContentType = config.getAlternateUrlContentType();
+ if (alternate != null && !"".equals(alternate))
+ {
+ Element altLink = new Element("atom:link", UriRegistry.ATOM_NAMESPACE);
+ altLink.addAttribute(new Attribute("rel", "alternate"));
+ if (altContentType != null && !"".equals(altContentType))
+ {
+ altLink.addAttribute(new Attribute("type", altContentType));
+ }
+ altLink.addAttribute(new Attribute("href", alternate));
+ error.appendChild(altLink);
+ }
+
try
{
// now get it written out
Modified: JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordAPIEndpoint.java
===================================================================
--- JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordAPIEndpoint.java 2012-04-27 12:44:54 UTC (rev 505)
+++ JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordAPIEndpoint.java 2012-04-27 16:37:03 UTC (rev 506)
@@ -164,12 +164,12 @@
// Set the file to be deposited
deposit.setFile(file);
- long fLength = file.length() / 1024; // in kilobytes
+ long fLength = file.length(); // in bytes
if ((config.getMaxUploadSize() != -1) && (fLength > config.getMaxUploadSize()))
{
String msg = "The uploaded file exceeded the maximum file size this server will accept (the file is " +
- fLength + "kB but the server will only accept files as large as " +
- config.getMaxUploadSize() + "kB)";
+ fLength + " bytes but the server will only accept files as large as " +
+ config.getMaxUploadSize() + " bytes)";
throw new SwordError(UriRegistry.ERROR_MAX_UPLOAD_SIZE_EXCEEDED, msg);
}
Modified: JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfiguration.java
===================================================================
--- JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfiguration.java 2012-04-27 12:44:54 UTC (rev 505)
+++ JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfiguration.java 2012-04-27 16:37:03 UTC (rev 506)
@@ -21,4 +21,8 @@
String getTempDirectory();
int getMaxUploadSize();
+
+ String getAlternateUrl();
+
+ String getAlternateUrlContentType();
}
Modified: JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfigurationDefault.java
===================================================================
--- JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfigurationDefault.java 2012-04-27 12:44:54 UTC (rev 505)
+++ JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordConfigurationDefault.java 2012-04-27 16:37:03 UTC (rev 506)
@@ -51,4 +51,14 @@
{
return -1;
}
+
+ public String getAlternateUrl()
+ {
+ return null;
+ }
+
+ public String getAlternateUrlContentType()
+ {
+ return null;
+ }
}
Modified: JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordError.java
===================================================================
--- JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordError.java 2012-04-27 12:44:54 UTC (rev 505)
+++ JavaServer2.0/trunk/src/main/java/org/swordapp/server/SwordError.java 2012-04-27 16:37:03 UTC (rev 506)
@@ -1,8 +1,5 @@
package org.swordapp.server;
-import java.util.HashMap;
-import java.util.Map;
-
public class SwordError extends Exception
{
private String errorUri;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|