All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.assertj.swing.junit.runner.FolderCreator Maven / Gradle / Ivy

The newest version!
/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations under the License.
 *
 * Copyright 2012-2018 the original author or authors.
 */
package org.assertj.swing.junit.runner;

import org.apache.commons.io.FileUtils;

import static java.io.File.separator;

import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;

/**
 * Understands creation of folders.
 *
 * @author Alex Ruiz
 */
class FolderCreator {

  File createFolder(File parent, String name, boolean deleteIfExists) {
    try {
      String canonicalPath = parent.getCanonicalPath();
      File imageFolder = new File(canonicalPath + separator + name);
      if (deleteIfExists && imageFolder.exists()) {
        FileUtils.forceDelete(imageFolder);
      }
      FileUtils.forceMkdir(imageFolder);
      return imageFolder;
    } catch (Exception e) {
      String message = "Unable to create directory " + "'" + name + "'";

      if (e instanceof IOException) {
        throw new UncheckedIOException(message, (IOException) e);
      }
      throw new RuntimeException(message, e);
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy