Pārlūkot izejas kodu

allow TempDir to be created in a parent dir

master
Jonathan Cobb pirms 3 gadiem
vecāks
revīzija
d9e13332db
1 mainītis faili ar 10 papildinājumiem un 4 dzēšanām
  1. +10
    -4
      src/main/java/org/cobbzilla/util/io/TempDir.java

+ 10
- 4
src/main/java/org/cobbzilla/util/io/TempDir.java Parādīt failu

@@ -105,16 +105,22 @@ public class TempDir extends File implements Closeable {


public TempDir () { this("700"); } public TempDir () { this("700"); }


public TempDir (String chmod) {
super(abs(_tempdir()));
public TempDir (File dir) { this(dir, "700"); }

public TempDir (String chmod) { this(null, chmod); }

public TempDir (File dir, String chmod) {
super(abs(_tempdir(dir)));
file = new File(super.getPath()); file = new File(super.getPath());
chmod(file, chmod); chmod(file, chmod);
} }


private static Path _tempdir() {
private static Path _tempdir(File dir) {
try { try {
final Set<PosixFilePermission> perms = PosixFilePermissions.fromString("rwx------"); final Set<PosixFilePermission> perms = PosixFilePermissions.fromString("rwx------");
return Files.createTempDirectory("tempDir", PosixFilePermissions.asFileAttribute(perms));
return dir == null
? Files.createTempDirectory("tempDir", PosixFilePermissions.asFileAttribute(perms))
: Files.createTempDirectory(dir.toPath(), "tempDir", PosixFilePermissions.asFileAttribute(perms));
} catch (IOException e) { } catch (IOException e) {
return die("_tempdir: "+shortError(e), e); return die("_tempdir: "+shortError(e), e);
} }


Notiek ielāde…
Atcelt
Saglabāt