This is an automated email from the ASF dual-hosted git repository.
heneveld pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git
The following commit(s) were added to refs/heads/master by this push:
new 48c619673e address code review on PR 1322
48c619673e is described below
commit 48c619673e6ec87ce894d4628487e8f35d0573b0
Author: Alex Heneveld <[email protected]>
AuthorDate: Mon Jun 27 09:06:34 2022 +0100
address code review on PR 1322
---
.../mgmt/ha/BrooklynBomOsgiArchiveInstaller.java | 32 ++++++++++++----------
.../typereg/BrooklynCatalogBundleResolvers.java | 8 ++----
.../brooklyn/util/core/file/ArchiveBuilder.java | 1 -
3 files changed, 20 insertions(+), 21 deletions(-)
diff --git
a/core/src/main/java/org/apache/brooklyn/core/mgmt/ha/BrooklynBomOsgiArchiveInstaller.java
b/core/src/main/java/org/apache/brooklyn/core/mgmt/ha/BrooklynBomOsgiArchiveInstaller.java
index 8aa20f603a..fc1440738d 100644
---
a/core/src/main/java/org/apache/brooklyn/core/mgmt/ha/BrooklynBomOsgiArchiveInstaller.java
+++
b/core/src/main/java/org/apache/brooklyn/core/mgmt/ha/BrooklynBomOsgiArchiveInstaller.java
@@ -99,15 +99,19 @@ public class BrooklynBomOsgiArchiveInstaller {
public static class FileWithTempInfo<T extends File> {
public FileWithTempInfo(T f, boolean isTemp) { this.f = f; this.isTemp
= isTemp; }
- public T f;
+ private T f;
public boolean isTemp;
public void deleteIfTemp() {
- if (isTemp && f!=null) {
- f.delete();
+ if (isTemp && getFile() !=null) {
+ getFile().delete();
f = null;
}
}
+
+ public T getFile() {
+ return f;
+ }
}
private FileWithTempInfo<File> zipFile;
@@ -356,9 +360,9 @@ public class BrooklynBomOsgiArchiveInstaller {
} else {
prepareInstallResult.zipFile = new FileWithTempInfo<File>(
Os.newTempFile("brooklyn-bundle-transient-" + suppliedKnownBundleMetadata,
"zip"), true );
try {
- FileOutputStream fos = new
FileOutputStream(prepareInstallResult.zipFile.f);
+ FileOutputStream fos = new
FileOutputStream(prepareInstallResult.zipFile.getFile());
Streams.copyClose(zipIn, fos);
- try (ZipFile zf = new
ZipFile(prepareInstallResult.zipFile.f)) {
+ try (ZipFile zf = new
ZipFile(prepareInstallResult.zipFile.getFile())) {
// validate it is a valid ZIP, otherwise errors
are more obscure later.
// can happen esp if user supplies a
file://path/to/folder/ as the URL.openStream returns a list of that folder (!)
// the error thrown by the below is useful enough,
and caller will wrap with suppliedKnownBundleMetadata details
@@ -384,7 +388,7 @@ public class BrooklynBomOsgiArchiveInstaller {
}
private void discoverManifestFromCatalogBom(boolean isCatalogBomRequired) {
- discoveredManifest = new BundleMaker(mgmt()).getManifest(zipFile.f);
+ discoveredManifest = new
BundleMaker(mgmt()).getManifest(zipFile.getFile());
if (Strings.isNonBlank(bomText)) {
discoveredBomVersionedName =
BasicBrooklynCatalog.getVersionedName(BasicBrooklynCatalog.getCatalogMetadata(bomText),
false );
@@ -394,7 +398,7 @@ public class BrooklynBomOsgiArchiveInstaller {
ZipFile zf = null;
try {
try {
- zf = new ZipFile(zipFile.f);
+ zf = new ZipFile(zipFile.getFile());
} catch (IOException e) {
throw new IllegalArgumentException("Invalid ZIP/JAR archive:
"+e);
}
@@ -453,7 +457,7 @@ public class BrooklynBomOsgiArchiveInstaller {
manifestNeedsUpdating = true;
}
if (manifestNeedsUpdating) {
- File zf2 = new BundleMaker(mgmt()).copyAddingManifest(zipFile.f,
discoveredManifest);
+ File zf2 = new
BundleMaker(mgmt()).copyAddingManifest(zipFile.getFile(), discoveredManifest);
zipFile.deleteIfTemp();
zipFile = new FileWithTempInfo<>(zf2, zipFile.isTemp);
}
@@ -495,7 +499,7 @@ public class BrooklynBomOsgiArchiveInstaller {
if (result.code!=null) return
ReferenceWithError.newInstanceWithoutError(result);
assert inferredMetadata.isNameResolved() : "Should have resolved
"+inferredMetadata;
assert inferredMetadata instanceof BasicManagedBundle : "Only
BasicManagedBundles supported";
- ((BasicManagedBundle)inferredMetadata).setChecksum(getChecksum(new
ZipFile(zipFile.f)));
+ ((BasicManagedBundle)inferredMetadata).setChecksum(getChecksum(new
ZipFile(zipFile.getFile())));
((BasicManagedBundle)inferredMetadata).setFormat(format);
final boolean updating;
@@ -533,7 +537,7 @@ public class BrooklynBomOsgiArchiveInstaller {
List<Bundle> matchingVsnBundles =
findBundlesBySymbolicNameAndVersion(osgiManager, inferredMetadata);
- List<Bundle> sameContentBundles =
matchingVsnBundles.stream().filter(b -> isBundleSameOsgiUrlOrSameContents(b,
inferredMetadata, zipFile.f)).collect(Collectors.toList());
+ List<Bundle> sameContentBundles =
matchingVsnBundles.stream().filter(b -> isBundleSameOsgiUrlOrSameContents(b,
inferredMetadata, zipFile.getFile())).collect(Collectors.toList());
if (!sameContentBundles.isEmpty()) {
// e.g. happens if pre-installed bundle is brought under
management, and then add it again via a mvn-style url.
// We wouldn't know the checksum from the pre-installed
bundle, the osgi locations might be different,
@@ -601,7 +605,7 @@ public class BrooklynBomOsgiArchiveInstaller {
// search for already-installed bundles.
List<Bundle> existingBundles =
findBundlesBySymbolicNameAndVersion(osgiManager, inferredMetadata);
- Maybe<Bundle> existingEquivalentBundle =
tryFindSameOsgiUrlOrSameContentsBundle(existingBundles, inferredMetadata,
zipFile.f);
+ Maybe<Bundle> existingEquivalentBundle =
tryFindSameOsgiUrlOrSameContentsBundle(existingBundles, inferredMetadata,
zipFile.getFile());
if (existingEquivalentBundle.isPresent()) {
// Identical bundle (by osgi location or binary content)
already installed; just bring that under management.
@@ -647,7 +651,7 @@ public class BrooklynBomOsgiArchiveInstaller {
}
startedInstallation = true;
- try (InputStream fin = new FileInputStream(zipFile.f)) {
+ try (InputStream fin = new FileInputStream(zipFile.getFile())) {
if (!updating) {
if
(isBringingExistingOsgiInstalledBundleUnderBrooklynManagement) {
assert result.getBundle()!=null;
@@ -669,11 +673,11 @@ public class BrooklynBomOsgiArchiveInstaller {
if (!updating) {
oldZipFile = null;
oldManagedBundle = null;
- osgiManager.managedBundlesRecord.addManagedBundle(result,
zipFile.f);
+ osgiManager.managedBundlesRecord.addManagedBundle(result,
zipFile.getFile());
result.code =
OsgiBundleInstallationResult.ResultCode.INSTALLED_NEW_BUNDLE;
result.message = "Installed Brooklyn catalog bundle
"+result.getMetadata().getVersionedName()+" with ID
"+result.getMetadata().getId()+" ["+result.bundle.getBundleId()+"]";
} else {
- Pair<File, ManagedBundle> olds =
osgiManager.managedBundlesRecord.updateManagedBundleFileAndMetadata(result,
zipFile.f);
+ Pair<File, ManagedBundle> olds =
osgiManager.managedBundlesRecord.updateManagedBundleFileAndMetadata(result,
zipFile.getFile());
oldZipFile = olds.getLeft();
oldManagedBundle = olds.getRight();
diff --git
a/core/src/main/java/org/apache/brooklyn/core/typereg/BrooklynCatalogBundleResolvers.java
b/core/src/main/java/org/apache/brooklyn/core/typereg/BrooklynCatalogBundleResolvers.java
index 54050549c4..4b9548e0d3 100644
---
a/core/src/main/java/org/apache/brooklyn/core/typereg/BrooklynCatalogBundleResolvers.java
+++
b/core/src/main/java/org/apache/brooklyn/core/typereg/BrooklynCatalogBundleResolvers.java
@@ -18,10 +18,9 @@
*/
package org.apache.brooklyn.core.typereg;
-import com.google.common.annotations.Beta;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.*;
-import java.io.File;
+
import java.io.InputStream;
import java.util.*;
import java.util.Map.Entry;
@@ -29,8 +28,6 @@ import java.util.function.Supplier;
import java.util.stream.Collectors;
import org.apache.brooklyn.api.framework.FrameworkLookup;
import org.apache.brooklyn.api.mgmt.ManagementContext;
-import org.apache.brooklyn.api.typereg.RegisteredType;
-import org.apache.brooklyn.api.typereg.RegisteredTypeLoadingContext;
import org.apache.brooklyn.core.mgmt.entitlement.Entitlements;
import org.apache.brooklyn.core.mgmt.ha.BrooklynBomOsgiArchiveInstaller;
import
org.apache.brooklyn.core.mgmt.ha.BrooklynBomOsgiArchiveInstaller.PrepareInstallResult;
@@ -38,7 +35,6 @@ import
org.apache.brooklyn.core.mgmt.ha.OsgiBundleInstallationResult;
import
org.apache.brooklyn.core.typereg.BrooklynCatalogBundleResolver.BundleInstallationOptions;
import org.apache.brooklyn.util.collections.MutableList;
import org.apache.brooklyn.util.collections.MutableMap;
-import org.apache.brooklyn.util.core.ResourceUtils;
import org.apache.brooklyn.util.exceptions.Exceptions;
import org.apache.brooklyn.util.exceptions.PropagatedRuntimeException;
import org.apache.brooklyn.util.exceptions.ReferenceWithError;
@@ -124,7 +120,7 @@ public class BrooklynCatalogBundleResolvers {
}
if (prepareResult.zipFile != null) {
- input =
InputStreamSource.of(prepareResult.zipFile.f.getName(),
prepareResult.zipFile.f);
+ input =
InputStreamSource.of(prepareResult.zipFile.getFile().getName(),
prepareResult.zipFile.getFile());
} else {
return ReferenceWithError.newInstanceThrowingError(null,
new IllegalArgumentException("Bundle contents or known reference must be
supplied; " +
options.knownBundleMetadata + " not known"));
diff --git
a/core/src/main/java/org/apache/brooklyn/util/core/file/ArchiveBuilder.java
b/core/src/main/java/org/apache/brooklyn/util/core/file/ArchiveBuilder.java
index d1f1bf6761..e15f78b5dd 100644
--- a/core/src/main/java/org/apache/brooklyn/util/core/file/ArchiveBuilder.java
+++ b/core/src/main/java/org/apache/brooklyn/util/core/file/ArchiveBuilder.java
@@ -44,7 +44,6 @@ import com.google.common.collect.Iterables;
import com.google.common.collect.LinkedHashMultimap;
import com.google.common.collect.Multimap;
import com.google.common.io.Files;
-import org.apache.brooklyn.util.time.Duration;
/**
* Build a Zip or Jar archive.