org.kuali.rice.krad.labs.fileUploads
Class XmlIngesterController

java.lang.Object
  extended by org.kuali.rice.krad.web.controller.UifControllerBase
      extended by org.kuali.rice.krad.labs.fileUploads.XmlIngesterController

@Controller
@RequestMapping(value="/ingester")
public class XmlIngesterController
extends UifControllerBase

Controller for the XML Ingester View

Displays the initial Ingester view page and processes file upload requests.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Constructor Summary
XmlIngesterController()
           
 
Method Summary
 org.springframework.web.servlet.ModelAndView close(XmlIngesterForm ingesterForm, org.springframework.validation.BindingResult result, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
           
protected  int collectIngestionMessages(List<XmlDocCollection> collections, boolean txFailed)
          loop through the results, returns the number of successfully processed files
protected  List<XmlDocCollection> copyInputFiles(List<org.springframework.web.multipart.MultipartFile> fileList, List<File> tempFiles)
          Copies the MultipartFiles into an XmlDocCollection list
protected  XmlIngesterForm createInitialForm(javax.servlet.http.HttpServletRequest request)
          Called to create a new model(form) object when necessary.
protected  int ingestFiles(List<XmlDocCollection> collections)
          Ingests the list of files into the system
 org.springframework.web.servlet.ModelAndView start(UifFormBase form, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          Initial method called when requesting a new view instance which checks authorization and forwards the view for rendering
 org.springframework.web.servlet.ModelAndView upload(XmlIngesterForm ingesterForm, org.springframework.validation.BindingResult result, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
           
 
Methods inherited from class org.kuali.rice.krad.web.controller.UifControllerBase
addBlankLine, addLine, back, cancel, checkForm, checkViewAuthorization, defaultMapping, deleteLine, getBooleanDialogResponse, getMessageView, getStringDialogResponse, getUIFModelAndView, getUIFModelAndView, getUIFModelAndView, getUIFModelAndViewWithInit, getViewService, hasDialogBeenAnswered, hasDialogBeenDisplayed, initForm, navigate, performFieldQuery, performFieldSuggest, performLookup, performRedirect, performRedirect, refresh, resetDialogStatus, retrieveCollectionPage, returnFromLightbox, returnToHistory, returnToHub, returnToPrevious, saveLine, sessionTimeout, showDialog, tableJsonRetrieval
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XmlIngesterController

public XmlIngesterController()
Method Detail

createInitialForm

protected XmlIngesterForm createInitialForm(javax.servlet.http.HttpServletRequest request)
Description copied from class: UifControllerBase
Called to create a new model(form) object when necessary. This usually occurs on the initial request in a conversation (when the model is not present in the session). This method must be overridden when extending a controller and using a different form type than the superclass.

Specified by:
createInitialForm in class UifControllerBase
Parameters:
request - - the http request that was made
See Also:
UifControllerBase.createInitialForm(javax.servlet.http.HttpServletRequest)

start

@RequestMapping(params="methodToCall=start")
public org.springframework.web.servlet.ModelAndView start(@ModelAttribute(value="KualiForm")
                                                                         UifFormBase form,
                                                                         javax.servlet.http.HttpServletRequest request,
                                                                         javax.servlet.http.HttpServletResponse response)
Description copied from class: UifControllerBase
Initial method called when requesting a new view instance which checks authorization and forwards the view for rendering

Overrides:
start in class UifControllerBase

upload

@RequestMapping(method=POST,
                params="methodToCall=upload")
public org.springframework.web.servlet.ModelAndView upload(@ModelAttribute(value="KualiForm")
                                                                          XmlIngesterForm ingesterForm,
                                                                          org.springframework.validation.BindingResult result,
                                                                          javax.servlet.http.HttpServletRequest request,
                                                                          javax.servlet.http.HttpServletResponse response)

copyInputFiles

protected List<XmlDocCollection> copyInputFiles(List<org.springframework.web.multipart.MultipartFile> fileList,
                                                List<File> tempFiles)
Copies the MultipartFiles into an XmlDocCollection list

Reads each of the input files into temporary files to get File reference needed to create FileXmlDocCollection objects. Also verifies that only .xml or .zip files are to be processed.

Parameters:
fileList - list of MultipartFiles selected for ingestion
tempFiles - temporary files used to get File reference
Returns:
uploaded files in a List of XmlDocCollections

ingestFiles

protected int ingestFiles(List<XmlDocCollection> collections)
Ingests the list of files into the system

Parameters:
collections - xml documents to be ingested
Returns:
the number of files successfully ingested

collectIngestionMessages

protected int collectIngestionMessages(List<XmlDocCollection> collections,
                                       boolean txFailed)
loop through the results, returns the number of successfully processed files

Also collects the error messages for each doc

Parameters:
collections - the list of processed documents
txFailed - flag whether upload contained errors
Returns:
the number of files successfully ingested

close

@RequestMapping(method=POST,
                params="methodToCall=close")
public org.springframework.web.servlet.ModelAndView close(@ModelAttribute(value="KualiForm")
                                                                         XmlIngesterForm ingesterForm,
                                                                         org.springframework.validation.BindingResult result,
                                                                         javax.servlet.http.HttpServletRequest request,
                                                                         javax.servlet.http.HttpServletResponse response)


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.