1 package org.astrogrid.portal.myspace.acting.framework;
2
3 import java.net.URL;
4 import java.util.Map;
5
6 /***
7 * Upload the contents of a URL into MySpace.
8 *
9 * @author peter.shillan
10 */
11 public class UploadURLHandler extends AbstractMySpaceHandler {
12
13 /***
14 * @see org.astrogrid.portal.myspace.acting.framework.AbstractMySpaceHandler#AbstractMySpaceHandler(org.astrogrid.portal.myspace.acting.framework.ContextWrapper)
15 * @param context
16 */
17 public UploadURLHandler(ContextWrapper context) {
18 super(context);
19 }
20
21 /***
22 * Upload the contents of a URL into MySpace.
23 *
24 * @see org.astrogrid.portal.myspace.acting.framework.AbstractMySpaceHandler#executeTemplateMethod(java.util.Map)
25 */
26 protected void executeTemplateMethod(Map results) throws Throwable {
27 String dest = context.getParameter(MySpaceHandler.PARAM_DEST);
28 String urlSpec = context.getParameter(MySpaceHandler.PARAM_URL);
29
30 if(dest != null && dest.length() > 0 &&
31 urlSpec != null && urlSpec.length() > 0) {
32 try {
33 URL url = new URL(urlSpec);
34 context.getStoreClient().putUrl(url, dest, false);
35 }
36 catch(Exception e) {
37 throw new MySpaceHandlerException("error uploading url", e);
38 }
39 }
40 else {
41 throw new MySpaceHandlerException("invalid destination or url");
42 }
43 }
44 }