org.apache.brooklyn.util.os.Os.deleteOnExitRecursively()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(6.5k)|赞(0)|评价(0)|浏览(113)

本文整理了Java中org.apache.brooklyn.util.os.Os.deleteOnExitRecursively()方法的一些代码示例,展示了Os.deleteOnExitRecursively()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Os.deleteOnExitRecursively()方法的具体详情如下:
包路径:org.apache.brooklyn.util.os.Os
类名称:Os
方法名:deleteOnExitRecursively

Os.deleteOnExitRecursively介绍

[英]deletes the given file or directory and, in the case of directories, any contents; similar to apache commons FileUtils.cleanDirectoryOnExit but corrects a bug in that implementation which causes it to fail if content is added to that directory after the hook is registered
[中]删除给定的文件或目录,如果是目录,则删除任何内容;与apache commons FileUtils类似。cleanDirectoryOnExit,但纠正了该实现中的一个错误,如果在注册钩子后将内容添加到该目录中,则会导致该实现失败

代码示例

代码示例来源:origin: org.apache.brooklyn/brooklyn-utils-common

/** like {@link #deleteOnExitRecursively(File)} followed by {@link #deleteOnExitEmptyParentsUpTo(File, File)} */
public static void deleteOnExitRecursivelyAndEmptyParentsUpTo(File directoryToCleanOrFile, File highestAncestorToDelete) {
  deleteOnExitRecursively(directoryToCleanOrFile);
  deleteOnExitEmptyParentsUpTo(directoryToCleanOrFile, highestAncestorToDelete);
}

代码示例来源:origin: io.cloudsoft.brooklyn.tosca/brooklyn-tosca-transformer

@Inject
public Uploader(ArchiveUploadService archiveUploadService){
  this.archiveUploadService = archiveUploadService;
  tmpRoot = Os.newTempDir("brooklyn-a4c");
  Os.deleteOnExitRecursively(tmpRoot);
}

代码示例来源:origin: io.cloudsoft.brooklyn.tosca/brooklyn-tosca-transformer

@Inject
public Alien4CloudFacade(ICSARRepositorySearchService repositorySearchService, TopologyTreeBuilderService treeBuilder, ICsarRepositry csarFileRepository, TopologyServiceCore topologyService, TopologyTemplateVersionService topologyTemplateVersionService, DeploymentTopologyService deploymentTopologyService, ApplicationService applicationService) {
  this.repositorySearchService = repositorySearchService;
  this.treeBuilder = treeBuilder;
  this.csarFileRepository = csarFileRepository;
  this.topologyService = topologyService;
  this.topologyTemplateVersionService = topologyTemplateVersionService;
  this.deploymentTopologyService = deploymentTopologyService;
  this.applicationService = applicationService;
  tmpRoot = Os.newTempDir("brooklyn-a4c");
  Os.deleteOnExitRecursively(tmpRoot);
}

代码示例来源:origin: io.cloudsoft.brooklyn.tosca/brooklyn-tosca-transformer

@Inject
public Alien4CloudToscaPlatform(BeanFactory beanFactory, ToscaFacade alien4CloudFacade, Uploader uploader) {
  this.beanFactory = beanFactory;
  this.alien4CloudFacade = alien4CloudFacade;
  this.uploader = uploader;
  tmpRoot = Os.newTempDir("brooklyn-a4c");
  Os.deleteOnExitRecursively(tmpRoot);
  loadDefaultTypes();
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-core

public static File getOsgiCacheDirCleanedIfNeeded(ManagementContext mgmt) {
  File cacheDirF = getOsgiCacheDir(mgmt);
  boolean clean = isOsgiCacheForCleaning(mgmt, cacheDirF);
  log.debug("OSGi cache dir computed as "+cacheDirF.getAbsolutePath()+" ("+
    (cacheDirF.exists() ? "already exists" : "does not exist")+", "+
    (clean ? "cleaning now (and on exit)" : "cleaning not requested"));
  if (clean) {
    Os.deleteRecursively(cacheDirF);
    Os.deleteOnExitRecursively(cacheDirF);
  }
  
  return cacheDirF;
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-launcher

@Override
protected String newTempPersistenceContainerName() {
  File persistenceDirF = Files.createTempDir();
  Os.deleteOnExitRecursively(persistenceDirF);
  return persistenceDirF.getAbsolutePath();
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-launcher

protected String newTempPersistenceContainerName() {
  File persistenceDirF = Files.createTempDir();
  Os.deleteOnExitRecursively(persistenceDirF);
  return persistenceDirF.getAbsolutePath();
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-launcher

@BeforeMethod(alwaysRun=true)
public void setUp() throws Exception {
  persistenceDir = Files.createTempDir();
  Os.deleteOnExitRecursively(persistenceDir);
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-launcher

@Override
protected String newTempPersistenceContainerName() {
  File persistenceDirF = Files.createTempDir();
  Os.deleteOnExitRecursively(persistenceDirF);
  return persistenceDirF.getAbsolutePath();
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-utils-common

/** creates a temp dir which will be deleted on exit */
public static File newTempDir(String prefix) {
  String sanitizedPrefix = (prefix==null ? "" : Strings.makeValidFilename(prefix) + "-");
  String tmpParent = tmp();
  
  //With lots of stale temp dirs it is possible to have 
  //name collisions so we need to retry until a unique 
  //name is found
  for (int i = 0; i < TEMP_DIR_ATTEMPTS; i++) {
    String baseName = sanitizedPrefix + Identifiers.makeRandomId(4);
    File tempDir = new File(tmpParent, baseName);
    if (!tempDir.exists()) {
      if (tempDir.mkdir()) {
        Os.deleteOnExitRecursively(tempDir);
        return tempDir;
      } else {
        log.warn("Attempt to create temp dir failed " + tempDir + ". Either an IO error (disk full, no rights) or someone else created the folder after the !exists() check.");
      }
    } else {
      log.debug("Attempt to create temp dir failed, already exists " + tempDir + ". With ID of length 4 it is not unusual (15% chance) to have duplicate names at the 2000 samples mark.");
    }
  }
  throw new IllegalStateException("cannot create temporary folders in parent " + tmpParent + " after " + TEMP_DIR_ATTEMPTS + " attempts.");
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-core

Os.deleteOnExitRecursively(brooklynBundlesCacheDir);
  Os.deleteOnExitRecursively(osgiFrameworkCacheDir);
  if (numberOfReusableFrameworksCreated.incrementAndGet()%10==0) {
    log.warn("Possible leak of reusable OSGi containers ("+numberOfReusableFrameworksCreated+" total)");

代码示例来源:origin: org.apache.brooklyn/brooklyn-core

@BeforeClass
public void createTmpDirAndFiles() throws IOException {
  parentDir = Os.newTempDir(getClass().getSimpleName());
  Os.deleteOnExitRecursively(parentDir);
  tmpDir = new File(parentDir, Identifiers.makeRandomId(4));
  Os.mkdirs(tmpDir);
  Files.write("abcdef", new File(tmpDir, "data01.txt"), Charsets.US_ASCII);
  Files.write("123456", new File(tmpDir, "data02.txt"), Charsets.US_ASCII);
  Files.write("qqqqqq", new File(tmpDir, "data03.txt"), Charsets.US_ASCII);
  
  tmpDir2 = new File(parentDir, Identifiers.makeRandomId(4));
  Os.mkdirs(tmpDir2);
  Files.write("zzzzzz", new File(tmpDir2, "data04.txt"), Charsets.US_ASCII);
}

代码示例来源:origin: org.apache.brooklyn/brooklyn-core

@Override
protected ManagementContext newPersistingManagementContext() {
  mementoDir = Os.newTempDir(JavaClassNames.cleanSimpleClassName(this));
  Os.deleteOnExitRecursively(mementoDir);
  return RebindTestUtils.managementContextBuilder(classLoader, new FileBasedObjectStore(mementoDir))
    .persistPeriod(Duration.millis(10)).buildStarted();
}

相关文章