本文整理了Java中io.fabric8.utils.Files.recursiveDelete()
方法的一些代码示例,展示了Files.recursiveDelete()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Files.recursiveDelete()
方法的具体详情如下:
包路径:io.fabric8.utils.Files
类名称:Files
方法名:recursiveDelete
[英]Recursively deletes the given file whether its a file or directory returning the number of files deleted
[中]递归删除给定文件,无论是返回已删除文件数的文件还是目录
代码示例来源:origin: io.fabric8/fabric-utils
/**
* Recursively deletes the given file whether its a file or directory returning the number
* of files deleted
*/
public static int recursiveDelete(File file) {
int answer = 0;
if (file.isDirectory()) {
File[] files = file.listFiles();
if (files != null) {
for (File child : files) {
answer += recursiveDelete(child);
}
}
}
if (file.delete()) {
answer += 1;
}
return answer;
}
代码示例来源:origin: io.fabric8/fabric8-arquillian
private void clearTestResultDirectories(Session session) {
Files.recursiveDelete(new File(session.getBaseDir(), "target/test-pod-status"));
Files.recursiveDelete(new File(session.getBaseDir(), "target/test-pod-logs"));
}
代码示例来源:origin: io.fabric8.forge/fabric8-forge-core
@Override
public Response call() throws Exception {
LOG.info("Removing clone of project at " + basedir);
Files.recursiveDelete(basedir);
return Response.ok(new StatusDTO(basedir.getName(), "remove project")).build();
}
});
代码示例来源:origin: io.fabric8/fabric-utils
/**
* Recursively deletes the file and any children files if its a directory
*/
public static void recursiveDelete(File file, FileFilter filter) {
if (filter == null || filter.accept(file)) {
if (file.isDirectory()) {
File[] files = file.listFiles();
if (files != null) {
for (File child : files) {
recursiveDelete(child, filter);
}
}
files = file.listFiles();
// lets not delete if we didn't delete a child file
if (files == null || files.length == 0) {
file.delete();
}
} else {
file.delete();
}
}
}
代码示例来源:origin: fabric8io/jube
@Override
public void install(InstallContext installContext, ProcessConfig config, String id, File installDir) throws Exception {
if (removePaths != null) {
File baseDir = ProcessUtils.findInstallDir(installDir);
for (String removePath : removePaths) {
File removeFile = new File(baseDir, removePath);
if (removeFile.exists()) {
LOG.info("Removing file " + removeFile);
Files.recursiveDelete(removeFile);
} else {
LOG.warn("Post unpack removal path " + removePath + " does not exist at " + removeFile);
}
}
}
}
}
代码示例来源:origin: fabric8io/ipaas-quickstarts
/**
* Iterates through all projects in the given properties file adn generate an archetype for it
*/
public void generateArchetypesFromGitRepoList(File file, File outputDir, List<String> dirs) throws IOException {
File cloneParentDir = new File(outputDir, "../git-clones");
if (cloneParentDir.exists()) {
Files.recursiveDelete(cloneParentDir);
}
Properties properties = new Properties();
try (FileInputStream is = new FileInputStream(file)) {
properties.load(is);
}
for (Map.Entry<Object, Object> entry : properties.entrySet()) {
LinkedList<String> values = new LinkedList<>(Arrays.asList(((String) entry.getValue()).split("\\|")));
String gitrepo = values.removeFirst();
String tag = values.isEmpty() ? null : values.removeFirst();
generateArchetypeFromGitRepo(outputDir, dirs, cloneParentDir, (String)entry.getKey(), gitrepo, tag);
}
}
代码示例来源:origin: io.fabric8.jube.images.fabric8/app-library
/**
* Note we pass in the {@link io.hawt.aether.AetherFacade} to ensure that the mvn: URL handler is initialised first before we
* start to lazily create the git repository
*
* @param importUrls the list of app zips URLs to be imported to the library on startup. Supports mvn:group/artifact/version/type/classifier formats in addition to http:, file: etc.
*/
@Produces
@Singleton
public GitFacade createGit(@ConfigProperty(name = "IMPORT_APP_URLS") String importUrls, AetherFacade aether) throws Exception {
GitFacade git = new GitFacade();
System.out.println("Importing urls: " + importUrls);
git.setInitialImportURLs(importUrls);
git.setCloneRemoteRepoOnStartup(false);
File configDir = new File("library");
if (configDir.exists()) {
Files.recursiveDelete(configDir);
}
configDir.mkdirs();
git.setConfigDirectory(configDir);
git.init();
System.out.println("Created library at at: " + configDir.getAbsolutePath());
return git;
}
代码示例来源:origin: fabric8io/ipaas-quickstarts
/**
* Iterates through all projects in the given github organisation and generates an archetype for it
*/
public void generateArchetypesFromGithubOrganisation(String githubOrg, File outputDir, List<String> dirs) throws IOException {
GitHub github = GitHub.connectAnonymously();
GHOrganization organization = github.getOrganization(githubOrg);
Objects.notNull(organization, "No github organisation found for: " + githubOrg);
Map<String, GHRepository> repositories = organization.getRepositories();
Set<Map.Entry<String, GHRepository>> entries = repositories.entrySet();
File cloneParentDir = new File(outputDir, "../git-clones");
if (cloneParentDir.exists()) {
Files.recursiveDelete(cloneParentDir);
}
for (Map.Entry<String, GHRepository> entry : entries) {
String repoName = entry.getKey();
GHRepository repo = entry.getValue();
String url = repo.getGitTransportUrl();
generateArchetypeFromGitRepo(outputDir, dirs, cloneParentDir, repoName, url, null);
}
}
代码示例来源:origin: fabric8io/ipaas-quickstarts
cloneDir.getParentFile().mkdirs();
if (cloneDir.exists()) {
Files.recursiveDelete(cloneDir);
Files.recursiveDelete(gitFolder);
代码示例来源:origin: fabric8io/ipaas-quickstarts
Files.recursiveDelete(archetypeDir);
} else if (outputSrcDir.exists() && outputGitIgnoreFile.exists() && fileIncludesLine(outputGitIgnoreFile, "src")) {
LOG.debug("Removing generated src dir {}", outputSrcDir);
Files.recursiveDelete(outputSrcDir);
if (outputSrcDir.exists()) {
throw new RuntimeException("The projectDir " + outputSrcDir + " should not exist!");
代码示例来源:origin: io.fabric8.forge/devops
recursiveDelete(src);
代码示例来源:origin: io.fabric8.forge/fabric8-forge-core
protected CommitInfo doRemove(Git git, String path) throws Exception {
File file = getRelativeFile(path);
if (file.exists()) {
Files.recursiveDelete(file);
String filePattern = getFilePattern(path);
git.rm().addFilepattern(filePattern).call();
CommitCommand commit = git.commit().setAll(true).setAuthor(personIdent).setMessage(message);
return createCommitInfo(commitThenPush(git, commit));
} else {
return null;
}
}
代码示例来源:origin: io.fabric8.forge/fabric8-forge-core
protected CommitInfo doRemove(Git git, List<String> paths) throws Exception {
if (paths != null && paths.size() > 0) {
int count = 0;
for (String path : paths) {
File file = getRelativeFile(path);
if (file.exists()) {
count++;
Files.recursiveDelete(file);
String filePattern = getFilePattern(path);
git.rm().addFilepattern(filePattern).call();
}
}
if (count > 0) {
CommitCommand commit = git.commit().setAll(true).setAuthor(personIdent).setMessage(message);
return createCommitInfo(commitThenPush(git, commit));
}
}
return null;
}
内容来源于网络,如有侵权,请联系作者删除!