You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2006/01/20 18:08:03 UTC
svn commit: r370863 - in /lenya/trunk/src/java/org/apache/lenya/cms:
editors/InsertAsset.java site/usecases/Assets.java
Author: andreas
Date: Fri Jan 20 09:07:59 2006
New Revision: 370863
URL: http://svn.apache.org/viewcvs?rev=370863&view=rev
Log:
Show appropriate error message if max upload size is exceeded
Modified:
lenya/trunk/src/java/org/apache/lenya/cms/editors/InsertAsset.java
lenya/trunk/src/java/org/apache/lenya/cms/site/usecases/Assets.java
Modified: lenya/trunk/src/java/org/apache/lenya/cms/editors/InsertAsset.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/editors/InsertAsset.java?rev=370863&r1=370862&r2=370863&view=diff
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/editors/InsertAsset.java (original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/editors/InsertAsset.java Fri Jan 20 09:07:59 2006
@@ -17,6 +17,7 @@
package org.apache.lenya.cms.editors;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
import org.apache.lenya.cms.publication.Resource;
@@ -24,6 +25,7 @@
import org.apache.lenya.cms.usecase.DocumentUsecase;
import org.apache.lenya.cms.usecase.UsecaseException;
import org.apache.lenya.cms.usecase.UsecaseInvoker;
+import org.apache.lenya.cms.usecase.UsecaseMessage;
/**
* Usecase to insert an image into a document.
@@ -86,7 +88,16 @@
if (getLogger().isDebugEnabled())
getLogger().debug("InsertAsset::advance() calling invoker with usecaseName [" + usecaseName + "]");
invoker.invoke(getSourceURL(), usecaseName, getParameters());
- loadResources();
+ if (invoker.getResult() == UsecaseInvoker.SUCCESS) {
+ loadResources();
+ }
+ else {
+ List messages = invoker.getErrorMessages();
+ for (Iterator i = messages.iterator(); i.hasNext(); ) {
+ UsecaseMessage message = (UsecaseMessage) i.next();
+ addErrorMessage(message.getMessage());
+ }
+ }
}
catch (Exception e) {
throw new UsecaseException(e);
Modified: lenya/trunk/src/java/org/apache/lenya/cms/site/usecases/Assets.java
URL: http://svn.apache.org/viewcvs/lenya/trunk/src/java/org/apache/lenya/cms/site/usecases/Assets.java?rev=370863&r1=370862&r2=370863&view=diff
==============================================================================
--- lenya/trunk/src/java/org/apache/lenya/cms/site/usecases/Assets.java (original)
+++ lenya/trunk/src/java/org/apache/lenya/cms/site/usecases/Assets.java Fri Jan 20 09:07:59 2006
@@ -23,6 +23,7 @@
import java.util.HashMap;
import java.util.Map;
import org.apache.cocoon.servlet.multipart.Part;
+import org.apache.cocoon.servlet.multipart.RejectedPart;
import org.apache.lenya.cms.publication.Resource;
import org.apache.lenya.cms.publication.ResourcesManager;
@@ -102,17 +103,16 @@
try {
// Retrieve the resource instance via the ResourcesManager
- resourcesManager = (ResourcesManager)
- this.manager.lookup(ResourcesManager.ROLE);
- Resource theResource =
- resourcesManager.getResource(getSourceDocument(), assetName);
+ resourcesManager = (ResourcesManager) this.manager.lookup(ResourcesManager.ROLE);
+ Resource theResource = resourcesManager.getResource(getSourceDocument(), assetName);
if (theResource == null)
- throw new Exception("no such resource [" + assetName + "] exists for document [ " + getSourceDocument().getId() + "]");
+ throw new Exception("no such resource [" + assetName + "] exists for document [ "
+ + getSourceDocument().getId() + "]");
// Lock the resource nodes
List nodes = new ArrayList();
nodes.addAll(Arrays.asList(theResource.getRepositoryNodes()));
- lockInvolvedObjects((Node[])nodes.toArray(new Node[nodes.size()]));
+ lockInvolvedObjects((Node[]) nodes.toArray(new Node[nodes.size()]));
// Delete the resource
resourcesManager.deleteResource(theResource);
@@ -128,17 +128,31 @@
}
/**
- * Adds an asset.
+ * Adds an asset. If asset upload is not enabled, an error message is added.
*/
protected void addAsset() {
if (getLogger().isDebugEnabled())
getLogger().debug("Assets::addAsset() called");
+ Part file = getPart("file");
+
+ if (file.isRejected()) {
+ String[] params = { Integer.toString(file.getSize()) };
+ addErrorMessage("upload-size-exceeded", params);
+ } else {
+ addAsset(file);
+ }
+ }
+
+ /**
+ * Adds an asset.
+ * @param file The part.
+ */
+ protected void addAsset(Part file) {
String title = getParameterAsString("title");
String creator = getParameterAsString("creator");
String rights = getParameterAsString("rights");
- Part file = getPart("file");
Map metadata = new HashMap();
metadata.put("title", title);
@@ -159,7 +173,6 @@
if (getLogger().isDebugEnabled())
getLogger().debug("Assets::addAsset() done.");
-
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org