Example usage for org.springframework.web.multipart.commons CommonsMultipartFile getSize

List of usage examples for org.springframework.web.multipart.commons CommonsMultipartFile getSize

Introduction

In this page you can find the example usage for org.springframework.web.multipart.commons CommonsMultipartFile getSize.

Prototype

@Override
    public long getSize() 

Source Link

Usage

From source file:com.kabone.research.common.utils.FileUtil.java

/**
 * ?//from  ww  w. j ava2  s .c  om
 * @param map
 * @param realPath
 * @param dirPath
 * @param thumbnail
 * @return
 * @throws IllegalStateException
 * @throws IOException
 */
public static List<Map<String, Object>> getFileInfo(MultiValueMap<String, MultipartFile> map, String realPath,
        String dirPath, boolean thumbnail) throws IllegalStateException, IOException {

    Date time = Calendar.getInstance().getTime();
    SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
    String formatDate = formatter.format(time);

    List<Map<String, Object>> fileList = new ArrayList<Map<String, Object>>();

    Iterator<String> iterator = map.keySet().iterator();

    //  savePath ? /yyyy/mm/ ??   
    String savePath = dirPath + File.separator + StringUtils.substring(formatDate, 0, 4) + File.separator
            + StringUtils.substring(formatDate, 4, 6) + File.separator;

    String realFilePath = realPath + savePath;
    String logicalPath = savePath;

    if (File.separator.equalsIgnoreCase("\\")) {
        logicalPath = savePath.replaceAll("\\\\", "/");
    }

    while (iterator.hasNext()) {

        Map<String, Object> fileMap = new HashMap<String, Object>();

        String key = iterator.next();
        LinkedList<MultipartFile> df = (LinkedList<MultipartFile>) map.get(key);

        CommonsMultipartFile fileInfo = (CommonsMultipartFile) df.getFirst();
        if (fileInfo.getSize() > 0) {
            fileMap.put("key", key);

            int idx = fileInfo.getOriginalFilename().lastIndexOf(".");

            String extName = "";
            if (idx != -1) {
                extName = fileInfo.getOriginalFilename().substring(idx,
                        fileInfo.getOriginalFilename().length());
            }

            File fDir = new File(realFilePath);
            if (!fDir.exists()) {
                fDir.mkdirs();
            }

            File file1 = new File(realFilePath + formatDate + fileInfo.getName() + extName);
            fileInfo.transferTo(file1);

            logger.info("fileInfo.realFilePath() : " + realFilePath);
            logger.info("fileInfo.logicalPath() : " + logicalPath);
            logger.info("fileInfo.getOriginalFilename() : " + fileInfo.getOriginalFilename());
            logger.info("fileInfo.getName() : " + fileInfo.getName());
            logger.info("fileInfo.path() : " + logicalPath + formatDate + fileInfo.getName() + extName);

            fileMap.put("path", logicalPath + formatDate + fileInfo.getName() + extName);
            fileMap.put("name", fileInfo.getOriginalFilename());
            fileMap.put("size", "" + fileInfo.getSize());

            //??
            if (thumbnail) {
                int imageWidth = 0;
                int imageHeight = 0;
                //? ? ?? ?
                if ("mainImg".equals(fileInfo.getName())) {
                    logger.info("? ? ?? ?");
                    imageWidth = 645;
                    imageHeight = 485;
                } else if ("cardImg".equals(fileInfo.getName())) {
                    logger.info(" ? ?? ?");
                    imageWidth = 240;
                    imageHeight = 180;
                }

                if (imageWidth != 0 && imageHeight != 0) {
                    File originFileName = new File(realFilePath + formatDate + fileInfo.getName() + extName);
                    File thumbFileName = new File(
                            realFilePath + "thumbnail_" + formatDate + fileInfo.getName() + extName);

                    thumbnail(imageWidth, imageHeight, originFileName, thumbFileName);

                    fileMap.put("thumb",
                            logicalPath + "thumbnail_" + formatDate + fileInfo.getName() + extName);
                }
            }
            fileList.add(fileMap);
        }

    }

    return fileList;
}

From source file:com.kabone.research.common.utils.FileUtil.java

public static List<Map<String, Object>> getFileInfo2(String BUCKET_NAME, String S3_ENDPOINT, String ACCESS_KEY,
        String SECRET_KEY, MultiValueMap<String, MultipartFile> map, String realPath, String dirPath,
        boolean thumbnail) throws Exception {
    //public static List<Map<String,Object>> getFileInfo2(MultiValueMap<String, MultipartFile> map, String realPath, String dirPath, boolean thumbnail) throws Exception {

    Date time = Calendar.getInstance().getTime();
    SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssS");
    String formatDate = formatter.format(time);

    List<Map<String, Object>> fileList = new ArrayList<Map<String, Object>>();
    Iterator<String> iterator = map.keySet().iterator();

    String savePath = dirPath + "/";

    String realFilePath = realPath + savePath;
    /*// w  w w.  j av a  2  s  .com
    String logicalPath = savePath;
            
    if(File.separator.equalsIgnoreCase("\\")) {
    logicalPath = savePath.replaceAll("\\\\", "/");
    }
    */
    File fDir = new File(realFilePath);
    if (!fDir.exists()) {
        fDir.mkdirs();
    }

    AWSUtil.s3MakeFolder(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY, dirPath);

    while (iterator.hasNext()) {

        Map<String, Object> fileMap = new HashMap<String, Object>();

        String key = iterator.next();
        LinkedList<MultipartFile> df = (LinkedList<MultipartFile>) map.get(key);

        CommonsMultipartFile fileInfo = (CommonsMultipartFile) df.getFirst();
        if (fileInfo.getSize() > 0) {
            fileMap.put("key", key);

            int idx = fileInfo.getOriginalFilename().lastIndexOf(".");

            String extName = "";
            if (idx != -1) {
                extName = fileInfo.getOriginalFilename().substring(idx,
                        fileInfo.getOriginalFilename().length());
            }
            String fileName = formatDate + fileInfo.getName() + extName;
            File file1 = new File(realFilePath + fileName);
            fileInfo.transferTo(file1);

            logger.info("fileInfo.getOriginalFilename() : " + fileInfo.getOriginalFilename());

            String filePath = AWSUtil.s3FileUpload(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY,
                    savePath + fileName, realFilePath + fileName);

            logger.info("filePath : " + filePath);

            fileMap.put("path", filePath);
            fileMap.put("name", fileInfo.getOriginalFilename());
            fileMap.put("size", "" + fileInfo.getSize());

            //??
            if (thumbnail) {
                int imageWidth = 0;
                int imageHeight = 0;
                //? ? ?? ?
                if ("mainImg".equals(fileInfo.getName())) {
                    //??
                    imageWidth = 645;
                    imageHeight = 485;
                } else if ("cardImg".equals(fileInfo.getName())) {
                    //?
                    imageWidth = 224;
                    imageHeight = 180;
                } else if ("storyImg".equals(fileInfo.getName())) {
                    //
                    imageWidth = 148;
                    imageHeight = 98;
                } else if ("ftypeMainImg".equals(fileInfo.getName())) {
                    // ??
                    imageWidth = 980;
                    imageHeight = 400;
                } else if ("choiceImg".equals(fileInfo.getName())) {
                    // Editor's Choice ?
                    imageWidth = 160;
                    imageHeight = 70;
                }

                if (imageWidth != 0 && imageHeight != 0) {
                    File originFileName = new File(realFilePath + fileName);
                    File thumbFileName = new File(realFilePath + "thumbnail_" + fileName);

                    boolean result = thumbnail(imageWidth, imageHeight, originFileName, thumbFileName);
                    String filePath2 = "";
                    if (result) {
                        filePath2 = AWSUtil.s3FileUpload(S3_ENDPOINT, BUCKET_NAME, ACCESS_KEY, SECRET_KEY,
                                savePath + "thumbnail_" + fileName, realFilePath + "thumbnail_" + fileName);
                    }

                    if (thumbFileName.exists()) {
                        thumbFileName.delete();
                    }

                    fileMap.put("thumbPath", filePath2);
                }
            }

            if (file1.exists()) {
                file1.delete();
            }

            fileList.add(fileMap);
        }

    }

    return fileList;
}

From source file:org.smigo.constraints.CommonsMultipartFileSizeValidator.java

public boolean isValid(CommonsMultipartFile file, ConstraintValidatorContext constraintContext) {
    log.debug("Validating " + file);
    if (file.getSize() < (maxSize * 1024))
        return true;
    return false;
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPath(CommonsMultipartFile fileUpload) throws Exception {

    String saveDirectory = "D://file";

    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = "";
        newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();/*from   www . j ava  2  s. co m*/
        }
        fileUpload.transferTo(files);

    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPathForm(CommonsMultipartFile fileUpload) throws Exception {

    String saveDirectory = "D://file/report";

    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = "";
        newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();/*w  w  w  .j a v  a2 s.co  m*/
        }
        fileUpload.transferTo(files);
        System.out.println("save file at ");
    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.necl.service.HandlerFileUpload.java

public void handleFileUploadToPathTaget(CommonsMultipartFile fileUpload, String partDirectory, String fileName)
        throws Exception {

    //String saveDirectory = "D://file/report";
    String saveDirectory = partDirectory;
    if (fileUpload != null && fileUpload.getSize() > 0) {

        String newFileName = fileName;
        if (newFileName == null || newFileName == "") {
            newFileName = convertNameAndTypeFile(fileUpload.getOriginalFilename());
        }/*from www  .  j  av  a  2 s  .c  om*/

        File files = new File(saveDirectory + File.separator + newFileName);
        if (!files.exists()) {
            files.mkdirs();
        }
        fileUpload.transferTo(files);
        System.out.println("save file at ");
    }
    System.out.println("SYSTEM ALEART UPLOAD FILE SUCCESSFUL");
}

From source file:com.hp.avmon.agentless.service.AgentlessService.java

public String importAgentlessFile(HttpServletRequest request) throws IOException {

    String result = StringUtil.EMPTY;
    HashMap<String, ArrayList<Map<String, String>>> resultMap = new HashMap<String, ArrayList<Map<String, String>>>();
    ArrayList<Map<String, String>> files = new ArrayList<Map<String, String>>();
    Map<String, HashMap<String, List<String>>> map = new HashMap<String, HashMap<String, List<String>>>();

    MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
    //?//from  w  ww.  ja v a2  s .c  o  m
    String templatePath = Config.getInstance().getAgentlessfilesUploadPath();
    File dirPath = new File(templatePath);
    if (!dirPath.exists()) {
        dirPath.mkdirs();
    }
    Map<String, String> fileMap;
    try {
        for (Iterator it = multipartRequest.getFileNames(); it.hasNext();) {
            String fileName = (String) it.next();
            CommonsMultipartFile file = (CommonsMultipartFile) multipartRequest.getFile(fileName);
            if (file != null && file.getSize() != 0) {
                String sep = System.getProperty("file.separator");
                String importFilePath = dirPath + sep + file.getOriginalFilename();
                File uploadedFile = new File(importFilePath);
                FileCopyUtils.copy(file.getBytes(), uploadedFile);
                //??
                String importStatus = importRmpInstance(importFilePath);
                //boolean importStatus = false;
                String name = file.getOriginalFilename();
                fileMap = new HashMap<String, String>();

                if (importStatus.indexOf("success") > -1) {
                    fileMap.put("status", "success");
                    String[] s = importStatus.split(":");
                    fileMap.put("msg", "?" + s[1] + "" + s[2]);
                } else {
                    fileMap.put("status", "failed");
                    fileMap.put("msg", importStatus);
                }
                fileMap.put("url", "");
                fileMap.put("thumbnailUrl", "");
                fileMap.put("name", name);
                fileMap.put("type", "image/jpeg");
                fileMap.put("size", file.getSize() + "");
                fileMap.put("deleteUrl", "");
                fileMap.put("deleteType", "DELETE");
                files.add(fileMap);
            }
        }

    } catch (Exception e) {
        e.printStackTrace();
        logger.error(e);
    }
    resultMap.put("files", files);
    result = JackJson.fromObjectToJson(resultMap);
    logger.debug(result);
    return result;
}

From source file:org.toobsframework.pres.spring.multipart.MultipartController.java

protected MultipartParsingResult parseFileItems(List fileItems, String encoding, int IHateYouJuergenHoeller) {
    Map multipartFiles = new LinkedHashMap();
    Map multipartParameters = new LinkedHashMap();

    // Extract multipart files and multipart parameters.
    for (Iterator it = fileItems.iterator(); it.hasNext();) {
        FileItem fileItem = (FileItem) it.next();
        if (fileItem.isFormField()) {
            String value = null;/*w  w w  .ja v  a 2s .  c  om*/
            if (encoding != null) {
                try {
                    value = fileItem.getString(encoding);
                } catch (UnsupportedEncodingException ex) {
                    if (logger.isWarnEnabled()) {
                        logger.warn("Could not decode multipart item '" + fileItem.getFieldName()
                                + "' with encoding '" + encoding + "': using platform default");
                    }
                    value = fileItem.getString();
                }
            } else {
                value = fileItem.getString();
            }
            String[] curParam = (String[]) multipartParameters.get(fileItem.getFieldName());
            if (curParam == null) {
                // simple form field
                multipartParameters.put(fileItem.getFieldName(), new String[] { value });
            } else {
                // array of simple form fields
                String[] newParam = StringUtils.addStringToArray(curParam, value);
                multipartParameters.put(fileItem.getFieldName(), newParam);
            }
        } else {
            // multipart file field
            CommonsMultipartFile file = new CommonsMultipartFile(fileItem);
            multipartFiles.put(file.getName(), file);
            if (logger.isDebugEnabled()) {
                logger.debug("Found multipart file [" + file.getName() + "] of size " + file.getSize()
                        + " bytes with original filename [" + file.getOriginalFilename() + "], stored "
                        + file.getStorageDescription());
            }
        }
    }
    return new MultipartParsingResult(multipartFiles, multipartParameters);
}

From source file:eu.europa.ec.eci.oct.admin.controller.SettingsController.java

@Override
protected String _doPost(Model model, SettingsBean bean, BindingResult result, SessionStatus status,
        HttpServletRequest request, HttpServletResponse response) throws OCTException {
    if (request.getParameter("saveSettings") != null) {
        ConfigurationParameter param;/*from   w ww. j  a v  a  2 s.co  m*/

        // custom logo settings
        if (bean.isDeleteLogo()) {
            param = configurationService.getConfigurationParameter(Parameter.LOGO_PATH);

            // delete file from disk
            final String storagePath = systemManager.getSystemPreferences().getFileStoragePath();
            final File destFolder = new File(storagePath, "/custom");
            final File dest = new File(destFolder, param.getValue());
            dest.delete();

            // update db
            param.setValue(Parameter.LOGO_PATH.getDefaultValue());
            configurationService.updateParameter(param);
        } else {
            final CommonsMultipartFile file = bean.getLogoFile();
            if (file != null && !"".equals(file.getOriginalFilename())) {
                if (logger.isDebugEnabled()) {
                    logger.debug(
                            "Uploaded new logo file: " + file.getFileItem().getName() + " / " + file.getSize());
                }

                // validate uploaded logo file
                final Map<MultipartFileValidator.RejectReason, String> rejectDetailsMap = new HashMap<MultipartFileValidator.RejectReason, String>();
                rejectDetailsMap.put(RejectReason.EMPTY_CONTENT, "oct.settings.error.logo.missing");
                rejectDetailsMap.put(RejectReason.EMPTY_NAME, "oct.settings.error.logo.missing");
                rejectDetailsMap.put(RejectReason.BAD_EXTENSION, "oct.settings.error.logo.badExtension");
                rejectDetailsMap.put(RejectReason.MAX_SIZE_EXCEEDED, "oct.settings.error.logo.toobig");

                final Validator validator = new MultipartFileValidator(getCurrentMessageBundle(request),
                        "oct.settings.error.logo.upload", rejectDetailsMap, uploadExtensionWhitelist, 150000);
                validator.validate(file, result);
                if (result.hasErrors()) {
                    return doGet(model, request, response);
                }

                // validation passed, save file to needed location and
                // update the db
                final String storagePath = systemManager.getSystemPreferences().getFileStoragePath();
                final File destFolder = new File(storagePath, "/custom");
                if (!destFolder.exists()) {
                    boolean dirCreated = destFolder.mkdirs();
                    if (logger.isDebugEnabled()) {
                        logger.debug(
                                "Storage directory \"" + destFolder.getPath() + "\" created? => " + dirCreated);
                    }
                }

                final String extension = file.getOriginalFilename()
                        .substring(file.getOriginalFilename().lastIndexOf('.'));
                final String fileName = new StringBuilder().append("customlogo")
                        .append(System.currentTimeMillis()).append(extension).toString();

                final File dest = new File(destFolder, fileName);
                try {
                    file.transferTo(dest);
                    if (logger.isDebugEnabled()) {
                        logger.debug("Uploaded logo file successfully transfered to the local file "
                                + dest.getAbsolutePath());
                    }
                } catch (IllegalStateException e) {
                    logger.error("illegal state error while uploading logo", e);
                    result.reject("oct.settings.error.logo.upload", "Error uploading logo");
                    return doGet(model, request, response);
                } catch (IOException e) {
                    logger.error("input/output error while uploading logo", e);
                    result.reject("oct.settings.error.logo.upload", e.getMessage());
                    return doGet(model, request, response);
                }

                param = new ConfigurationParameter();
                param.setParam(Parameter.LOGO_PATH.getKey());
                param.setValue(fileName);
                configurationService.updateParameter(param);
            }
        }

        // callback url
        final String callbackUrl = bean.getCallbackUrl();
        if (callbackUrl != null && !"".equals(callbackUrl)) {
            // validate url
            UrlValidator validator = UrlValidator.getInstance();
            if (!validator.isValid(callbackUrl)) {
                result.rejectValue("callbackUrl", "oct.settings.error.callback.invalidurl",
                        "An invalid URL has been specified.");
                return doGet(model, request, response);
            }
        }
        param = new ConfigurationParameter();
        param.setParam(Parameter.CALLBACK_URL.getKey());
        param.setValue(callbackUrl);
        configurationService.updateParameter(param);

        // optional validation
        param = new ConfigurationParameter();
        param.setParam(Parameter.OPTIONAL_VALIDATION.getKey());
        param.setValue(new Boolean(bean.getOptionalValidation()).toString());
        configurationService.updateParameter(param);

        // distribution map
        param = new ConfigurationParameter();
        param.setParam(Parameter.SHOW_DISTRIBUTION_MAP.getKey());
        param.setValue(new Boolean(bean.getDisplayMap()).toString());
        configurationService.updateParameter(param);
    }

    return "redirect:settings.do";
}

From source file:com.bbm.common.cmm.web.EgovMultipartResolver.java

/**
 * multipart?  parsing? ./*from  w  w w  . j  a  va 2  s. co m*/
 */
@SuppressWarnings("unchecked")
@Override
protected MultipartParsingResult parseFileItems(List fileItems, String encoding) {
    Map multipartFiles = new HashMap();
    Map multipartParameters = new HashMap();

    // Extract multipart files and multipart parameters.
    for (Iterator it = fileItems.iterator(); it.hasNext();) {
        FileItem fileItem = (FileItem) it.next();

        if (fileItem.isFormField()) {

            String value = null;
            if (encoding != null) {
                try {
                    value = fileItem.getString(encoding);
                } catch (UnsupportedEncodingException ex) {
                    if (logger.isWarnEnabled()) {
                        logger.warn("Could not decode multipart item '" + fileItem.getFieldName()
                                + "' with encoding '" + encoding + "': using platform default");
                    }
                    value = fileItem.getString();
                }
            } else {
                value = fileItem.getString();
            }
            String[] curParam = (String[]) multipartParameters.get(fileItem.getFieldName());
            if (curParam == null) {
                // simple form field
                multipartParameters.put(fileItem.getFieldName(), new String[] { value });
            } else {
                // array of simple form fields
                String[] newParam = StringUtils.addStringToArray(curParam, value);
                multipartParameters.put(fileItem.getFieldName(), newParam);
            }
        } else {

            if (fileItem.getSize() > 0) {
                // multipart file field
                CommonsMultipartFile file = new CommonsMultipartFile(fileItem);
                if (multipartFiles.put(fileItem.getName(), file) != null) { // CHANGED!!
                    throw new MultipartException("Multiple files for field name [" + file.getName()
                            + "] found - not supported by MultipartResolver");
                }
                if (logger.isDebugEnabled()) {
                    logger.debug("Found multipart file [" + file.getName() + "] of size " + file.getSize()
                            + " bytes with original filename [" + file.getOriginalFilename() + "], stored "
                            + file.getStorageDescription());
                }
            }

        }
    }

    return new MultipartParsingResult(multipartFiles, multipartParameters);
}