code: public MultiValueMap<String, Object> addFileToMultiValueMap(MultipartFile multipartFile) throws IOException {
  
          String newFolderPath = FileUtils.getTempDirectoryPath() + "/" + System.currentTimeMillis();
  
          File newFolder = new File(newFolderPath);
  
          FileUtils.forceMkdir(newFolder);
  
          String originalFileName = multipartFile.getOriginalFilename();
          String filePath = newFolderPath + "/" + originalFileName;
          File file = new File(filePath);
  
          FileCopyUtils.copy(multipartFile.getBytes(), file);
  
          return addFileToMultiValueMap(file);
  
      }
docs: Will create a unique sub folder in the temp directory. This is done so that we can name the file with the original file
  name without having to worry about file name collisions. The bh rest apis will name the attached file what the system File
  created in this method is named, which is why we are not using a randomly generated file name here.
  
  Will create a file in tempDir\\uniqueSubFolder\\filename.type
  
  
  @param multipartFile
  @return
  @throws IOException