You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2017/04/21 22:55:25 UTC
[06/39] brooklyn-server git commit: Osgi loader change
Osgi loader change
Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/5d0fe63c
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/5d0fe63c
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/5d0fe63c
Branch: refs/heads/master
Commit: 5d0fe63cec36a8f478b4e666e0cb769462232fe5
Parents: eb4992e
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Authored: Wed Sep 14 14:44:14 2016 +0100
Committer: Geoff Macartney <ge...@cloudsoftcorp.com>
Committed: Thu Apr 20 11:18:42 2017 +0100
----------------------------------------------------------------------
.../apache/brooklyn/core/catalog/internal/CatalogUtils.java | 8 ++++++++
.../classloading/BrooklynClassLoadingContextSequential.java | 7 +++++--
2 files changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/5d0fe63c/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
index 8306b71..8b7555b 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogUtils.java
@@ -19,6 +19,7 @@
package org.apache.brooklyn.core.catalog.internal;
import java.util.Collection;
+import java.util.Iterator;
import javax.annotation.Nullable;
@@ -171,6 +172,13 @@ public class CatalogUtils {
public static String getCatalogItemIdFromLoader(BrooklynClassLoadingContext loader) {
if (loader instanceof OsgiBrooklynClassLoadingContext) {
return ((OsgiBrooklynClassLoadingContext)loader).getCatalogItemId();
+ } else if (loader instanceof BrooklynClassLoadingContextSequential) {
+ final Iterator<BrooklynClassLoadingContext> iterator = ((BrooklynClassLoadingContextSequential) loader).getPrimaries().iterator();
+ if (iterator.hasNext()) {
+ BrooklynClassLoadingContext osgiLoader = iterator.next();
+ return getCatalogItemIdFromLoader(osgiLoader);
+ }
+ else return null;
} else {
return null;
}
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/5d0fe63c/core/src/main/java/org/apache/brooklyn/core/mgmt/classloading/BrooklynClassLoadingContextSequential.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/mgmt/classloading/BrooklynClassLoadingContextSequential.java b/core/src/main/java/org/apache/brooklyn/core/mgmt/classloading/BrooklynClassLoadingContextSequential.java
index 989cacc..ee55ae9 100644
--- a/core/src/main/java/org/apache/brooklyn/core/mgmt/classloading/BrooklynClassLoadingContextSequential.java
+++ b/core/src/main/java/org/apache/brooklyn/core/mgmt/classloading/BrooklynClassLoadingContextSequential.java
@@ -38,7 +38,7 @@ import com.google.common.collect.Lists;
public final class BrooklynClassLoadingContextSequential extends AbstractBrooklynClassLoadingContext {
private static final Logger log = LoggerFactory.getLogger(BrooklynClassLoadingContextSequential.class);
-
+
private final List<BrooklynClassLoadingContext> primaries = MutableList.<BrooklynClassLoadingContext>of();
// secondaries used to put java classloader last
private final Set<BrooklynClassLoadingContext> secondaries = MutableSet.<BrooklynClassLoadingContext>of();
@@ -132,5 +132,8 @@ public final class BrooklynClassLoadingContextSequential extends AbstractBrookly
if (!Objects.equal(secondaries, ((BrooklynClassLoadingContextSequential)obj).secondaries)) return false;
return true;
}
-
+
+ public List<BrooklynClassLoadingContext> getPrimaries() {
+ return primaries;
+ }
}