This closes #131
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/761f471a Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/761f471a Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/761f471a Branch: refs/heads/master Commit: 761f471ab02362ff4a17301f99d951282b66d7d7 Parents: 74b15c0 225f182 Author: Alex Heneveld <[email protected]> Authored: Fri Aug 29 19:00:32 2014 -0400 Committer: Alex Heneveld <[email protected]> Committed: Fri Aug 29 19:00:32 2014 -0400 ---------------------------------------------------------------------- .../basic/AbstractBrooklynObjectSpec.java | 14 +- api/src/main/java/brooklyn/entity/Entity.java | 6 +- api/src/main/java/brooklyn/entity/Group.java | 1 + .../java/brooklyn/entity/basic/EntityLocal.java | 1 - .../brooklyn/entity/proxying/EntitySpec.java | 7 +- .../java/brooklyn/location/LocationSpec.java | 2 +- .../main/java/brooklyn/policy/EnricherSpec.java | 70 ++- .../main/java/brooklyn/policy/PolicySpec.java | 2 +- .../main/java/brooklyn/enricher/Enrichers.java | 288 +++++++--- .../enricher/basic/AbstractAggregator.java | 215 ++++++++ .../enricher/basic/AbstractEnricher.java | 45 ++ .../basic/AbstractMultipleSensorAggregator.java | 149 +++++ .../basic/AbstractTypeTransformingEnricher.java | 1 + .../brooklyn/enricher/basic/Aggregator.java | 174 ++---- .../java/brooklyn/enricher/basic/Combiner.java | 10 +- .../brooklyn/enricher/basic/Propagator.java | 16 +- .../basic/SensorPropagatingEnricher.java | 1 + .../brooklyn/enricher/basic/Transformer.java | 17 +- .../brooklyn/enricher/basic/UpdatingMap.java | 160 ++++++ .../entity/basic/AbstractApplication.java | 50 +- .../brooklyn/entity/basic/AbstractEntity.java | 94 ++-- .../brooklyn/entity/basic/AbstractGroup.java | 10 + .../entity/basic/AbstractGroupImpl.java | 11 + .../java/brooklyn/entity/basic/Attributes.java | 25 +- .../entity/basic/BasicApplicationImpl.java | 7 - .../java/brooklyn/entity/basic/ConfigKeys.java | 4 + .../brooklyn/entity/basic/DynamicGroup.java | 1 + .../brooklyn/entity/basic/DynamicGroupImpl.java | 2 +- .../java/brooklyn/entity/basic/Entities.java | 5 +- .../brooklyn/entity/basic/EntityAdjuncts.java | 69 +++ .../brooklyn/entity/basic/EntityConfigMap.java | 8 +- .../brooklyn/entity/basic/EntityFunctions.java | 55 +- .../java/brooklyn/entity/basic/Lifecycle.java | 66 ++- .../java/brooklyn/entity/basic/QuorumCheck.java | 77 +++ .../entity/basic/ServiceStateLogic.java | 546 +++++++++++++++++++ .../drivers/downloads/BasicDownloadTargets.java | 2 +- .../brooklyn/entity/group/DynamicCluster.java | 2 +- .../entity/group/DynamicClusterImpl.java | 87 +-- .../brooklyn/entity/group/DynamicFabric.java | 2 +- .../entity/group/DynamicFabricImpl.java | 13 +- .../brooklyn/event/basic/BasicConfigKey.java | 6 +- .../event/basic/DependentConfiguration.java | 12 +- .../brooklyn/event/basic/ListConfigKey.java | 2 +- .../java/brooklyn/event/basic/SetConfigKey.java | 2 +- .../internal/LocalSubscriptionManager.java | 6 +- .../policy/basic/AbstractEntityAdjunct.java | 19 +- .../util/task/BasicExecutionManager.java | 7 +- .../catalog/internal/MyCatalogItems.java | 4 - .../enricher/CustomAggregatingEnricherTest.java | 2 +- .../java/brooklyn/enricher/EnrichersTest.java | 107 +++- .../enricher/basic/BasicEnricherTest.java | 27 +- .../entity/BrooklynAppUnitTestSupport.java | 4 + .../basic/DependentConfigurationTest.java | 39 +- .../brooklyn/entity/basic/DynamicGroupTest.java | 2 - .../brooklyn/entity/basic/EntitySpecTest.java | 5 +- .../brooklyn/entity/basic/EntityTypeTest.java | 4 +- .../entity/basic/PolicyRegistrationTest.java | 6 +- .../entity/basic/ServiceStateLogicTest.java | 246 +++++++++ .../entity/group/DynamicClusterTest.java | 5 +- .../entity/rebind/RebindEnricherTest.java | 4 +- .../entity/rebind/RebindTestFixtureWithApp.java | 3 +- .../BrooklynMementoPersisterTestFixture.java | 2 +- .../brooklyn/event/feed/http/HttpFeedTest.java | 5 +- .../basic/MultiLocationResolverTest.java | 3 +- .../brooklyn/policy/basic/EnricherTypeTest.java | 2 +- .../EntityCleanupLongevityTestFixture.java | 2 +- .../test/entity/TestApplicationImpl.java | 5 - .../entity/TestApplicationNoEnrichersImpl.java | 44 ++ .../brooklyn/test/entity/TestClusterImpl.java | 9 + .../java/brooklyn/test/entity/TestEntity.java | 4 +- .../brooklyn/test/entity/TestEntityImpl.java | 13 +- .../test/entity/TestEntityNoEnrichersImpl.java | 32 ++ .../defining-applications/service-state.md | 73 +++ docs/use/guide/defining-applications/toc.json | 2 + .../brooklyn/demo/GlobalWebFabricExample.java | 2 +- .../demo/StandaloneQpidBrokerExample.java | 2 +- .../brooklyn/demo/CumulusRDFApplication.java | 16 +- .../demo/HighAvailabilityCassandraCluster.java | 7 +- .../java/brooklyn/demo/ResilientMongoDbApp.java | 4 +- .../java/brooklyn/demo/RiakClusterExample.java | 11 +- .../brooklyn/demo/SimpleCassandraCluster.java | 2 +- .../main/java/brooklyn/demo/StormSampleApp.java | 2 +- .../brooklyn/demo/WideAreaCassandraCluster.java | 7 +- .../brooklyn/demo/NodeJsTodoApplication.java | 2 +- .../brooklyn/demo/SingleWebServerExample.java | 2 +- .../demo/WebClusterDatabaseExample.java | 2 +- .../demo/WebClusterDatabaseExampleApp.java | 2 +- .../demo/WebClusterDatabaseExampleGroovy.groovy | 2 +- .../java/brooklyn/demo/WebClusterExample.java | 2 +- .../brooklyn/location/jclouds/JcloudsUtil.java | 2 +- .../policy/ha/MemberFailureDetectionPolicy.java | 8 +- .../policy/ha/ServiceFailureDetector.java | 409 ++++---------- .../brooklyn/policy/ha/ServiceReplacer.java | 5 +- .../brooklyn/policy/ha/ServiceRestarter.java | 5 +- .../loadbalancing/BalanceableContainer.java | 13 +- .../loadbalancing/BalanceableWorkerPool.java | 3 + .../BalanceableWorkerPoolImpl.java | 6 +- .../loadbalancing/LoadBalancingPolicy.java | 17 +- .../entity/brooklyn/BrooklynMetricsTest.java | 23 +- .../autoscaling/AutoScalerPolicyMetricTest.java | 5 +- .../autoscaling/AutoScalerPolicyTest.java | 2 +- .../brooklyn/policy/ha/HaPolicyRebindTest.java | 9 +- ...ServiceFailureDetectorStabilizationTest.java | 31 +- .../policy/ha/ServiceFailureDetectorTest.java | 207 ++++--- .../brooklyn/policy/ha/ServiceReplacerTest.java | 6 +- .../policy/ha/ServiceRestarterTest.java | 4 +- .../AbstractLoadBalancingPolicyTest.java | 2 +- .../loadbalancing/LoadBalancingPolicyTest.java | 7 +- .../loadbalancing/MockContainerEntity.java | 2 +- .../loadbalancing/MockContainerEntityImpl.java | 3 +- .../basic/AbstractSoftwareProcessDriver.java | 6 +- .../brooklyn/entity/basic/SameServerEntity.java | 6 +- .../entity/basic/SameServerEntityImpl.java | 6 + .../brooklyn/entity/basic/SoftwareProcess.java | 5 +- ...wareProcessDriverLifecycleEffectorTasks.java | 3 +- .../entity/basic/SoftwareProcessImpl.java | 51 +- .../brooklynnode/BrooklynEntityMirrorImpl.java | 11 +- .../entity/chef/ChefLifecycleEffectorTasks.java | 8 +- .../brooklyn/entity/chef/KnifeTaskFactory.java | 4 +- .../brooklyn/entity/pool/ServerPoolImpl.java | 4 +- .../software/MachineLifecycleEffectorTasks.java | 32 +- .../entity/basic/lifecycle/MyEntityImpl.java | 3 +- .../basic/lifecycle/NaiveScriptRunnerTest.java | 3 + .../basic/lifecycle/ScriptHelperTest.java | 61 ++- .../entity/java/VanillaJavaAppTest.java | 4 +- .../brooklyn/entity/pool/ServerPoolTest.java | 13 +- .../mysql/AbstractToyMySqlEntityTest.java | 4 +- .../entity/messaging/jms/JMSBrokerImpl.java | 13 +- .../entity/zookeeper/ZooKeeperEnsembleImpl.java | 22 +- .../cassandra/CassandraDatacenterImpl.java | 38 +- .../nosql/cassandra/CassandraFabricImpl.java | 8 +- .../nosql/couchbase/CouchbaseClusterImpl.java | 40 +- .../nosql/couchdb/CouchDBClusterImpl.java | 21 +- .../elasticsearch/ElasticSearchClusterImpl.java | 10 - .../nosql/mongodb/MongoDBReplicaSetImpl.java | 3 +- .../MongoDBConfigServerClusterImpl.java | 16 +- .../sharding/MongoDBShardedDeploymentImpl.java | 22 +- .../entity/nosql/riak/RiakClusterImpl.java | 10 +- .../nosql/cassandra/CassandraFabricTest.java | 5 +- .../entity/dns/AbstractGeoDnsService.java | 2 +- .../entity/dns/AbstractGeoDnsServiceImpl.java | 9 +- .../geoscaling/GeoscalingDnsServiceImpl.java | 5 +- .../entity/proxy/AbstractControllerImpl.java | 2 +- .../entity/proxy/LoadBalancerClusterImpl.java | 31 -- .../entity/proxy/nginx/NginxControllerImpl.java | 6 +- .../entity/proxy/nginx/NginxSshDriver.java | 2 +- .../webapp/ControlledDynamicWebAppCluster.java | 2 +- .../ControlledDynamicWebAppClusterImpl.java | 71 +-- .../entity/webapp/DynamicWebAppClusterImpl.java | 41 -- .../entity/webapp/jboss/JBoss7ServerImpl.java | 22 +- .../entity/webapp/jetty/Jetty6ServerImpl.java | 2 +- .../proxy/nginx/NginxRebindIntegrationTest.java | 3 +- .../ControlledDynamicWebAppClusterTest.java | 19 +- .../entity/webapp/DynamicWebAppClusterTest.java | 12 +- .../brooklyn/entity/webapp/JBossExample.groovy | 48 -- .../test/entity/TestJavaWebAppEntity.groovy | 75 --- .../test/entity/TestJavaWebAppEntity.java | 79 +++ .../camp/brooklyn/EnrichersYamlTest.java | 23 +- .../camp/brooklyn/EntitiesYamlTest.java | 2 +- .../brooklyn/JavaWebAppsIntegrationTest.java | 5 +- .../brooklyn/VanillaBashNetcatYamlTest.java | 10 +- .../BrooklynEntityMirrorIntegrationTest.java | 4 +- .../qa/longevity/webcluster/WebClusterApp.java | 2 +- .../java/brooklyn/rest/api/EffectorApi.java | 3 +- .../main/java/brooklyn/rest/api/PolicyApi.java | 1 + .../java/brooklyn/rest/api/PolicyConfigApi.java | 3 + .../rest/resources/ApplicationResource.java | 2 +- .../rest/transform/ApplicationTransformer.java | 2 +- .../rest/transform/LocationTransformer.java | 2 +- .../rest/util/BrooklynRestResourceUtils.java | 2 +- .../rest/resources/ApplicationResourceTest.java | 9 +- .../rest/testing/BrooklynRestResourceTest.java | 26 +- .../rest/testing/mocks/RestMockApp.java | 8 - .../rest/testing/mocks/RestMockAppBuilder.java | 5 +- .../testing/mocks/RestMockSimpleEntity.java | 11 +- .../util/BrooklynRestResourceUtilsTest.java | 4 - .../java/brooklyn/test/EntityTestUtils.java | 1 + .../main/java/brooklyn/test/TestUtils.groovy | 8 +- .../src/main/java/brooklyn/test/Asserts.java | 7 +- .../util/collections/CollectionFunctionals.java | 94 +++- .../brooklyn/util/collections/MutableList.java | 31 +- .../brooklyn/util/collections/MutableMap.java | 26 + .../brooklyn/util/collections/MutableSet.java | 34 +- .../java/brooklyn/util/guava/Functionals.java | 73 +++ .../java/brooklyn/util/guava/IfFunctions.java | 158 ++++++ .../collections/CollectionFunctionalsTest.java | 51 ++ .../util/collections/MutableListTest.java | 23 + .../brooklyn/util/guava/FunctionalsTest.java | 58 ++ .../brooklyn/util/guava/IfFunctionsTest.java | 101 ++++ .../guava/KeyTransformingLoadingCacheTest.java | 1 - 190 files changed, 3971 insertions(+), 1539 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/761f471a/examples/simple-web-cluster/src/main/java/brooklyn/demo/NodeJsTodoApplication.java ----------------------------------------------------------------------
