public class SampleStep extends AbstractProcessingStep
Please Note: The basic methods you will want to override are described below. However, obviously, you are completely free to create your own methods for this Step, or override other methods. For more examples, look at the code from one of the provided DSpace step classes in the "org.dspace.submit.step" package.
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
If you are utilizing the JSP-UI, you will also be required to create a class which implements org.dspace.app.webui.submit.JSPStep, and provide the necessary JSP-related methods. There is a corresponding sample of such a class at org.dspace.app.webui.submit.step.JSPSampleStep.
SubmissionConfig,
SubmissionStepConfig,
AbstractProcessingStep| Modifier and Type | Field and Description |
|---|---|
static int |
STATUS_USER_INPUT_ERROR
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)
|
authorizeService, bitstreamService, bundleService, CANCEL_BUTTON, collectionService, configurationService, itemService, LAST_PAGE_REACHED, metadataFieldService, NEXT_BUTTON, PREVIOUS_BUTTON, PROGRESS_BAR_PREFIX, SELECT_CHANGE, STATUS_COMPLETE| Constructor and Description |
|---|
SampleStep() |
| Modifier and Type | Method and Description |
|---|---|
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.
|
addErrorField, addErrorMessage, clearErrorFields, getCurrentPage, getErrorFields, getErrorMessage, setCurrentPagepublic static final int STATUS_USER_INPUT_ERROR
public int doProcessing(Context context, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, SubmissionInfo subInfo) throws javax.servlet.ServletException, IOException, SQLException, AuthorizeException
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!
doProcessing in class AbstractProcessingStepcontext - current DSpace contextrequest - current servlet request objectresponse - current servlet response objectsubInfo - submission info objectjavax.servlet.ServletExceptionIOExceptionSQLExceptionAuthorizeExceptionpublic int getNumberOfPages(javax.servlet.http.HttpServletRequest request,
SubmissionInfo subInfo)
throws javax.servlet.ServletException
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!
getNumberOfPages in class AbstractProcessingSteprequest - The HTTP RequestsubInfo - The current submission information objectjavax.servlet.ServletExceptionCopyright © 2017 DuraSpace. All rights reserved.