allow suppression of npm management logging
This commit is contained in:
parent
4b1b99a61c
commit
9c20a28710
|
@ -18,6 +18,7 @@ public abstract class BasePackageCacheManager implements IPackageCacheManager {
|
||||||
private static final Logger ourLog = LoggerFactory.getLogger(BasePackageCacheManager.class);
|
private static final Logger ourLog = LoggerFactory.getLogger(BasePackageCacheManager.class);
|
||||||
private List<String> myPackageServers = new ArrayList<>();
|
private List<String> myPackageServers = new ArrayList<>();
|
||||||
private Function<String, PackageClient> myClientFactory = address -> new CachingPackageClient(address);
|
private Function<String, PackageClient> myClientFactory = address -> new CachingPackageClient(address);
|
||||||
|
protected boolean silent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor
|
* Constructor
|
||||||
|
@ -77,7 +78,9 @@ public abstract class BasePackageCacheManager implements IPackageCacheManager {
|
||||||
String url = packageClient.url(id, version);
|
String url = packageClient.url(id, version);
|
||||||
return new InputStreamWithSrc(stream, url, version);
|
return new InputStreamWithSrc(stream, url, version);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
ourLog.info("Failed to resolve package {}#{} from server: {} ({})", id, version, nextPackageServer, e.getMessage());
|
if (!silent) {
|
||||||
|
ourLog.info("Failed to resolve package {}#{} from server: {} ({})", id, version, nextPackageServer, e.getMessage());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -177,4 +180,9 @@ public abstract class BasePackageCacheManager implements IPackageCacheManager {
|
||||||
return loadPackage(idAndVer, null);
|
return loadPackage(idAndVer, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void setSilent(boolean silent) {
|
||||||
|
this.silent = silent;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -344,15 +344,15 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
public NpmPackage addPackageToCache(String id, String version, InputStream packageTgzInputStream, String sourceDesc) throws IOException {
|
public NpmPackage addPackageToCache(String id, String version, InputStream packageTgzInputStream, String sourceDesc) throws IOException {
|
||||||
checkValidVersionString(version, id);
|
checkValidVersionString(version, id);
|
||||||
if (progress) {
|
if (progress) {
|
||||||
System.out.println("Installing " + id + "#" + (version == null ? "?" : version) + " to the package cache");
|
log("Installing " + id + "#" + (version == null ? "?" : version) + " to the package cache");
|
||||||
System.out.print(" Fetching:");
|
log(" Fetching:");
|
||||||
}
|
}
|
||||||
|
|
||||||
NpmPackage npm = NpmPackage.fromPackage(packageTgzInputStream, sourceDesc, true);
|
NpmPackage npm = NpmPackage.fromPackage(packageTgzInputStream, sourceDesc, true);
|
||||||
|
|
||||||
if (progress) {
|
if (progress) {
|
||||||
System.out.println();
|
log("");
|
||||||
System.out.print(" Installing: ");
|
logn(" Installing: ");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!suppressErrors && npm.name() == null || id == null || !id.equalsIgnoreCase(npm.name())) {
|
if (!suppressErrors && npm.name() == null || id == null || !id.equalsIgnoreCase(npm.name())) {
|
||||||
|
@ -374,7 +374,7 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
try {
|
try {
|
||||||
Utilities.clearDirectory(packRoot);
|
Utilities.clearDirectory(packRoot);
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
System.out.println("Unable to clear directory: "+packRoot+": "+t.getMessage()+" - this may cause problems later");
|
log("Unable to clear directory: "+packRoot+": "+t.getMessage()+" - this may cause problems later");
|
||||||
}
|
}
|
||||||
|
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
@ -392,10 +392,10 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
i++;
|
i++;
|
||||||
if (progress && i % 50 == 0) {
|
if (progress && i % 50 == 0) {
|
||||||
c++;
|
c++;
|
||||||
System.out.print(".");
|
logn(".");
|
||||||
if (c == 120) {
|
if (c == 120) {
|
||||||
System.out.println("");
|
log("");
|
||||||
System.out.print(" ");
|
logn(" ");
|
||||||
c = 2;
|
c = 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -409,7 +409,7 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
ini.setIntegerProperty("package-sizes", id + "#" + v, size, null);
|
ini.setIntegerProperty("package-sizes", id + "#" + v, size, null);
|
||||||
ini.save();
|
ini.save();
|
||||||
if (progress)
|
if (progress)
|
||||||
System.out.println(" done.");
|
log(" done.");
|
||||||
}
|
}
|
||||||
pck = loadPackageInfo(packRoot);
|
pck = loadPackageInfo(packRoot);
|
||||||
if (!id.equals(JSONUtil.str(npm.getNpm(), "name")) || !v.equals(JSONUtil.str(npm.getNpm(), "version"))) {
|
if (!id.equals(JSONUtil.str(npm.getNpm(), "name")) || !v.equals(JSONUtil.str(npm.getNpm(), "version"))) {
|
||||||
|
@ -428,7 +428,7 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
try {
|
try {
|
||||||
// don't leave a half extracted package behind
|
// don't leave a half extracted package behind
|
||||||
System.out.println("Clean up package " + packRoot + " because installation failed: " + e.getMessage());
|
log("Clean up package " + packRoot + " because installation failed: " + e.getMessage());
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
Utilities.clearDirectory(packRoot);
|
Utilities.clearDirectory(packRoot);
|
||||||
new File(packRoot).delete();
|
new File(packRoot).delete();
|
||||||
|
@ -441,6 +441,18 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void log(String s) {
|
||||||
|
if (!silent) {
|
||||||
|
System.out.println(s);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void logn(String s) {
|
||||||
|
if (!silent) {
|
||||||
|
System.out.print(s);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getPackageUrl(String packageId) throws IOException {
|
public String getPackageUrl(String packageId) throws IOException {
|
||||||
String result = super.getPackageUrl(packageId);
|
String result = super.getPackageUrl(packageId);
|
||||||
|
@ -646,7 +658,7 @@ public class FilesystemPackageCacheManager extends BasePackageCacheManager imple
|
||||||
try {
|
try {
|
||||||
loadFromBuildServer();
|
loadFromBuildServer();
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
System.out.println("Error connecting to build server - running without build (" + e.getMessage() + ")");
|
log("Error connecting to build server - running without build (" + e.getMessage() + ")");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -63,8 +63,10 @@ import org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream;
|
||||||
import org.apache.commons.compress.compressors.gzip.GzipCompressorOutputStream;
|
import org.apache.commons.compress.compressors.gzip.GzipCompressorOutputStream;
|
||||||
import org.hl7.fhir.exceptions.FHIRException;
|
import org.hl7.fhir.exceptions.FHIRException;
|
||||||
import org.hl7.fhir.utilities.CommaSeparatedStringBuilder;
|
import org.hl7.fhir.utilities.CommaSeparatedStringBuilder;
|
||||||
|
import org.hl7.fhir.utilities.SimpleHTTPClient;
|
||||||
import org.hl7.fhir.utilities.TextFile;
|
import org.hl7.fhir.utilities.TextFile;
|
||||||
import org.hl7.fhir.utilities.Utilities;
|
import org.hl7.fhir.utilities.Utilities;
|
||||||
|
import org.hl7.fhir.utilities.SimpleHTTPClient.HTTPResult;
|
||||||
import org.hl7.fhir.utilities.json.JSONUtil;
|
import org.hl7.fhir.utilities.json.JSONUtil;
|
||||||
import org.hl7.fhir.utilities.json.JsonTrackingParser;
|
import org.hl7.fhir.utilities.json.JsonTrackingParser;
|
||||||
import org.hl7.fhir.utilities.npm.NpmPackage.ITransformingLoader;
|
import org.hl7.fhir.utilities.npm.NpmPackage.ITransformingLoader;
|
||||||
|
@ -1159,6 +1161,13 @@ public class NpmPackage {
|
||||||
return new Date();
|
return new Date();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static NpmPackage fromUrl(String source) throws IOException {
|
||||||
|
SimpleHTTPClient fetcher = new SimpleHTTPClient();
|
||||||
|
HTTPResult res = fetcher.get(source+"?nocache=" + System.currentTimeMillis());
|
||||||
|
res.checkThrowException();
|
||||||
|
return fromPackage(new ByteArrayInputStream(res.getContent()));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue