com.jalios.jcms.upload
Class DocUploadHandler

java.lang.Object
  extended by com.jalios.jcms.context.JcmsContext
      extended by com.jalios.jcms.context.JcmsJspContext
          extended by com.jalios.jcms.handler.JcmsFormHandler
              extended by com.jalios.jcms.upload.DocUploadHandler
All Implemented Interfaces:
JcmsConstants, JaliosConstants

public class DocUploadHandler
extends JcmsFormHandler

This form handler processes document upload. It use new UploadFilter mechanism and no longer decode MultiPart request.

Since:
jcms-5.7.0
Version:
$Revision: 24748 $
Author:
Jean-Philippe Encausse
See Also:
MultipartFilter

Field Summary
protected  TreeSet<Group> authorizedGroupSet
           
protected  TreeSet<Member> authorizedMemberSet
           
protected  Set<Category> categorySet
           
protected  FileDocument document
           
protected  String[] filename
           
protected  boolean majorUpdate
           
protected  boolean op
           
protected  boolean opUpload
           
static String REVISION
           
protected  String title
           
protected  HashMap<String,String> titleML
           
 
Fields inherited from class com.jalios.jcms.handler.JcmsFormHandler
contextMap, editFieldSet, noRedirect, noSendRedirect, popupEdition, redirect, redirectOnClosePopup, workspaceForced
 
Fields inherited from class com.jalios.jcms.context.JcmsJspContext
AJAX_REQUEST_ATTRIBUTES, BODY_HEADER, CSS_HEADER, cssboMap, cssfoMap, CUSTOM_HEADER, editIcon, HTTPEQUIV_HEADER, httpequivMap, HTTPNAME_HEADER, httpnameMap, initEditIcon, JAVASCRIPT_CODE_SET_ATTRIBUTE, JAVASCRIPT_SET_ATTRIBUTE, JS_HEADER, jsboMap, jsboSet, jsfoMap, jsfoSet, out, pageContext, SHOW_EDIT_ICON, STYLE_HEADER
 
Fields inherited from class com.jalios.jcms.context.JcmsContext
browser, caddy, channel, inFO, initDone, initWorkspace, isAdmin, isAjaxRequest, isDBMember, isDebug, isLogged, loggedMember, request, response, userLang, userLocale, workspace
 
Fields inherited from interface com.jalios.jcms.JcmsConstants
ADATE_SEARCH, ADMIN_NOTES_PROP, ADVANCED_TAB, ARCHIVES_DIR, ASCII_WIDTH, CATEGORY_TAB, CDATE_SEARCH, COMMON_ALARM, CONTENT_TAB, COOKIE_MAX_AGE, CRYPT_MD5, CRYPT_UNDEFINED, CRYPT_UNIX, CTRL_TOPIC_INTERNAL, CTRL_TOPIC_REF, CTRL_TOPIC_VALUE, CTRL_TOPIC_WRITE, CUSTOM_PROP, DOCCHOOSER_HEIGHT, DOCCHOOSER_WIDTH, DOCS_DIR, EDATE_SEARCH, EMAIL_REGEXP, ERROR_MSG, FORBIDDEN_FILE_ACCESS, FORBIDDEN_REDIRECT, FORCE_REDIRECT, ICON_ARCHIVE, ICON_LOCK, ICON_LOCK_STRONG, ICON_WARN, ICON_WH_BOOK_CLOSED, ICON_WH_BOOK_OPEN, INFORMATION_MSG, JALIOS_JUNIT_PROP, JCMS_CADDY, JSYNC_DOWNLOAD_DIR, JSYNC_SYNC_ALARM, LOG_FILE, LOG_TOPIC_SECURITY, LOGGER_PROP, LOGGER_XMLPROP, MBR_PHOTO_DIR, MDATE_SEARCH, MONITOR_XML, OP_CREATE, OP_DEEP_COPY, OP_DEEP_DELETE, OP_DELETE, OP_MERGE, OP_UPDATE, PDATE_SEARCH, PHOTO_LARGE, PHOTO_LARGE_HEIGHT, PHOTO_LARGE_WIDTH, PHOTO_NORMAL, PHOTO_NORMAL_HEIGHT, PHOTO_NORMAL_WIDTH, PHOTO_SMALL, PHOTO_SMALL_HEIGHT, PHOTO_SMALL_WIDTH, PHOTO_TINY, PHOTO_TINY_HEIGHT, PHOTO_TINY_WIDTH, PREVIOUS_TAB, PRINT_VIEW, PRIVATE_FILE_ACCESS, PUBLIC_FILE_ACCESS, READ_RIGHT_TAB, SDATE_SEARCH, SEARCHENGINE_ALARM, SESSION_AUTHORIZED_FILENAMES_SET, STATS_REPORT_DIR, STATUS_PROP, STORE_XML, TEMPLATE_TAB, THUMBNAIL_LARGE_HEIGHT, THUMBNAIL_LARGE_WIDTH, THUMBNAIL_SMALL_HEIGHT, THUMBNAIL_SMALL_WIDTH, UDATE_SEARCH, UPDATE_RIGHT_TAB, UPLOAD_DIR, URL_REGEXP, WARNING_MSG, WEBAPP_PROP, WFEXPRESS_ALARM, WFREMINDER_ALARM, WORKFLOW_TAB, WORKFLOW_XML
 
Fields inherited from interface com.jalios.util.JaliosConstants
CRLF, MILLIS_IN_ONE_DAY, MILLIS_IN_ONE_HOUR, MILLIS_IN_ONE_MINUTE, MILLIS_IN_ONE_MONTH, MILLIS_IN_ONE_SECOND, MILLIS_IN_ONE_WEEK, MILLIS_IN_ONE_YEAR
 
Constructor Summary
DocUploadHandler()
           
 
Method Summary
 HashMap<String,String> getAllAvailableDescriptionML()
           
 HashMap<String,String> getAllAvailableTitleML()
           
 TreeSet<Group> getAvailableAuthorizedGroupSet()
           
 TreeSet<Member> getAvailableAuthorizedMemberSet()
           
 Category[] getAvailableCategories()
           
 Set<Category> getAvailableCategorySet()
           
 String getAvailableDescription()
           
 String getAvailableDescription(String lang)
           
 HashMap<String,String> getAvailableDescriptionML()
           
 FileDocument getAvailableFileDocument()
           
 FileDocument[] getAvailableFileDocuments()
           
 String getAvailableFilename()
           
 String getAvailableJsFunc()
           
 boolean getAvailableMajorUpdate()
           
 int getAvailableNbElt()
           
 String getAvailableOpenerForm()
           
 String getAvailableOpenerRefresh()
           
 int getAvailablePstatus()
           
 boolean getAvailableRemoveFile()
           
 int getAvailableStartElt()
           
 String getAvailableTitle()
           
 String getAvailableTitle(String lang)
           
 HashMap<String,String> getAvailableTitleML()
           
 boolean getAvailableTracked()
           
 String getNextUploadStep()
          Returns the JavaScript code to use depending of the upload step.
protected  com.jalios.jcms.upload.DocUploadHandler.UploadStep getStepCase()
          Returns the upload step depending of multiple paramter steps OpenerForm, OpenerRefresh, Redirect
 boolean getUnzipUploadedFiles()
          Check if archives should be unziped and a new document created each time
 Map<String,String> handleUpload()
          Performs upload of all FileDocuments and create/update FileDocuments.
 Map<String,String> handleUpload(DocUploadInfo dui)
          This method allow the use of this formHandler by a programatic call, not in a jsp:usebean tag.
 String handleUploadError(Map<String,String> failedMap)
          Convenient method that returns a list (ul/li) of errors for each files.
protected  boolean isFieldMissing(String field)
          Check if the given parameter is present in the query parameters
 boolean isUpdate()
           
 boolean isUploading()
           
protected  void performCreate(DocUploadInfo info, Map<String,String> controllerFailedMap)
          Performs creation of a FileDocument from a given DocUploadInfo.
protected  void performUpdate(DocUploadInfo info, Map<String,String> controllerFailedMap)
          Performs creation of a FileDocument from a given DocUploadInfo.
 void setCids(String[] v)
           
 void setDescription(String[] v)
           
 void setFilename(String[] v)
           
 void setForm(String v)
           
 void setGids(String[] v)
           
 void setId(String id)
           
 void setJsFunc(String v)
           
 void setMajorUpdate(boolean v)
           
 void setMids(String[] v)
           
 void setNbElt(int v)
           
 void setOpUpload(String v)
           
 void setPstatus(int v)
           
 void setRefresh(String v)
           
 void setRemoveFile(boolean v)
           
 void setStartElt(int v)
           
 void setTitle(String[] v)
           
 void setTracked(boolean v)
           
 void setUnlock(boolean v)
           
 void setUnzipUploadedFiles(boolean unzip)
          Set whether uploaded archives should be unziped and a new document created each time
 
Methods inherited from class com.jalios.jcms.handler.JcmsFormHandler
getControllerContext, getEditFieldSet, getMainLangValue, getMainLangValueArray, getMLMap, getMLMapArray, getRedirect, getRedirectOnClosePopup, getWorkspace, isFieldEdition, isPartialFieldEdition, isPopupEdition, isWorkspaceForced, processStatus, sendRedirect, sendRedirect, setEditField, setNoRedirect, setNoSendRedirect, setPopupEdition, setRedirect, setRedirectOnClosePopup, setWorkspace, setWs, updateUploadedField, updateUploadedFields
 
Methods inherited from class com.jalios.jcms.context.JcmsJspContext
addBodyAttributes, addCSSHeader, addCSSHeader, addCSSHeader, addCSSHeader, addCustomHeader, addHttpEquivHeader, addHttpNameHeader, addJavaScript, addJavaScript, addJavaScript, addJavaScriptCode, addJSHeader, addJSHeader, addJSHeader, addJSHeader, addStyleHeader, addStyleHeader, debugDisplayContext, forceEditIcon, forceUpdate, getAjaxRequestAttribute, getAjaxRequestId, getAllHeadersDiffMap, getAllHeadersMap, getBackOfficeCSSHeader, getBackOfficeJavaScriptSet, getBackOfficeJSHeader, getBodyAttributes, getContentForm, getCSSHeaders, getCtxCategories, getCurrentCategory, getCustomHeaders, getDocType, getFinalCSSMap, getFinalJavaScriptSet, getFormElementCount, getFrontOfficeCSSHeader, getFrontOfficeJavaScriptSet, getFrontOfficeJSHeader, getHttpEquivHeaders, getHttpNameHeaders, getJavaScriptCodeSet, getJavaScriptSet, getJSHeaders, getJSONBridge, getPageContext, getPageTitle, getPageZone, getPortal, getPortalCategory, getPortlet, getPublication, getStyleHeaders, getTemplateUsage, internalSetupEmptyHeader, isEditIcon, isPrintView, registerDisplayContext, removeAjaxRequestAttribute, setAjaxRequestAttribute, setAjaxRequestId, setAllHeadersDiffMap, setDocType, setEditIcon, setFormElementCount, setPageContext, setPageTitle, setPageZone, setShowEditIcon, setTemplateUsage, showEditIcon, workaroundJCMS1967
 
Methods inherited from class com.jalios.jcms.context.JcmsContext
addCookie, forceWorkspaceUpdate, getBaseUrl, getBrowser, getCaddy, getContextPath, getErrorMsg, getErrorMsgSession, getInfoMsg, getInfoMsgSession, getLoggedMember, getRequest, getResponse, getSession, getUploadedFile, getUploadedFileList, getUrlWithCommonUpdatedParams, getUserLang, getUserLocale, getWarningMsg, getWarningMsgSession, glp, isAdmin, isAjaxRequest, isDBMember, isDebug, isInFrontOffice, isLogged, isWebdavAccess, retrieveUploadedFile, sendForbidden, sendForbidden, sendRedirect, sendRedirect, setErrorMsg, setErrorMsg, setErrorMsgSession, setErrorMsgSession, setInfoMsg, setInfoMsg, setInfoMsgSession, setInfoMsgSession, setLoggedMember, setRequest, setResponse, setWarningMsg, setWarningMsg, setWarningMsgSession, setWarningMsgSession, validateRegexp
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

REVISION

public static final String REVISION
See Also:
Constant Field Values

document

protected FileDocument document

filename

protected String[] filename

title

protected String title

titleML

protected HashMap<String,String> titleML

categorySet

protected Set<Category> categorySet

authorizedGroupSet

protected TreeSet<Group> authorizedGroupSet

authorizedMemberSet

protected TreeSet<Member> authorizedMemberSet

op

protected boolean op

opUpload

protected boolean opUpload

majorUpdate

protected boolean majorUpdate
Constructor Detail

DocUploadHandler

public DocUploadHandler()
Method Detail

handleUploadError

public String handleUploadError(Map<String,String> failedMap)
Convenient method that returns a list (ul/li) of errors for each files.

Parameters:
failedMap - a map of errors returned by handleUpload()
Returns:
String error list

handleUpload

public Map<String,String> handleUpload()
Performs upload of all FileDocuments and create/update FileDocuments. Returns a Map of all FileDocuments with errors

Returns:
Map a map of errors

handleUpload

public Map<String,String> handleUpload(DocUploadInfo dui)
This method allow the use of this formHandler by a programatic call, not in a jsp:usebean tag. Support only one DocUploadInfo.

Parameters:
dui - a DocUploadInfo
Returns:
failedMap : not empty if some problem occured

performUpdate

protected void performUpdate(DocUploadInfo info,
                             Map<String,String> controllerFailedMap)
Performs creation of a FileDocument from a given DocUploadInfo. Store errors in the given controllerFailedMap.

Parameters:
info - a DocUploadInfo
controllerFailedMap - a Map of errors.

performCreate

protected void performCreate(DocUploadInfo info,
                             Map<String,String> controllerFailedMap)
Performs creation of a FileDocument from a given DocUploadInfo. Store errors in the given controllerFailedMap.

Parameters:
info - a DocUploadInfo
controllerFailedMap - a Map of errors.

getNextUploadStep

public String getNextUploadStep()
Returns the JavaScript code to use depending of the upload step. The script may refresh opener, make redrect, fill opener form or close the doc chooser.

Returns:
String the JavaScript code to execute

getStepCase

protected com.jalios.jcms.upload.DocUploadHandler.UploadStep getStepCase()
Returns the upload step depending of multiple paramter steps OpenerForm, OpenerRefresh, Redirect

Returns:
int the upload step

setId

public void setId(String id)

getAvailableFileDocument

public FileDocument getAvailableFileDocument()

getAvailableFileDocuments

public FileDocument[] getAvailableFileDocuments()

isUpdate

public boolean isUpdate()

isFieldMissing

protected boolean isFieldMissing(String field)
Description copied from class: JcmsFormHandler
Check if the given parameter is present in the query parameters

Overrides:
isFieldMissing in class JcmsFormHandler
Parameters:
field - the field to be checked
Returns:
true if this field is present in the query parameters

setFilename

public void setFilename(String[] v)

getAvailableFilename

public String getAvailableFilename()

setTitle

public void setTitle(String[] v)

getAvailableTitle

public String getAvailableTitle()

getAllAvailableTitleML

public HashMap<String,String> getAllAvailableTitleML()

getAvailableTitleML

public HashMap<String,String> getAvailableTitleML()

getAvailableTitle

public String getAvailableTitle(String lang)

setDescription

public void setDescription(String[] v)

getAvailableDescription

public String getAvailableDescription()

getAvailableDescriptionML

public HashMap<String,String> getAvailableDescriptionML()

getAvailableDescription

public String getAvailableDescription(String lang)

getAllAvailableDescriptionML

public HashMap<String,String> getAllAvailableDescriptionML()

setCids

public void setCids(String[] v)

getAvailableCategories

public Category[] getAvailableCategories()

getAvailableCategorySet

public Set<Category> getAvailableCategorySet()

setGids

public void setGids(String[] v)

getAvailableAuthorizedGroupSet

public TreeSet<Group> getAvailableAuthorizedGroupSet()

setMids

public void setMids(String[] v)

getAvailableAuthorizedMemberSet

public TreeSet<Member> getAvailableAuthorizedMemberSet()

setRemoveFile

public void setRemoveFile(boolean v)

getAvailableRemoveFile

public boolean getAvailableRemoveFile()

setUnlock

public void setUnlock(boolean v)

setPstatus

public void setPstatus(int v)

getAvailablePstatus

public int getAvailablePstatus()

setTracked

public void setTracked(boolean v)

getAvailableTracked

public boolean getAvailableTracked()

setUnzipUploadedFiles

public void setUnzipUploadedFiles(boolean unzip)
Set whether uploaded archives should be unziped and a new document created each time

Parameters:
unzip - true to unzip, false to leave document intact

getUnzipUploadedFiles

public boolean getUnzipUploadedFiles()
Check if archives should be unziped and a new document created each time

Returns:
true to unzip, false to leave document intact

setForm

public void setForm(String v)

getAvailableOpenerForm

public String getAvailableOpenerForm()

setRefresh

public void setRefresh(String v)

getAvailableOpenerRefresh

public String getAvailableOpenerRefresh()

setNbElt

public void setNbElt(int v)

getAvailableNbElt

public int getAvailableNbElt()

setStartElt

public void setStartElt(int v)

getAvailableStartElt

public int getAvailableStartElt()

setJsFunc

public void setJsFunc(String v)

getAvailableJsFunc

public String getAvailableJsFunc()

setOpUpload

public void setOpUpload(String v)

isUploading

public boolean isUploading()

setMajorUpdate

public void setMajorUpdate(boolean v)

getAvailableMajorUpdate

public boolean getAvailableMajorUpdate()


Copyright © 2001-2007 Jalios SA. All Rights Reserved.