org.dspace.submit.step
Class InitialQuestionsStep

java.lang.Object
  extended by org.dspace.submit.AbstractProcessingStep
      extended by org.dspace.submit.step.InitialQuestionsStep

public class InitialQuestionsStep
extends AbstractProcessingStep

Initial Submission servlet for DSpace. Handles the initial questions which are asked to users to gather information regarding what metadata needs to be gathered.

This class performs all the behind-the-scenes processing that this particular step requires. This class's methods are utilized by both the JSP-UI and the Manakin XML-UI

Version:
$Revision: 3738 $
Author:
Tim Donohue
See Also:
SubmissionConfig, SubmissionStepConfig, AbstractProcessingStep

Field Summary
static int STATUS_CANCEL_PRUNE
           
static int STATUS_THESIS_REJECTED
           
static int STATUS_VERIFY_PRUNE
          STATUS / ERROR FLAGS (returned by doProcessing() if an error occurs or additional user interaction may be required) (Do NOT use status of 0, since it corresponds to STATUS_COMPLETE flag defined in the JSPStepManager class)
protected  boolean willRemoveDate
           
protected  boolean willRemoveFiles
           
protected  boolean willRemoveTitles
          Global flags to determine if we need to prune anything
 
Fields inherited from class org.dspace.submit.AbstractProcessingStep
CANCEL_BUTTON, LAST_PAGE_REACHED, NEXT_BUTTON, PREVIOUS_BUTTON, PROGRESS_BAR_PREFIX, STATUS_COMPLETE
 
Constructor Summary
InitialQuestionsStep()
           
 
Method Summary
 int doProcessing(Context context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, SubmissionInfo subInfo)
          Do any processing of the information input by the user, and/or perform step processing (if no user interaction required)
 int getNumberOfPages(javax.servlet.http.HttpServletRequest request, SubmissionInfo subInfo)
          Retrieves the number of pages that this "step" extends over.
protected  void processVerifyPrune(Context context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, SubmissionInfo subInfo, boolean multipleTitles, boolean publishedBefore, boolean multipleFiles)
          Process input from "verify prune" page
 
Methods inherited from class org.dspace.submit.AbstractProcessingStep
addErrorField, addErrorMessage, clearErrorFields, getCurrentPage, getErrorFields, getErrorMessage, setCurrentPage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

STATUS_VERIFY_PRUNE

public static final int STATUS_VERIFY_PRUNE
STATUS / ERROR FLAGS (returned by doProcessing() if an error occurs or additional user interaction may be required) (Do NOT use status of 0, since it corresponds to STATUS_COMPLETE flag defined in the JSPStepManager class)

See Also:
Constant Field Values

STATUS_CANCEL_PRUNE

public static final int STATUS_CANCEL_PRUNE
See Also:
Constant Field Values

STATUS_THESIS_REJECTED

public static final int STATUS_THESIS_REJECTED
See Also:
Constant Field Values

willRemoveTitles

protected boolean willRemoveTitles
Global flags to determine if we need to prune anything


willRemoveDate

protected boolean willRemoveDate

willRemoveFiles

protected boolean willRemoveFiles
Constructor Detail

InitialQuestionsStep

public InitialQuestionsStep()
Method Detail

doProcessing

public int doProcessing(Context context,
                        javax.servlet.http.HttpServletRequest request,
                        javax.servlet.http.HttpServletResponse response,
                        SubmissionInfo subInfo)
                 throws javax.servlet.ServletException,
                        IOException,
                        SQLException,
                        AuthorizeException
Do any processing of the information input by the user, and/or perform step processing (if no user interaction required)

It is this method's job to save any data to the underlying database, as necessary, and return error messages (if any) which can then be processed by the appropriate user interface (JSP-UI or XML-UI)

NOTE: If this step is a non-interactive step (i.e. requires no UI), then it should perform *all* of its processing in this method!

Specified by:
doProcessing in class AbstractProcessingStep
Parameters:
context - current DSpace context
request - current servlet request object
response - current servlet response object
subInfo - submission info object
Returns:
Status or error flag which will be processed by doPostProcessing() below! (if STATUS_COMPLETE or 0 is returned, no errors occurred!)
Throws:
javax.servlet.ServletException
IOException
SQLException
AuthorizeException

getNumberOfPages

public int getNumberOfPages(javax.servlet.http.HttpServletRequest request,
                            SubmissionInfo subInfo)
                     throws javax.servlet.ServletException
Retrieves the number of pages that this "step" extends over. This method is used to build the progress bar.

This method may just return 1 for most steps (since most steps consist of a single page). But, it should return a number greater than 1 for any "step" which spans across a number of HTML pages. For example, the configurable "Describe" step (configured using input-forms.xml) overrides this method to return the number of pages that are defined by its configuration file.

Steps which are non-interactive (i.e. they do not display an interface to the user) should return a value of 1, so that they are only processed once!

Specified by:
getNumberOfPages in class AbstractProcessingStep
Parameters:
request - The HTTP Request
subInfo - The current submission information object
Returns:
the number of pages in this step
Throws:
javax.servlet.ServletException

processVerifyPrune

protected void processVerifyPrune(Context context,
                                  javax.servlet.http.HttpServletRequest request,
                                  javax.servlet.http.HttpServletResponse response,
                                  SubmissionInfo subInfo,
                                  boolean multipleTitles,
                                  boolean publishedBefore,
                                  boolean multipleFiles)
                           throws javax.servlet.ServletException,
                                  IOException,
                                  SQLException,
                                  AuthorizeException
Process input from "verify prune" page

Parameters:
context - current DSpace context
request - current servlet request object
response - current servlet response object
subInfo - submission info object
multipleTitles - if there is multiple titles
publishedBefore - if published before
multipleFiles - if there will be multiple files
Throws:
javax.servlet.ServletException
IOException
SQLException
AuthorizeException


Copyright © 2010 DuraSpace. All Rights Reserved.