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:46 UTC
[27/39] brooklyn-server git commit: XPathHelper.getStringList fix and
formatting, hashcode/equals fixes.
XPathHelper.getStringList fix and formatting, hashcode/equals fixes.
Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/b4e56a59
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/b4e56a59
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/b4e56a59
Branch: refs/heads/master
Commit: b4e56a59c2c9811b8358ea8c4de4dc0a98567c1e
Parents: 51b0b75
Author: Geoff Macartney <ge...@cloudsoftcorp.com>
Authored: Sat Mar 18 20:46:34 2017 +0000
Committer: Geoff Macartney <ge...@cloudsoftcorp.com>
Committed: Thu Apr 20 11:20:36 2017 +0100
----------------------------------------------------------------------
.../internal/AbstractBrooklynObjectSpec.java | 14 +-
.../catalog/CatalogOsgiYamlEntityTest.java | 145 +++++++++----------
.../brooklyn/catalog/CatalogYamlEntityTest.java | 6 +-
.../brooklyn/catalog/CatalogYamlRebindTest.java | 17 ---
.../internal/CatalogItemDtoAbstract.java | 4 +-
.../BrooklynMementoPersisterToObjectStore.java | 2 +-
6 files changed, 85 insertions(+), 103 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/api/src/main/java/org/apache/brooklyn/api/internal/AbstractBrooklynObjectSpec.java
----------------------------------------------------------------------
diff --git a/api/src/main/java/org/apache/brooklyn/api/internal/AbstractBrooklynObjectSpec.java b/api/src/main/java/org/apache/brooklyn/api/internal/AbstractBrooklynObjectSpec.java
index 10acfe4..12a8e73 100644
--- a/api/src/main/java/org/apache/brooklyn/api/internal/AbstractBrooklynObjectSpec.java
+++ b/api/src/main/java/org/apache/brooklyn/api/internal/AbstractBrooklynObjectSpec.java
@@ -90,9 +90,9 @@ public abstract class AbstractBrooklynObjectSpec<T, SpecT extends AbstractBrookl
@Override
public String toString() {
return MoreObjects.toStringHelper(this).omitNullValues()
- .add("type", type)
- .add("displayName", displayName)
- .toString();
+ .add("type", type)
+ .add("displayName", displayName)
+ .toString();
}
protected abstract void checkValidType(Class<? extends T> type);
@@ -223,9 +223,9 @@ public abstract class AbstractBrooklynObjectSpec<T, SpecT extends AbstractBrookl
current.removeAll(params);
return parametersReplace(ImmutableList.<SpecParameter<?>>builder()
- .addAll(params)
- .addAll(current)
- .build());
+ .addAll(params)
+ .addAll(current)
+ .build());
}
/**
@@ -328,7 +328,7 @@ public abstract class AbstractBrooklynObjectSpec<T, SpecT extends AbstractBrookl
public boolean equals(Object obj) {
if (obj == null) return false;
if (!obj.getClass().equals(getClass())) return false;
- AbstractBrooklynObjectSpec<?, ?> other = (AbstractBrooklynObjectSpec<?, ?>) obj;
+ AbstractBrooklynObjectSpec<?,?> other = (AbstractBrooklynObjectSpec<?,?>) obj;
if (!Objects.equal(getDisplayName(), other.getDisplayName())) return false;
if (!Objects.equal(getCatalogItemId(), other.getCatalogItemId())) return false;
if (!Objects.equal(getCatalogItemIdSearchPath(), other.getCatalogItemIdSearchPath())) return false;
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogOsgiYamlEntityTest.java
----------------------------------------------------------------------
diff --git a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogOsgiYamlEntityTest.java b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogOsgiYamlEntityTest.java
index b0bf747..7b726bc 100644
--- a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogOsgiYamlEntityTest.java
+++ b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogOsgiYamlEntityTest.java
@@ -46,6 +46,7 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.google.common.base.Joiner;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
public class CatalogOsgiYamlEntityTest extends AbstractYamlTest {
@@ -745,81 +746,77 @@ public class CatalogOsgiYamlEntityTest extends AbstractYamlTest {
deleteCatalogEntity(symbolicNameOuter);
}
+ @Test
+ public void testCatalogItemIdInReferencedItems() throws Exception {
+ TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_PATH);
+
+ String symbolicNameInner = "my.catalog.app.id.inner";
+ String symbolicNameOuter = "my.catalog.app.id.outer";
+ addCatalogItems(
+ "brooklyn.catalog:",
+ " version: " + TEST_VERSION,
+ " items:",
+ " - id: " + symbolicNameInner,
+ " name: My Catalog App",
+ " description: My description",
+ " icon_url: classpath://path/to/myicon.jpg",
+ " brooklyn.libraries:",
+ " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_URL,
+ " item: " + SIMPLE_ENTITY_TYPE,
+ " - id: " + symbolicNameOuter,
+ " item: " + symbolicNameInner);
+
+ String yaml = "name: " + symbolicNameOuter + "\n" +
+ "services: \n" +
+ " - serviceType: " + ver(symbolicNameOuter);
+
+ Entity app = createAndStartApplication(yaml);
+ Entity entity = app.getChildren().iterator().next();
+ assertEquals(entity.getCatalogItemId(), ver(symbolicNameOuter));
+ assertEquals(entity.getCatalogItemIdSearchPath(), ImmutableList.of(ver(symbolicNameInner)),
+ "should have just " + symbolicNameInner + " in search path");
+
+ deleteCatalogEntity(symbolicNameInner);
+ deleteCatalogEntity(symbolicNameOuter);
+ }
+ @Test
+ public void testDeepCatalogItemCanLoadResources() throws Exception {
+ TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_PATH);
+ TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_MORE_ENTITIES_0_1_0_PATH);
+
+ String symbolicNameInner = "my.catalog.app.id.inner";
+ String symbolicNameFiller = "my.catalog.app.id.filler";
+ String symbolicNameOuter = "my.catalog.app.id.outer";
+ addCatalogItems(
+ "brooklyn.catalog:",
+ " version: " + TEST_VERSION,
+ " items:",
+ " - id: " + symbolicNameInner,
+ " name: My Catalog App",
+ " brooklyn.libraries:",
+ " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_URL,
+ " item: " + SIMPLE_ENTITY_TYPE,
+ " - id: " + symbolicNameFiller,
+ " name: Filler App",
+ " brooklyn.libraries:",
+ " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_MORE_ENTITIES_0_1_0_URL,
+ " item: " + symbolicNameInner,
+ " - id: " + symbolicNameOuter,
+ " item: " + symbolicNameFiller);
+
+ String yaml = "name: " + symbolicNameOuter + "\n" +
+ "services: \n" +
+ " - serviceType: "+ver(symbolicNameOuter);
+ Entity app = createAndStartApplication(yaml);
+ Entity entity = app.getChildren().iterator().next();
+
+ final String catalogBom = ResourceUtils.create(entity).getResourceAsString("classpath://" + MORE_ENTITIES_POM_PROPERTIES_PATH);
+ assertTrue(catalogBom.contains("artifactId=brooklyn-test-osgi-more-entities"));
- @Test
- public void testDeepCatalogItemCanLoadResources() throws Exception {
- TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_PATH);
- TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_MORE_ENTITIES_0_1_0_PATH);
-
- String symbolicNameInner = "my.catalog.app.id.inner";
- String symbolicNameFiller = "my.catalog.app.id.filler";
- String symbolicNameOuter = "my.catalog.app.id.outer";
- addCatalogItems(
- "brooklyn.catalog:",
- " version: " + TEST_VERSION,
- " items:",
- " - id: " + symbolicNameInner,
- " name: My Catalog App",
- " brooklyn.libraries:",
- " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_URL,
- " item: " + SIMPLE_ENTITY_TYPE,
- " - id: " + symbolicNameFiller,
- " name: Filler App",
- " brooklyn.libraries:",
- " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_MORE_ENTITIES_0_1_0_URL,
- " item: " + symbolicNameInner,
- " - id: " + symbolicNameOuter,
- " item: " + symbolicNameFiller);
-
- String yaml = "name: " + symbolicNameOuter + "\n" +
- "services: \n" +
- " - serviceType: "+ver(symbolicNameOuter);
- Entity app = createAndStartApplication(yaml);
- Entity entity = app.getChildren().iterator().next();
-
- final String catalogBom = ResourceUtils.create(entity).getResourceAsString("classpath://" + MORE_ENTITIES_POM_PROPERTIES_PATH);
- assertTrue(catalogBom.contains("artifactId=brooklyn-test-osgi-more-entities"));
-
- deleteCatalogEntity(symbolicNameOuter);
- deleteCatalogEntity(symbolicNameFiller);
- deleteCatalogEntity(symbolicNameInner);
- }
-
- @Test
- public void testCatalogItemIdInReferencedItems() throws Exception {
- TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_PATH);
-
- String symbolicNameInner = "my.catalog.app.id.inner";
- String symbolicNameOuter = "my.catalog.app.id.outer";
- addCatalogItems(
- "brooklyn.catalog:",
- " version: " + TEST_VERSION,
- " items:",
- " - id: " + symbolicNameInner,
- " name: My Catalog App",
- " description: My description",
- " icon_url: classpath://path/to/myicon.jpg",
- " brooklyn.libraries:",
- " - url: " + OsgiStandaloneTest.BROOKLYN_TEST_OSGI_ENTITIES_URL,
- " item: " + SIMPLE_ENTITY_TYPE,
- " - id: " + symbolicNameOuter,
- " item: " + symbolicNameInner);
-
- String yaml = "name: " + symbolicNameOuter + "\n" +
- "services: \n" +
- " - serviceType: "+ver(symbolicNameOuter);
-
- Entity app = createAndStartApplication(yaml);
-
- Entity entity = app.getChildren().iterator().next();
- assertEquals(entity.getCatalogItemId(), ver(symbolicNameOuter));
- assertEquals(entity.getCatalogItemIdSearchPath().size(), 1, "should have exactly one item in search path");
- assertEquals(entity.getCatalogItemIdSearchPath().get(0), ver(symbolicNameInner),
- "should have " + symbolicNameInner + " in search path");
-
- deleteCatalogEntity(symbolicNameInner);
- deleteCatalogEntity(symbolicNameOuter);
- }
+ deleteCatalogEntity(symbolicNameOuter);
+ deleteCatalogEntity(symbolicNameFiller);
+ deleteCatalogEntity(symbolicNameInner);
+ }
private void registerAndLaunchAndAssertSimpleEntity(String symbolicName, String serviceType) throws Exception {
addCatalogOSGiEntity(symbolicName, serviceType);
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
----------------------------------------------------------------------
diff --git a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
index b3264f7..847e461 100644
--- a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
+++ b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlEntityTest.java
@@ -45,6 +45,7 @@ import org.testng.Assert;
import org.testng.annotations.Test;
import com.google.common.base.Joiner;
+import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
@@ -643,9 +644,8 @@ public class CatalogYamlEntityTest extends AbstractYamlTest {
Entity entity = app.getChildren().iterator().next();
assertEquals(entity.getCatalogItemId(), ver(symbolicNameOuter));
- assertEquals(entity.getCatalogItemIdSearchPath().size(), 1, "should have exactly one item in search path");
- assertEquals(entity.getCatalogItemIdSearchPath().get(0), ver(symbolicNameInner),
- "should have " + symbolicNameInner + " in search path");
+ assertEquals(entity.getCatalogItemIdSearchPath(), ImmutableList.of(ver(symbolicNameInner)),
+ "should have just " + symbolicNameInner + " in search path");
deleteCatalogEntity(symbolicNameInner);
deleteCatalogEntity(symbolicNameOuter);
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlRebindTest.java
----------------------------------------------------------------------
diff --git a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlRebindTest.java b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlRebindTest.java
index 8daf21c..c4af503 100644
--- a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlRebindTest.java
+++ b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/catalog/CatalogYamlRebindTest.java
@@ -25,24 +25,13 @@ import static org.testng.Assert.assertNotNull;
import static org.testng.Assert.assertNull;
import static org.testng.Assert.assertTrue;
-import java.io.StringReader;
-import java.io.StringWriter;
import java.util.List;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
import org.apache.brooklyn.api.catalog.CatalogItem;
import org.apache.brooklyn.api.entity.Entity;
import org.apache.brooklyn.api.mgmt.rebind.mementos.BrooklynMementoPersister;
import org.apache.brooklyn.api.mgmt.rebind.mementos.BrooklynMementoRawData;
import org.apache.brooklyn.api.objs.BrooklynObjectType;
-import org.apache.brooklyn.api.policy.Policy;
-import org.apache.brooklyn.api.sensor.Enricher;
import org.apache.brooklyn.api.typereg.RegisteredType;
import org.apache.brooklyn.camp.brooklyn.AbstractYamlRebindTest;
import org.apache.brooklyn.core.BrooklynFeatureEnablement;
@@ -68,16 +57,10 @@ import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.common.base.Predicates;
-import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
public class CatalogYamlRebindTest extends AbstractYamlRebindTest {
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogItemDtoAbstract.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogItemDtoAbstract.java b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogItemDtoAbstract.java
index 0bae32d..5aec768 100644
--- a/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogItemDtoAbstract.java
+++ b/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogItemDtoAbstract.java
@@ -191,7 +191,8 @@ public abstract class CatalogItemDtoAbstract<T, SpecT> extends AbstractBrooklynO
@Override
public int hashCode() {
- return Objects.hashCode(symbolicName, planYaml, javaType, nullIfEmpty(libraries), version, getCatalogItemId());
+ return Objects.hashCode(symbolicName, planYaml, javaType, nullIfEmpty(libraries), version, getCatalogItemId(),
+ getCatalogItemIdSearchPath());
}
@Override
@@ -205,6 +206,7 @@ public abstract class CatalogItemDtoAbstract<T, SpecT> extends AbstractBrooklynO
if (!Objects.equal(javaType, other.javaType)) return false;
if (!Objects.equal(nullIfEmpty(libraries), nullIfEmpty(other.libraries))) return false;
if (!Objects.equal(getCatalogItemId(), other.getCatalogItemId())) return false;
+ if (!Objects.equal(getCatalogItemIdSearchPath(), other.getCatalogItemIdSearchPath())) return false;
if (!Objects.equal(version, other.version)) return false;
if (!Objects.equal(deprecated, other.deprecated)) return false;
if (!Objects.equal(description, other.description)) return false;
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/b4e56a59/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/BrooklynMementoPersisterToObjectStore.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/BrooklynMementoPersisterToObjectStore.java b/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/BrooklynMementoPersisterToObjectStore.java
index 5aace6d..2e0b8bf 100644
--- a/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/BrooklynMementoPersisterToObjectStore.java
+++ b/core/src/main/java/org/apache/brooklyn/core/mgmt/persist/BrooklynMementoPersisterToObjectStore.java
@@ -350,7 +350,7 @@ public class BrooklynMementoPersisterToObjectStore implements BrooklynMementoPer
private List<String> getStringList(String innerPath) {
List<String> result = MutableList.of();
final NodeList nodeList =
- (NodeList) XmlUtil.xpathHandlingIllegalChars(contents, prefix + innerPath + "/string", XPathConstants.NODESET);
+ (NodeList) XmlUtil.xpathHandlingIllegalChars(contents, prefix + innerPath + "//string", XPathConstants.NODESET);
for(int c = 0 ; c < nodeList.getLength() ; c++) {
result.add(nodeList.item(c).getFirstChild().getNodeValue());
}