brooklyn-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From geomacy <...@git.apache.org>
Subject [GitHub] brooklyn-server issue #155: [WIP] Add DSL support for calling effectors in Y...
Date Wed, 22 Jun 2016 17:14:33 GMT
Github user geomacy commented on the issue:

    https://github.com/apache/brooklyn-server/pull/155
  
    I have pulled this and was doing some tests around it.  I noticed that given the test
YAML
    ```
    services:
    - type: org.apache.brooklyn.core.test.entity.TestEntity
      id: entity1
      brooklyn.config:
        test.confName: $brooklyn:component("entity1").effector("myEffector")
    ```
    and a test that does a getConfig, which should evaluate the DSL and invoke the effector:
    ```
            Assert.assertNull(testEntity.getConfig(TestEntity.CONF_NAME));
    ```
    the expectation is that the call history on the test entity should contain one call to
“myEffector”.  In fact it contains two, because the config item is evaluated during  validation
in construction of the entity, in a task kicked of from stack trace
    ```
    "main@1" prio=5 tid=0x1 nid=NA runnable
      java.lang.Thread.State: RUNNABLE
    at org.apache.brooklyn.util.core.task.ValueResolver.getMaybeInternal(ValueResolver.java:326)
    at org.apache.brooklyn.util.core.task.ValueResolver.getMaybe(ValueResolver.java:257)
    at org.apache.brooklyn.util.core.task.ValueResolver.get(ValueResolver.java:250)
    at org.apache.brooklyn.core.objs.AbstractConfigurationSupportInternal.getNonBlocking(AbstractConfigurationSupportInternal.java:68)
    at org.apache.brooklyn.core.config.ConfigConstraints.validateAll(ConfigConstraints.java:126)
    at org.apache.brooklyn.core.config.ConfigConstraints.getViolations(ConfigConstraints.java:115)
    at org.apache.brooklyn.core.config.ConfigConstraints.assertValid(ConfigConstraints.java:60)
    at org.apache.brooklyn.core.objs.proxy.InternalEntityFactory.validateDescendantConfig(InternalEntityFactory.java:288)
    at org.apache.brooklyn.core.objs.proxy.InternalEntityFactory.initEntityAndDescendants(InternalEntityFactory.java:306)
    at org.apache.brooklyn.core.objs.proxy.InternalEntityFactory.createEntity(InternalEntityFactory.java:188)
    at org.apache.brooklyn.core.mgmt.internal.LocalEntityManager.createEntity(LocalEntityManager.java:145)
    at org.apache.brooklyn.camp.brooklyn.AbstractYamlTest.createAndStartApplication(AbstractYamlTest.java:128)
    at org.apache.brooklyn.camp.brooklyn.AbstractYamlTest.createAndStartApplication(AbstractYamlTest.java:123)
    at org.apache.brooklyn.camp.brooklyn.AbstractYamlTest.createAndStartApplication(AbstractYamlTest.java:115)
    at org.apache.brooklyn.camp.brooklyn.EffectorsYamlTest.testWithAppEnricher(EffectorsYamlTest.java:39)
    ```
    
    I've been looking at updating the ValueResolver to be a bit smarter about this but need
to do a bit more testing on it before doing a PR.
    
     


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message