/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.app.xmlui.aspect.swordclient; import org.apache.cocoon.environment.Request; import org.apache.log4j.Logger; import org.dspace.app.xmlui.aspect.administrative.FlowResult; import org.dspace.core.Context; import org.dspace.sword.client.DSpaceSwordClient; import org.dspace.sword.client.ServiceDocumentHelper; import org.purl.sword.base.Collection; import org.purl.sword.base.ServiceDocument; /** * User: Robin Taylor * Date: 21/03/11 * Time: 22:12 */ public class SelectCollectionAction { private static Logger log = Logger.getLogger(SelectCollectionAction.class); public FlowResult processSelectCollection(Context context, Request request, DSpaceSwordClient DSClient) { FlowResult result = new FlowResult(); result.setContinue(false); // Get all our request parameters String location = request.getParameter("location"); ServiceDocument serviceDoc = (ServiceDocument) request.getAttribute("serviceDoc"); log.info("Collection selected is " + location); log.info("Service Doc reference is " + serviceDoc); // Set the target collection. DSClient.setCollection(location); //Collection collection = ServiceDocumentHelper.getCollection(serviceDoc, location); // Find out what file types and package formats are available and return them to let the user select. String[] fileTypes = ServiceDocumentHelper.getCommonFileTypes(serviceDoc, location); String[] packageFormats = ServiceDocumentHelper.getCommonPackageFormats(serviceDoc, location); result.setParameter("location", location); result.setParameter("serviceDoc", serviceDoc); result.setParameter("fileTypes", fileTypes); result.setParameter("packageFormats", packageFormats); result.setContinue(true); result.setOutcome(true); return result; } }