Example usage for org.apache.commons.fileupload LiferayDiskFileUpload LiferayDiskFileUpload

List of usage examples for org.apache.commons.fileupload LiferayDiskFileUpload LiferayDiskFileUpload

Introduction

In this page you can find the example usage for org.apache.commons.fileupload LiferayDiskFileUpload LiferayDiskFileUpload.

Prototype

public LiferayDiskFileUpload(DiskFileItemFactory fileItemFactory, HttpServletRequest req) 

Source Link

Usage

From source file:com.liferay.util.servlet.UploadServletRequest.java

public UploadServletRequest(HttpServletRequest req) throws IOException {

    super(req);//from   w w  w  .  ja  v  a 2s.  co m

    _params = new LinkedHashMap();

    try {
        //DiskFileUpload diskFileUpload = new DiskFileUpload(
        //   new LiferayFileItemFactory(DEFAULT_TEMP_DIR));

        ServletFileUpload diskFileUpload = new LiferayDiskFileUpload(
                new LiferayFileItemFactory(DEFAULT_TEMP_DIR), req);

        diskFileUpload.setSizeMax(DEFAULT_SIZE_MAX);

        List list = diskFileUpload.parseRequest(req);

        for (int i = 0; i < list.size(); i++) {
            LiferayFileItem fileItem = (LiferayFileItem) list.get(i);

            if (fileItem.isFormField()) {
                fileItem.setString(req.getCharacterEncoding());
            }

            LiferayFileItem[] fileItems = (LiferayFileItem[]) _params.get(fileItem.getFieldName());

            if (fileItems == null) {
                fileItems = new LiferayFileItem[] { fileItem };
            } else {
                LiferayFileItem[] newFileItems = new LiferayFileItem[fileItems.length + 1];

                System.arraycopy(fileItems, 0, newFileItems, 0, fileItems.length);

                newFileItems[newFileItems.length - 1] = fileItem;

                fileItems = newFileItems;
            }

            _params.put(fileItem.getFieldName(), fileItems);
            if (fileItem.getFileName() != null)
                _params.put(fileItem.getFileName(), new LiferayFileItem[] { fileItem });

        }
    } catch (FileUploadException fue) {
        Logger.error(this, fue.getMessage(), fue);
    }
}