package org.dicadeveloper.weplantaforest;
import java.io.File;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Bean;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;
@Component(value = "fileSystemInjector")
public class FileSystemInjector {
@Autowired
Environment env;
public static String UPLOAD_DIR = "/ipat_uploads";
public static String IMAGE_DIR = "/images";
public static String PROJECT_DIR = "/projects";
public static String TREETYPE_DIR = "/treeTypes";
public static String USER_DIR = "/user";
public static String TEAM_DIR = "/teams";
public static String TREE_DIR = "/trees";
public static String MAIN_IMAGE_DIR = "/mainSlider";
private static String topFolder;
@Bean
CommandLineRunner initFolderStructure() {
return (String[] args) -> {
topFolder = env.getProperty("upload.root");
new File(topFolder).mkdir();
new File(topFolder + UPLOAD_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + PROJECT_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + TREETYPE_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + USER_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + TEAM_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + TREE_DIR).mkdir();
new File(topFolder + UPLOAD_DIR + IMAGE_DIR + MAIN_IMAGE_DIR).mkdir();
};
}
public static String getImageFolderForProjects() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + PROJECT_DIR;
}
public static String getImageUploadFolder() {
return topFolder + UPLOAD_DIR;
}
public static String getTreeTypeFolder() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + TREETYPE_DIR;
}
public static String getUserFolder() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + USER_DIR;
}
public static String getTeamFolder() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + TEAM_DIR;
}
public static String getTreeFolder() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + TREE_DIR;
}
public static String getMainImageFolder() {
return topFolder + UPLOAD_DIR + IMAGE_DIR + MAIN_IMAGE_DIR;
}
}