Repository: brooklyn-server Updated Branches: refs/heads/master 50d5beeed -> c95d6ff86
Do not inherit entity config defaultDisplayName Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/dc2e14e5 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/dc2e14e5 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/dc2e14e5 Branch: refs/heads/master Commit: dc2e14e596674e62a179edfd1fe883a897885d54 Parents: 9238a10 Author: Valentin Aitken <[email protected]> Authored: Sat Aug 27 18:11:32 2016 +0300 Committer: Valentin Aitken <[email protected]> Committed: Sat Aug 27 18:24:05 2016 +0300 ---------------------------------------------------------------------- .../brooklyn/core/entity/AbstractEntity.java | 4 +++- .../brooklyn/core/entity/EntityNameTest.java | 21 ++++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/dc2e14e5/core/src/main/java/org/apache/brooklyn/core/entity/AbstractEntity.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/brooklyn/core/entity/AbstractEntity.java b/core/src/main/java/org/apache/brooklyn/core/entity/AbstractEntity.java index 49c1967..dc70034 100644 --- a/core/src/main/java/org/apache/brooklyn/core/entity/AbstractEntity.java +++ b/core/src/main/java/org/apache/brooklyn/core/entity/AbstractEntity.java @@ -27,6 +27,8 @@ import java.util.List; import java.util.Map; import java.util.Set; +import org.apache.brooklyn.config.ConfigInheritance; +import org.apache.brooklyn.core.config.BasicConfigKey; import org.apache.commons.lang3.builder.EqualsBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -154,7 +156,7 @@ public abstract class AbstractEntity extends AbstractBrooklynObject implements E /** * The default name to use for this entity, if not explicitly overridden. */ - public static final ConfigKey<String> DEFAULT_DISPLAY_NAME = ConfigKeys.newStringConfigKey("defaultDisplayName"); + public static final ConfigKey<String> DEFAULT_DISPLAY_NAME = BasicConfigKey.builder(String.class).name("defaultDisplayName").parentInheritance(ConfigInheritance.NONE).build(); public static final BasicNotificationSensor<Location> LOCATION_ADDED = new BasicNotificationSensor<Location>( Location.class, "entity.location.added", "Location dynamically added to entity"); http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/dc2e14e5/core/src/test/java/org/apache/brooklyn/core/entity/EntityNameTest.java ---------------------------------------------------------------------- diff --git a/core/src/test/java/org/apache/brooklyn/core/entity/EntityNameTest.java b/core/src/test/java/org/apache/brooklyn/core/entity/EntityNameTest.java index 1800095..ca94807 100644 --- a/core/src/test/java/org/apache/brooklyn/core/entity/EntityNameTest.java +++ b/core/src/test/java/org/apache/brooklyn/core/entity/EntityNameTest.java @@ -20,12 +20,15 @@ package org.apache.brooklyn.core.entity; import static org.testng.Assert.assertEquals; +import com.google.common.collect.Iterables; +import org.apache.brooklyn.api.entity.Entity; import org.apache.brooklyn.api.entity.EntitySpec; import org.apache.brooklyn.config.ConfigKey; import org.apache.brooklyn.core.entity.factory.ApplicationBuilder; import org.apache.brooklyn.core.test.BrooklynAppUnitTestSupport; import org.apache.brooklyn.core.test.entity.TestApplication; import org.apache.brooklyn.core.test.entity.TestEntity; +import org.apache.brooklyn.entity.stock.BasicApplication; import org.apache.brooklyn.util.core.task.DeferredSupplier; import org.testng.annotations.Test; @@ -70,17 +73,27 @@ public class EntityNameTest extends BrooklynAppUnitTestSupport { TestEntity entity = app.addChild(spec); assertEquals(entity.getDisplayName(), "myDefaultName"); } - - + @Test public void testAppUsesDefaultDisplayName() { EntitySpec<TestApplication> appSpec = EntitySpec.create(TestApplication.class) .configure(AbstractApplication.DEFAULT_DISPLAY_NAME, "myDefaultName"); TestApplication app2 = ApplicationBuilder.newManagedApp(appSpec, mgmt); - + assertEquals(app2.getDisplayName(), "myDefaultName"); } - + + @Test + public void testAppUsesEntityName() { + EntitySpec<BasicApplication> appSpec = EntitySpec.create(BasicApplication.class) + .configure(AbstractApplication.DEFAULT_DISPLAY_NAME, "myDefaultName").child(EntitySpec.create(TestApplication.class)); + BasicApplication app2 = ApplicationBuilder.newManagedApp(appSpec, mgmt); + + assertEquals(app2.getDisplayName(), "myDefaultName"); + Entity childEntity = Iterables.getFirst(app2.getChildren(), null); + assertEquals(childEntity.getDisplayName(), TestApplication.class.getSimpleName() + ":" + childEntity.getId().substring(0,4)); + } + @Test public void testAppUsesDisplayNameOverDefaultName() { EntitySpec<TestApplication> appSpec = EntitySpec.create(TestApplication.class)
