Quellcode durchsuchen

add keyValue utility

tags/2.0.1
Jonathan Cobb vor 4 Jahren
Ursprung
Commit
f02f79114d
1 geänderte Dateien mit 17 neuen und 0 gelöschten Zeilen
  1. +17
    -0
      src/main/java/org/cobbzilla/util/main/BaseMainOptions.java

+ 17
- 0
src/main/java/org/cobbzilla/util/main/BaseMainOptions.java Datei anzeigen

@@ -2,6 +2,7 @@ package org.cobbzilla.util.main;

import lombok.Getter;
import lombok.Setter;
import org.cobbzilla.util.io.FileUtil;
import org.kohsuke.args4j.Option;

import java.io.*;
@@ -67,4 +68,20 @@ public class BaseMainOptions {
die("No such field: "+field+": "+e, e);
}
}

public static String keyValue(String v, String desc) {
if (empty(v)) return v;
if (!v.startsWith("@")) return v;
final String varOrFile = v.substring(1);
final String envVal = System.getenv(varOrFile);
if (!empty(envVal)) return envVal;
try {
return FileUtil.toString(varOrFile);
} catch (FileNotFoundException e) {
return die(desc+": no env var or file named "+varOrFile);
} catch (Exception e) {
return die(desc+": error reading: "+varOrFile+": "+e);
}
}

}

Laden…
Abbrechen
Speichern