[BROOKLYN-162] Package rename in ./api/management
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/f7f03580 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/f7f03580 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/f7f03580 Branch: refs/heads/master Commit: f7f0358084abcefdff105d1747b9745b709c877a Parents: 88b9219 Author: Hadrian Zbarcea <[email protected]> Authored: Tue Aug 11 23:02:02 2015 -0400 Committer: Hadrian Zbarcea <[email protected]> Committed: Tue Aug 11 23:02:02 2015 -0400 ---------------------------------------------------------------------- .../main/java/brooklyn/entity/Application.java | 2 +- api/src/main/java/brooklyn/entity/Entity.java | 2 +- .../java/brooklyn/entity/basic/EntityLocal.java | 9 +- .../brooklyn/entity/proxying/EntitySpec.java | 2 +- .../brooklyn/entity/rebind/RebindManager.java | 2 +- .../brooklyn/entity/trait/Configurable.java | 3 +- .../brooklyn/location/LocationDefinition.java | 2 +- .../brooklyn/location/LocationResolver.java | 4 +- .../java/brooklyn/location/LocationSpec.java | 2 +- .../brooklyn/management/AccessController.java | 65 ----- .../java/brooklyn/management/EntityManager.java | 127 --------- .../brooklyn/management/ExecutionContext.java | 67 ----- .../brooklyn/management/ExecutionManager.java | 117 --------- .../brooklyn/management/HasTaskChildren.java | 39 --- .../brooklyn/management/LocationManager.java | 87 ------- .../brooklyn/management/ManagementContext.java | 254 ------------------ .../management/SubscriptionContext.java | 66 ----- .../brooklyn/management/SubscriptionHandle.java | 27 -- .../management/SubscriptionManager.java | 112 -------- api/src/main/java/brooklyn/management/Task.java | 128 ---------- .../java/brooklyn/management/TaskAdaptable.java | 24 -- .../java/brooklyn/management/TaskFactory.java | 25 -- .../management/TaskQueueingContext.java | 62 ----- .../java/brooklyn/management/TaskWrapper.java | 28 -- .../BrooklynClassLoadingContext.java | 50 ---- .../entitlement/EntitlementClass.java | 27 -- .../entitlement/EntitlementContext.java | 24 -- .../entitlement/EntitlementManager.java | 45 ---- .../management/ha/HighAvailabilityManager.java | 129 ---------- .../management/ha/HighAvailabilityMode.java | 67 ----- .../management/ha/ManagementNodeState.java | 72 ------ .../management/ha/ManagementNodeSyncRecord.java | 62 ----- .../ha/ManagementPlaneSyncRecord.java | 51 ---- .../ha/ManagementPlaneSyncRecordPersister.java | 69 ----- .../brooklyn/management/ha/MementoCopyMode.java | 29 --- .../brooklyn/management/AccessController.java | 65 +++++ .../brooklyn/management/EntityManager.java | 127 +++++++++ .../brooklyn/management/ExecutionContext.java | 67 +++++ .../brooklyn/management/ExecutionManager.java | 117 +++++++++ .../brooklyn/management/HasTaskChildren.java | 39 +++ .../brooklyn/management/LocationManager.java | 87 +++++++ .../brooklyn/management/ManagementContext.java | 256 +++++++++++++++++++ .../management/SubscriptionContext.java | 66 +++++ .../brooklyn/management/SubscriptionHandle.java | 27 ++ .../management/SubscriptionManager.java | 112 ++++++++ .../org/apache/brooklyn/management/Task.java | 128 ++++++++++ .../brooklyn/management/TaskAdaptable.java | 24 ++ .../apache/brooklyn/management/TaskFactory.java | 25 ++ .../management/TaskQueueingContext.java | 62 +++++ .../apache/brooklyn/management/TaskWrapper.java | 28 ++ .../BrooklynClassLoadingContext.java | 51 ++++ .../entitlement/EntitlementClass.java | 27 ++ .../entitlement/EntitlementContext.java | 24 ++ .../entitlement/EntitlementManager.java | 45 ++++ .../management/ha/HighAvailabilityManager.java | 129 ++++++++++ .../management/ha/HighAvailabilityMode.java | 67 +++++ .../management/ha/ManagementNodeState.java | 72 ++++++ .../management/ha/ManagementNodeSyncRecord.java | 62 +++++ .../ha/ManagementPlaneSyncRecord.java | 51 ++++ .../ha/ManagementPlaneSyncRecordPersister.java | 69 +++++ .../brooklyn/management/ha/MementoCopyMode.java | 29 +++ .../mementos/BrooklynMementoPersister.java | 2 +- .../apache/brooklyn/policy/EnricherSpec.java | 2 +- .../org/apache/brooklyn/policy/PolicySpec.java | 2 +- .../src/main/java/brooklyn/BrooklynVersion.java | 4 +- .../brooklyn/basic/AbstractBrooklynObject.java | 2 +- .../brooklyn/basic/BasicConfigurableObject.java | 5 +- .../basic/internal/ApiObjectsFactoryImpl.java | 3 +- .../api/AssemblyTemplateSpecInstantiator.java | 3 +- .../api/HasBrooklynManagementContext.java | 2 +- .../brooklyn/catalog/CatalogPredicates.java | 2 +- .../catalog/internal/BasicBrooklynCatalog.java | 4 +- .../brooklyn/catalog/internal/CatalogDo.java | 2 +- .../catalog/internal/CatalogInitialization.java | 6 +- .../catalog/internal/CatalogItemDo.java | 2 +- .../brooklyn/catalog/internal/CatalogUtils.java | 6 +- .../brooklyn/config/BrooklynServerConfig.java | 2 +- .../brooklyn/config/BrooklynServerPaths.java | 2 +- .../config/BrooklynServiceAttributes.java | 3 +- .../brooklyn/entity/basic/AbstractEffector.java | 2 +- .../brooklyn/entity/basic/AbstractEntity.java | 12 +- .../entity/basic/ApplicationBuilder.java | 4 +- .../java/brooklyn/entity/basic/Attributes.java | 3 +- .../entity/basic/BasicStartableImpl.java | 2 +- .../entity/basic/BrooklynShutdownHooks.java | 4 +- .../brooklyn/entity/basic/BrooklynTaskTags.java | 6 +- .../brooklyn/entity/basic/DynamicGroupImpl.java | 2 +- .../java/brooklyn/entity/basic/Entities.java | 12 +- .../brooklyn/entity/basic/EntityConfigMap.java | 4 +- .../brooklyn/entity/basic/EntityFunctions.java | 3 +- .../brooklyn/entity/basic/EntityInternal.java | 6 +- .../java/brooklyn/entity/basic/EntityTasks.java | 3 +- .../basic/EntityTransientCopyInternal.java | 4 +- .../brooklyn/entity/effector/EffectorBody.java | 7 +- .../brooklyn/entity/effector/EffectorTasks.java | 4 +- .../brooklyn/entity/effector/Effectors.java | 2 +- .../entity/group/DynamicClusterImpl.java | 2 +- .../entity/group/DynamicFabricImpl.java | 2 +- .../entity/group/DynamicRegionsFabricImpl.java | 2 +- .../entity/group/QuarantineGroupImpl.java | 2 +- .../entity/proxying/EntityProxyImpl.java | 4 +- .../entity/proxying/InternalEntityFactory.java | 2 +- .../proxying/InternalLocationFactory.java | 3 +- .../entity/proxying/InternalPolicyFactory.java | 2 +- .../rebind/ActivePartialRebindIteration.java | 2 +- .../rebind/InitialFullRebindIteration.java | 2 +- .../rebind/PeriodicDeltaChangeListener.java | 4 +- .../entity/rebind/RebindContextImpl.java | 2 +- .../rebind/RebindContextLookupContext.java | 2 +- .../brooklyn/entity/rebind/RebindIteration.java | 4 +- .../entity/rebind/RebindManagerImpl.java | 8 +- .../entity/rebind/dto/MementosGenerators.java | 4 +- .../persister/BrooklynPersistenceUtils.java | 10 +- .../rebind/persister/FileBasedObjectStore.java | 4 +- .../rebind/persister/MementoSerializer.java | 3 +- .../persister/PersistenceObjectStore.java | 5 +- .../rebind/persister/XmlMementoSerializer.java | 6 +- .../dto/BasicManagementNodeSyncRecord.java | 4 +- .../dto/ManagementPlaneSyncRecordImpl.java | 5 +- .../brooklyn/entity/trait/StartableMethods.java | 2 +- .../basic/AbstractCollectionConfigKey.java | 4 +- .../basic/AbstractStructuredConfigKey.java | 3 +- .../basic/AttributeSensorAndConfigKey.java | 2 +- .../basic/BasicAttributeSensorAndConfigKey.java | 3 +- .../brooklyn/event/basic/BasicConfigKey.java | 2 +- .../event/basic/DependentConfiguration.java | 10 +- .../java/brooklyn/event/basic/MapConfigKey.java | 2 +- .../basic/PortAttributeSensorAndConfigKey.java | 2 +- .../event/basic/SubElementConfigKey.java | 3 +- ...platedStringAttributeSensorAndConfigKey.java | 2 +- .../brooklyn/event/feed/ConfigToAttributes.java | 3 +- .../main/java/brooklyn/event/feed/Poller.java | 2 +- .../brooklyn/event/feed/shell/ShellFeed.java | 2 +- .../windows/WindowsPerformanceCounterFeed.java | 2 +- .../internal/BrooklynFeatureEnablement.java | 2 +- .../location/basic/AbstractLocation.java | 2 +- .../basic/AbstractLocationResolver.java | 2 +- .../location/basic/BasicLocationRegistry.java | 4 +- .../location/basic/BasicMachineDetails.java | 2 +- .../location/basic/CatalogLocationResolver.java | 4 +- .../basic/DefinedLocationByIdResolver.java | 2 +- .../FixedListMachineProvisioningLocation.java | 2 +- .../location/basic/LocationConfigUtils.java | 2 +- .../location/basic/LocationInternal.java | 2 +- .../java/brooklyn/location/basic/Locations.java | 4 +- .../brooklyn/location/basic/MultiLocation.java | 3 +- .../location/basic/MultiLocationResolver.java | 2 +- .../location/basic/NamedLocationResolver.java | 2 +- .../location/basic/SshMachineLocation.java | 2 +- .../AbstractAvailabilityZoneExtension.java | 3 +- .../management/ManagementContextInjectable.java | 2 +- .../AbstractBrooklynClassLoadingContext.java | 4 +- .../BrooklynClassLoadingContextSequential.java | 3 +- ...ssLoaderFromBrooklynClassLoadingContext.java | 2 + .../JavaBrooklynClassLoadingContext.java | 3 +- .../OsgiBrooklynClassLoadingContext.java | 5 +- .../BasicEntitlementClassDefinition.java | 2 + .../entitlement/EntitlementManagerAdapter.java | 3 + .../entitlement/EntitlementPredicates.java | 3 + .../management/entitlement/Entitlements.java | 7 +- .../entitlement/NotEntitledException.java | 3 + .../entitlement/PerUserEntitlementManager.java | 3 + .../PerUserEntitlementManagerWithDefault.java | 2 + .../entitlement/WebEntitlementContext.java | 2 + .../management/ha/BasicMasterChooser.java | 3 + .../ha/HighAvailabilityManagerImpl.java | 11 +- .../ha/ManagementPlaneSyncRecordDeltaImpl.java | 3 +- ...ntPlaneSyncRecordPersisterToObjectStore.java | 7 +- .../brooklyn/management/ha/MasterChooser.java | 3 + .../brooklyn/management/ha/OsgiManager.java | 4 +- .../internal/AbstractManagementContext.java | 16 +- .../internal/AbstractSubscriptionManager.java | 4 +- .../management/internal/AccessManager.java | 2 +- .../internal/AsyncCollectionChangeAdapter.java | 2 +- .../internal/BasicSubscriptionContext.java | 6 +- .../internal/BrooklynGarbageCollector.java | 4 +- .../management/internal/EffectorUtils.java | 2 +- .../internal/EntityManagementSupport.java | 8 +- .../internal/EntityManagementUtils.java | 6 +- .../internal/EntityManagerInternal.java | 3 +- .../management/internal/LocalAccessManager.java | 3 +- .../management/internal/LocalEntityManager.java | 4 +- .../internal/LocalLocationManager.java | 2 +- .../internal/LocalManagementContext.java | 14 +- .../internal/LocalSubscriptionManager.java | 6 +- .../management/internal/LocalUsageManager.java | 2 +- .../internal/LocationManagerInternal.java | 3 +- .../internal/ManagementContextInternal.java | 5 +- .../internal/ManagementTransitionInfo.java | 2 +- .../internal/NonDeploymentAccessManager.java | 2 +- .../internal/NonDeploymentEntityManager.java | 2 +- .../internal/NonDeploymentLocationManager.java | 3 +- .../NonDeploymentManagementContext.java | 26 +- .../internal/QueueingSubscriptionManager.java | 3 +- .../management/internal/Subscription.java | 3 +- .../internal/SubscriptionTracker.java | 5 +- .../policy/basic/AbstractEntityAdjunct.java | 8 +- .../brooklyn/policy/basic/ConfigMapImpl.java | 2 +- .../main/java/brooklyn/util/ResourceUtils.java | 4 +- .../java/brooklyn/util/file/ArchiveTasks.java | 5 +- .../util/internal/ConfigKeySelfExtracting.java | 3 +- .../brooklyn/util/mutex/SemaphoreForTasks.java | 5 +- .../util/task/AbstractExecutionContext.java | 8 +- .../util/task/BasicExecutionContext.java | 12 +- .../util/task/BasicExecutionManager.java | 8 +- .../main/java/brooklyn/util/task/BasicTask.java | 4 +- .../java/brooklyn/util/task/CompoundTask.java | 6 +- .../util/task/DynamicSequentialTask.java | 6 +- .../java/brooklyn/util/task/DynamicTasks.java | 22 +- .../brooklyn/util/task/ExecutionListener.java | 2 +- .../java/brooklyn/util/task/ForwardingTask.java | 3 +- .../java/brooklyn/util/task/ParallelTask.java | 3 +- .../java/brooklyn/util/task/ScheduledTask.java | 3 +- .../java/brooklyn/util/task/SequentialTask.java | 2 +- .../util/task/SingleThreadedScheduler.java | 3 +- .../java/brooklyn/util/task/TaskBuilder.java | 9 +- .../java/brooklyn/util/task/TaskInternal.java | 5 +- .../java/brooklyn/util/task/TaskScheduler.java | 2 +- .../main/java/brooklyn/util/task/TaskTags.java | 4 +- .../src/main/java/brooklyn/util/task/Tasks.java | 12 +- .../java/brooklyn/util/task/ValueResolver.java | 6 +- .../util/task/ssh/SshFetchTaskFactory.java | 2 +- .../util/task/ssh/SshFetchTaskWrapper.java | 4 +- .../util/task/ssh/SshPutTaskFactory.java | 2 +- .../util/task/ssh/SshPutTaskWrapper.java | 4 +- .../java/brooklyn/util/task/ssh/SshTasks.java | 10 +- .../util/task/system/ProcessTaskFactory.java | 3 +- .../util/task/system/ProcessTaskWrapper.java | 4 +- .../brooklyn/util/text/TemplateProcessor.java | 2 +- .../lite/CampPlatformWithJustBrooklynMgmt.java | 3 +- .../brooklyn/camp/lite/CampYamlLiteTest.java | 5 +- .../camp/lite/TestAppAssemblyInstantiator.java | 5 +- .../catalog/internal/CatalogTestUtils.java | 5 +- .../YamlRollingTimeWindowMeanEnricherTest.java | 2 +- .../YamlTimeWeightedDeltaEnricherTest.java | 2 +- .../entity/EffectorSayHiGroovyTest.groovy | 4 +- .../java/brooklyn/entity/EffectorSayHiTest.java | 4 +- .../entity/EntityPreManagementTest.java | 4 +- .../entity/basic/BasicStartableTest.java | 2 +- .../brooklyn/entity/basic/ConfigMapTest.java | 4 +- .../brooklyn/entity/basic/DataEntityTest.java | 2 +- .../basic/DependentConfigurationTest.java | 2 +- .../brooklyn/entity/basic/EntityConfigTest.java | 2 +- .../entity/basic/EntitySubscriptionTest.java | 2 +- .../drivers/EntityDriverRegistryTest.java | 2 +- .../entity/effector/EffectorBasicTest.java | 4 +- .../effector/EffectorConcatenateTest.java | 4 +- .../entity/effector/EffectorTaskTest.java | 4 +- .../entity/group/DynamicClusterTest.java | 2 +- ...DynamicClusterWithAvailabilityZonesTest.java | 2 +- .../entity/group/DynamicFabricTest.java | 2 +- .../group/MembershipTrackingPolicyTest.java | 2 +- .../entity/hello/LocalEntitiesTest.java | 4 +- .../ApplicationBuilderOverridingTest.java | 2 +- .../entity/proxying/EntityManagerTest.java | 2 +- .../entity/proxying/EntityProxyTest.java | 4 +- .../entity/rebind/RebindCatalogEntityTest.java | 6 +- .../entity/rebind/RebindCatalogItemTest.java | 4 +- .../entity/rebind/RebindEntityTest.java | 2 +- .../entity/rebind/RebindFailuresTest.java | 4 +- .../entity/rebind/RebindFeedWithHaTest.java | 4 +- .../entity/rebind/RebindManagerSorterTest.java | 2 +- .../entity/rebind/RebindManagerTest.java | 2 +- .../brooklyn/entity/rebind/RebindOptions.java | 3 +- .../entity/rebind/RebindTestFixture.java | 6 +- .../brooklyn/entity/rebind/RebindTestUtils.java | 6 +- .../BrooklynMementoPersisterFileBasedTest.java | 2 +- ...ntoPersisterInMemorySizeIntegrationTest.java | 2 +- .../BrooklynMementoPersisterInMemoryTest.java | 2 +- .../BrooklynMementoPersisterTestFixture.java | 2 +- .../persister/FileBasedObjectStoreTest.java | 2 +- .../rebind/persister/InMemoryObjectStore.java | 4 +- .../rebind/persister/ListeningObjectStore.java | 4 +- .../persister/XmlMementoSerializerTest.java | 2 +- .../transformer/CompoundTransformerTest.java | 4 +- .../entity/trait/FailingEntityImpl.java | 2 +- .../entity/trait/StartableMethodsTest.java | 2 +- .../access/PortForwardManagerRebindTest.java | 2 +- .../location/basic/AbstractLocationTest.java | 2 +- ...stMachineProvisioningLocationRebindTest.java | 2 +- .../location/basic/LocationConfigTest.java | 2 +- .../location/basic/LocationExtensionsTest.java | 2 +- .../location/basic/LocationManagementTest.java | 2 +- .../location/basic/MachineDetailsTest.java | 4 +- .../location/basic/MultiLocationRebindTest.java | 2 +- .../SshMachineLocationIntegrationTest.java | 4 +- .../location/basic/SshMachineLocationTest.java | 2 +- .../entitlement/AcmeEntitlementManager.java | 4 + .../AcmeEntitlementManagerTestFixture.java | 2 +- .../entitlement/EntitlementsTest.java | 3 +- .../entitlement/EntityEntitlementTest.java | 2 +- .../ha/HighAvailabilityManagerInMemoryTest.java | 1 + .../HighAvailabilityManagerSplitBrainTest.java | 5 + .../ha/HighAvailabilityManagerTestFixture.java | 5 + .../brooklyn/management/ha/HotStandbyTest.java | 3 + .../ha/ImmutableManagementPlaneSyncRecord.java | 3 + ...agementPlaneSyncRecordPersisterInMemory.java | 3 + .../management/ha/MasterChooserTest.java | 2 + .../ha/MutableManagementPlaneSyncRecord.java | 3 + .../brooklyn/management/ha/WarmStandbyTest.java | 3 + .../internal/EntityExecutionManagerTest.java | 4 +- .../internal/LocalManagementContextTest.java | 2 +- .../internal/LocalSubscriptionManagerTest.java | 4 +- .../osgi/OsgiVersionMoreEntityTest.java | 4 +- .../policy/basic/PolicySubscriptionTest.java | 4 +- .../qa/performance/AbstractPerformanceTest.java | 2 +- .../qa/performance/EntityPerformanceTest.java | 2 +- .../SubscriptionPerformanceTest.java | 2 +- .../brooklyn/test/entity/TestApplication.java | 3 +- .../test/entity/TestApplicationImpl.java | 2 +- .../brooklyn/util/internal/FlagUtilsTest.java | 2 +- .../util/ssh/BashCommandsIntegrationTest.java | 2 +- .../task/BasicTaskExecutionPerformanceTest.java | 2 +- .../util/task/BasicTaskExecutionTest.java | 2 +- .../util/task/BasicTasksFutureTest.java | 2 +- .../util/task/CompoundTaskExecutionTest.java | 2 +- .../util/task/DynamicSequentialTaskTest.java | 4 +- .../util/task/NonBasicTaskExecutionTest.java | 2 +- .../util/task/ScheduledExecutionTest.java | 2 +- .../util/task/TaskFinalizationTest.java | 2 +- .../test/java/brooklyn/util/task/TasksTest.java | 4 +- .../brooklyn/util/task/ValueResolverTest.java | 4 +- .../brooklyn/util/task/ssh/SshTasksTest.java | 2 +- .../util/task/system/SystemTasksTest.java | 2 +- .../JcloudsBlobStoreBasedObjectStore.java | 4 +- .../location/jclouds/BrooklynMachinePool.java | 2 +- .../jclouds/JcloudsByonLocationResolver.java | 2 +- .../location/jclouds/JcloudsLocation.java | 2 +- .../jclouds/JcloudsLocationResolver.java | 2 +- .../zone/AwsAvailabilityZoneExtension.java | 2 +- .../persister/jclouds/BlobStoreExpiryTest.java | 2 +- .../BlobStorePersistencePerformanceTest.java | 2 +- .../rebind/persister/jclouds/BlobStoreTest.java | 2 +- .../jclouds/JcloudsExpect100ContinueTest.java | 2 +- .../JcloudsObjectStoreAccessorWriterTest.java | 2 +- .../jclouds/BailOutJcloudsLocation.java | 3 +- .../provider/AbstractJcloudsLocationTest.java | 2 +- .../AwsEc2LocationWindowsLiveTest.groovy | 2 +- .../entity/brooklyn/BrooklynMetricsImpl.java | 3 +- .../policy/ha/AbstractFailureDetector.java | 2 +- .../enricher/DeltaEnrichersTests.groovy | 2 +- .../enricher/RollingMeanEnricherTest.groovy | 2 +- .../RollingTimeWindowMeanEnricherTest.groovy | 2 +- .../enricher/TimeFractionDeltaEnricherTest.java | 2 +- .../AbstractFollowTheSunPolicyTest.java | 2 +- .../ha/ConnectionFailureDetectorTest.java | 2 +- ...ServiceFailureDetectorStabilizationTest.java | 2 +- .../policy/ha/ServiceFailureDetectorTest.java | 2 +- .../brooklyn/policy/ha/ServiceReplacerTest.java | 2 +- .../policy/ha/ServiceRestarterTest.java | 2 +- .../SameServerDriverLifecycleEffectorTasks.java | 2 +- .../entity/basic/SameServerEntityImpl.java | 3 +- ...wareProcessDriverLifecycleEffectorTasks.java | 2 +- .../entity/basic/SoftwareProcessImpl.java | 2 +- .../entity/basic/lifecycle/ScriptHelper.java | 7 +- .../brooklynnode/BrooklynClusterImpl.java | 2 +- .../entity/brooklynnode/BrooklynNode.java | 6 +- .../entity/brooklynnode/BrooklynNodeImpl.java | 6 +- .../BrooklynClusterUpgradeEffectorBody.java | 6 +- .../BrooklynNodeUpgradeEffectorBody.java | 4 +- .../effector/SelectMasterEffectorBody.java | 4 +- .../SetHighAvailabilityModeEffectorBody.java | 4 +- .../brooklyn/entity/chef/ChefAttributeFeed.java | 2 +- .../brooklyn/entity/chef/ChefSoloDriver.java | 5 +- .../brooklyn/entity/chef/ChefSoloTasks.java | 3 +- .../java/brooklyn/entity/chef/ChefTasks.java | 4 +- .../brooklyn/entity/pool/ServerPoolImpl.java | 4 +- .../entity/pool/ServerPoolLocationResolver.java | 2 +- .../entity/service/EntityLaunchListener.java | 5 +- .../entity/service/InitdServiceInstaller.java | 2 +- .../entity/service/SystemServiceEnricher.java | 4 +- .../entity/service/SystemServiceInstaller.java | 2 +- .../entity/software/MachineInitTasks.java | 2 +- .../software/MachineLifecycleEffectorTasks.java | 2 +- .../entity/software/SshEffectorTasks.java | 2 +- .../brooklyn/entity/software/StaticSensor.java | 2 +- .../software/java/JmxAttributeSensor.java | 2 +- .../entity/AbstractGoogleComputeLiveTest.java | 2 +- .../entity/AbstractSoftlayerLiveTest.java | 2 +- .../entity/basic/SameServerEntityTest.java | 2 +- .../basic/SoftwareProcessEntityLatchTest.java | 2 +- .../basic/SoftwareProcessEntityRebindTest.java | 2 +- .../entity/basic/SoftwareProcessEntityTest.java | 6 +- .../basic/lifecycle/NaiveScriptRunnerTest.java | 2 +- .../brooklynnode/SelectMasterEffectorTest.java | 2 +- .../entity/chef/ChefLiveTestSupport.java | 2 +- .../chef/ChefServerTasksIntegrationTest.java | 2 +- .../mysql/ChefSoloDriverToyMySqlEntity.java | 5 +- .../entity/pool/AbstractServerPoolTest.java | 2 +- .../entity/pool/ServerPoolLiveTest.java | 2 +- .../entity/pool/ServerPoolRebindTest.java | 2 +- .../entity/software/AbstractDockerLiveTest.java | 4 +- .../MachineLifecycleEffectorTasksTest.java | 2 +- .../entity/software/SoftwareEffectorTest.java | 4 +- .../entity/software/SshEffectorTasksTest.java | 6 +- .../mariadb/MariaDbIntegrationTest.java | 2 +- .../postgresql/PostgreSqlIntegrationTest.java | 2 +- .../rubyrep/RubyRepIntegrationTest.java | 2 +- .../nosql/cassandra/CassandraNodeSshDriver.java | 2 +- .../nosql/couchbase/CouchbaseNodeSshDriver.java | 2 +- .../entity/proxy/AbstractControllerImpl.java | 2 +- .../entity/proxy/nginx/NginxControllerImpl.java | 2 +- .../entity/proxy/nginx/NginxSshDriver.java | 2 +- .../entity/proxy/nginx/UrlMappingImpl.java | 2 +- .../ControlledDynamicWebAppClusterImpl.java | 2 +- .../entity/webapp/DynamicWebAppClusterImpl.java | 4 +- .../entity/dns/AbstractGeoDnsServiceTest.java | 2 +- .../geoscaling/GeoscalingIntegrationTest.java | 2 +- .../nginx/NginxClusterIntegrationTest.java | 2 +- .../proxy/nginx/NginxRebindIntegrationTest.java | 2 +- .../nginx/NginxRebindWithHaIntegrationTest.java | 4 +- .../nginx/NginxUrlMappingIntegrationTest.java | 2 +- .../proxy/nginx/NginxWebClusterEc2LiveTest.java | 2 +- .../AbstractWebAppFixtureIntegrationTest.java | 6 +- .../webapp/TomcatAutoScalerPolicyTest.java | 2 +- .../webapp/WebAppConcurrentDeployTest.java | 2 +- .../NodeJsWebAppFixtureIntegrationTest.java | 2 +- .../app/SampleLocalhostIntegrationTest.java | 2 +- .../brooklyn/sample/app/SampleUnitTest.java | 2 +- .../camp/brooklyn/BrooklynCampPlatform.java | 4 +- .../BrooklynCampPlatformLauncherAbstract.java | 3 +- .../camp/brooklyn/YamlLauncherAbstract.java | 4 +- .../BrooklynAssemblyTemplateInstantiator.java | 5 +- .../BrooklynComponentTemplateResolver.java | 5 +- .../BrooklynEntityDecorationResolver.java | 2 +- .../spi/creation/BrooklynEntityMatcher.java | 4 +- .../creation/BrooklynYamlLocationResolver.java | 3 +- .../creation/BrooklynYamlTypeInstantiator.java | 2 +- .../spi/dsl/BrooklynDslDeferredSupplier.java | 4 +- .../spi/dsl/methods/BrooklynDslCommon.java | 6 +- .../brooklyn/spi/dsl/methods/DslComponent.java | 2 +- .../lookup/AbstractBrooklynResourceLookup.java | 3 +- .../lookup/AbstractTemplateBrooklynLookup.java | 4 +- .../spi/lookup/AssemblyBrooklynLookup.java | 3 +- .../lookup/AssemblyTemplateBrooklynLookup.java | 3 +- .../brooklyn/spi/lookup/BrooklynUrlLookup.java | 3 +- .../lookup/PlatformComponentBrooklynLookup.java | 3 +- ...PlatformComponentTemplateBrooklynLookup.java | 3 +- .../platform/BrooklynImmutableCampPlatform.java | 2 +- .../camp/brooklyn/AbstractYamlRebindTest.java | 4 +- .../camp/brooklyn/AbstractYamlTest.java | 4 +- .../BrooklynYamlTypeInstantiatorTest.java | 2 +- .../camp/brooklyn/DslAndRebindYamlTest.java | 2 +- .../camp/brooklyn/EntitiesYamlTest.java | 2 +- ...aWebAppWithDslYamlRebindIntegrationTest.java | 4 +- .../brooklyn/JavaWebAppsIntegrationTest.java | 4 +- .../camp/brooklyn/JavaWebAppsMatchingTest.java | 2 +- .../brooklyn/camp/brooklyn/ObjectsYamlTest.java | 4 +- .../brooklyn/ReloadBrooklynPropertiesTest.java | 2 +- .../brooklyn/VanillaBashNetcatYamlTest.java | 2 +- .../main/java/org/apache/brooklyn/cli/Main.java | 13 +- .../BrooklynJavascriptGuiLauncherTest.java | 4 +- .../brooklyn/launcher/BrooklynLauncher.java | 12 +- .../launcher/BrooklynServerDetails.java | 2 +- .../brooklyn/launcher/BrooklynWebServer.java | 7 +- .../camp/BrooklynCampPlatformLauncher.java | 4 +- .../BrooklynEntityMirrorIntegrationTest.java | 6 +- .../brooklynnode/BrooklynNodeRestTest.java | 4 +- .../BrooklynLauncherHighAvailabilityTest.java | 7 +- .../BrooklynLauncherRebindTestFixture.java | 5 +- .../BrooklynLauncherRebindTestToFiles.java | 5 +- ...lynLauncherRebindToCloudObjectStoreTest.java | 2 +- .../brooklyn/launcher/BrooklynLauncherTest.java | 3 +- .../launcher/SimpleYamlLauncherForTests.java | 3 +- .../blueprints/AbstractBlueprintTest.java | 4 +- .../SoftlayerObtainPrivateLiveTest.java | 4 +- .../org/apache/brooklyn/qa/load/LoadTest.java | 6 +- .../org/apache/brooklyn/rest/api/ServerApi.java | 4 +- .../ApplicationResourceIntegrationTest.java | 4 +- .../rest/client/BrooklynApiRestClientTest.java | 4 +- .../BrooklynPropertiesSecurityFilter.java | 4 +- .../rest/filter/HaHotCheckResourceFilter.java | 6 +- .../rest/filter/HaMasterCheckFilter.java | 6 +- .../resources/AbstractBrooklynRestResource.java | 4 +- .../rest/resources/ActivityResource.java | 5 +- .../rest/resources/ApplicationResource.java | 5 +- .../rest/resources/EffectorResource.java | 4 +- .../brooklyn/rest/resources/EntityResource.java | 4 +- .../brooklyn/rest/resources/ServerResource.java | 18 +- ...nUserWithRandomPasswordSecurityProvider.java | 4 +- .../provider/DelegatingSecurityProvider.java | 4 +- .../provider/ExplicitUsersSecurityProvider.java | 3 +- .../security/provider/LdapSecurityProvider.java | 5 +- .../transform/HighAvailabilityTransformer.java | 4 +- .../rest/transform/LocationTransformer.java | 4 +- .../rest/transform/TaskTransformer.java | 6 +- .../rest/util/BrooklynRestResourceUtils.java | 4 +- .../brooklyn/rest/util/EntityLocationUtils.java | 3 +- .../rest/util/ManagementContextProvider.java | 2 +- .../rest/util/json/BidiSerialization.java | 2 +- .../util/json/BrooklynJacksonJsonProvider.java | 2 +- .../brooklynnode/DeployBlueprintTest.java | 4 +- .../brooklyn/rest/BrooklynRestApiLauncher.java | 4 +- .../BrooklynRestApiLauncherTestFixture.java | 4 +- .../apache/brooklyn/rest/HaHotCheckTest.java | 7 +- .../brooklyn/rest/HaMasterCheckFilterTest.java | 10 +- .../brooklyn/rest/domain/ApplicationTest.java | 2 +- .../brooklyn/rest/domain/SensorSummaryTest.java | 4 +- .../rest/resources/ScriptResourceTest.java | 3 +- .../SensorResourceIntegrationTest.java | 4 +- .../ServerResourceIntegrationTest.java | 4 +- .../rest/resources/ServerResourceTest.java | 4 +- .../rest/resources/ServerShutdownTest.java | 6 +- .../rest/testing/BrooklynRestApiTest.java | 4 +- .../json/BrooklynJacksonSerializerTest.java | 4 +- .../apache/brooklyn/test/EntityTestUtils.java | 3 +- 506 files changed, 2786 insertions(+), 2542 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/Application.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/Application.java b/api/src/main/java/brooklyn/entity/Application.java index 35587c8..4697186 100644 --- a/api/src/main/java/brooklyn/entity/Application.java +++ b/api/src/main/java/brooklyn/entity/Application.java @@ -18,7 +18,7 @@ */ package brooklyn.entity; -import brooklyn.management.ManagementContext; +import org.apache.brooklyn.management.ManagementContext; /** http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/Entity.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/Entity.java b/api/src/main/java/brooklyn/entity/Entity.java index f63a049..3959273 100644 --- a/api/src/main/java/brooklyn/entity/Entity.java +++ b/api/src/main/java/brooklyn/entity/Entity.java @@ -23,6 +23,7 @@ import java.util.Map; import javax.annotation.Nullable; +import org.apache.brooklyn.management.Task; import org.apache.brooklyn.policy.Enricher; import org.apache.brooklyn.policy.EnricherSpec; import org.apache.brooklyn.policy.Policy; @@ -34,7 +35,6 @@ import brooklyn.config.ConfigKey.HasConfigKey; import brooklyn.entity.proxying.EntitySpec; import brooklyn.event.AttributeSensor; import brooklyn.location.Location; -import brooklyn.management.Task; import brooklyn.util.guava.Maybe; /** http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/basic/EntityLocal.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/basic/EntityLocal.java b/api/src/main/java/brooklyn/entity/basic/EntityLocal.java index dd7affc..a302768 100644 --- a/api/src/main/java/brooklyn/entity/basic/EntityLocal.java +++ b/api/src/main/java/brooklyn/entity/basic/EntityLocal.java @@ -20,6 +20,11 @@ package brooklyn.entity.basic; import java.util.Map; +import org.apache.brooklyn.management.SubscriptionContext; +import org.apache.brooklyn.management.SubscriptionHandle; +import org.apache.brooklyn.management.SubscriptionManager; +import org.apache.brooklyn.management.Task; + import brooklyn.config.ConfigKey; import brooklyn.config.ConfigKey.HasConfigKey; import brooklyn.entity.Entity; @@ -29,10 +34,6 @@ import brooklyn.event.AttributeSensor; import brooklyn.event.Sensor; import brooklyn.event.SensorEvent; import brooklyn.event.SensorEventListener; -import brooklyn.management.SubscriptionContext; -import brooklyn.management.SubscriptionHandle; -import brooklyn.management.SubscriptionManager; -import brooklyn.management.Task; import brooklyn.util.guava.Maybe; import com.google.common.annotations.Beta; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/proxying/EntitySpec.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/proxying/EntitySpec.java b/api/src/main/java/brooklyn/entity/proxying/EntitySpec.java index 3c64434..bed88f2 100644 --- a/api/src/main/java/brooklyn/entity/proxying/EntitySpec.java +++ b/api/src/main/java/brooklyn/entity/proxying/EntitySpec.java @@ -27,6 +27,7 @@ import java.util.Set; import javax.annotation.Nullable; +import org.apache.brooklyn.management.Task; import org.apache.brooklyn.policy.Enricher; import org.apache.brooklyn.policy.EnricherSpec; import org.apache.brooklyn.policy.Policy; @@ -40,7 +41,6 @@ import brooklyn.config.ConfigKey.HasConfigKey; import brooklyn.entity.Entity; import brooklyn.entity.Group; import brooklyn.location.Location; -import brooklyn.management.Task; import brooklyn.util.collections.MutableList; import com.google.common.base.Supplier; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/rebind/RebindManager.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/rebind/RebindManager.java b/api/src/main/java/brooklyn/entity/rebind/RebindManager.java index 8cebfb9..7e99a8e 100644 --- a/api/src/main/java/brooklyn/entity/rebind/RebindManager.java +++ b/api/src/main/java/brooklyn/entity/rebind/RebindManager.java @@ -24,11 +24,11 @@ import java.util.concurrent.TimeoutException; import javax.annotation.Nullable; +import org.apache.brooklyn.management.ha.ManagementNodeState; import org.apache.brooklyn.mementos.BrooklynMementoPersister; import org.apache.brooklyn.mementos.BrooklynMementoRawData; import brooklyn.entity.Application; -import brooklyn.management.ha.ManagementNodeState; import brooklyn.util.time.Duration; import com.google.common.annotations.Beta; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/entity/trait/Configurable.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/entity/trait/Configurable.java b/api/src/main/java/brooklyn/entity/trait/Configurable.java index 2f49014..f72a0da 100644 --- a/api/src/main/java/brooklyn/entity/trait/Configurable.java +++ b/api/src/main/java/brooklyn/entity/trait/Configurable.java @@ -18,9 +18,10 @@ */ package brooklyn.entity.trait; +import org.apache.brooklyn.management.Task; + import brooklyn.config.ConfigKey; import brooklyn.config.ConfigKey.HasConfigKey; -import brooklyn.management.Task; import com.google.common.annotations.Beta; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/location/LocationDefinition.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/location/LocationDefinition.java b/api/src/main/java/brooklyn/location/LocationDefinition.java index 4d8494a..44296e4 100644 --- a/api/src/main/java/brooklyn/location/LocationDefinition.java +++ b/api/src/main/java/brooklyn/location/LocationDefinition.java @@ -20,7 +20,7 @@ package brooklyn.location; import java.util.Map; -import brooklyn.management.ManagementContext; +import org.apache.brooklyn.management.ManagementContext; /** * Defines a location, where the {@link #getSpec()} is like a serialized representation http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/location/LocationResolver.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/location/LocationResolver.java b/api/src/main/java/brooklyn/location/LocationResolver.java index b81a86b..908936c 100644 --- a/api/src/main/java/brooklyn/location/LocationResolver.java +++ b/api/src/main/java/brooklyn/location/LocationResolver.java @@ -20,9 +20,9 @@ package brooklyn.location; import java.util.Map; -import com.google.common.annotations.Beta; +import org.apache.brooklyn.management.ManagementContext; -import brooklyn.management.ManagementContext; +import com.google.common.annotations.Beta; /** * Provides a way of creating location instances of a particular type. http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/location/LocationSpec.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/location/LocationSpec.java b/api/src/main/java/brooklyn/location/LocationSpec.java index 10a6d7e..e89c64c 100644 --- a/api/src/main/java/brooklyn/location/LocationSpec.java +++ b/api/src/main/java/brooklyn/location/LocationSpec.java @@ -23,13 +23,13 @@ import static com.google.common.base.Preconditions.checkNotNull; import java.util.Collections; import java.util.Map; +import org.apache.brooklyn.management.Task; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import brooklyn.basic.AbstractBrooklynObjectSpec; import brooklyn.config.ConfigKey; import brooklyn.config.ConfigKey.HasConfigKey; -import brooklyn.management.Task; import com.google.common.collect.Maps; http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/AccessController.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/AccessController.java b/api/src/main/java/brooklyn/management/AccessController.java deleted file mode 100644 index 5485ee0..0000000 --- a/api/src/main/java/brooklyn/management/AccessController.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import brooklyn.entity.Entity; -import brooklyn.location.Location; - -import com.google.common.annotations.Beta; - -@Beta -public interface AccessController { - - // TODO Expect this class' methods to change, e.g. including the user doing the - // provisioning or the provisioning parameters such as jurisdiction - - public static class Response { - private static final Response ALLOWED = new Response(true, ""); - - public static Response allowed() { - return ALLOWED; - } - - public static Response disallowed(String msg) { - return new Response(false, msg); - } - - private final boolean allowed; - private final String msg; - - private Response(boolean allowed, String msg) { - this.allowed = allowed; - this.msg = msg; - } - - public boolean isAllowed() { - return allowed; - } - - public String getMsg() { - return msg; - } - } - - public Response canProvisionLocation(Location provisioner); - - public Response canManageLocation(Location loc); - - public Response canManageEntity(Entity entity); -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/EntityManager.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/EntityManager.java b/api/src/main/java/brooklyn/management/EntityManager.java deleted file mode 100644 index a6c50ee..0000000 --- a/api/src/main/java/brooklyn/management/EntityManager.java +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Collection; -import java.util.Map; - -import javax.annotation.Nullable; - -import org.apache.brooklyn.policy.Enricher; -import org.apache.brooklyn.policy.EnricherSpec; -import org.apache.brooklyn.policy.Policy; -import org.apache.brooklyn.policy.PolicySpec; - -import brooklyn.entity.Application; -import brooklyn.entity.Entity; -import brooklyn.entity.proxying.EntitySpec; -import brooklyn.entity.proxying.EntityTypeRegistry; - -import com.google.common.base.Predicate; - -/** - * For managing and querying entities. - */ -public interface EntityManager { - - /** - * Returns the type registry, used to identify the entity implementation when instantiating an - * entity of a given type. - * - * @see EntityManager.createEntity(EntitySpec) - */ - EntityTypeRegistry getEntityTypeRegistry(); - - /** - * Creates a new (unmanaged) entity. - * - * @param spec - * @return A proxy to the created entity (rather than the actual entity itself). - */ - <T extends Entity> T createEntity(EntitySpec<T> spec); - - /** - * Convenience (particularly for groovy code) to create an entity. - * Equivalent to {@code createEntity(EntitySpec.create(type).configure(config))} - * - * @see createEntity(EntitySpec) - */ - <T extends Entity> T createEntity(Map<?,?> config, Class<T> type); - - /** - * Creates a new policy (not managed; not associated with any entity). - * - * @param spec - */ - <T extends Policy> T createPolicy(PolicySpec<T> spec); - - /** - * Creates a new enricher (not managed; not associated with any entity). - * - * @param spec - */ - <T extends Enricher> T createEnricher(EnricherSpec<T> spec); - - /** - * All entities under control of this management plane - */ - Collection<Entity> getEntities(); - - /** - * All entities managed as part of the given application - */ - Collection<Entity> getEntitiesInApplication(Application application); - - /** - * All entities under control of this management plane that match the given filter - */ - Collection<Entity> findEntities(Predicate<? super Entity> filter); - - /** - * All entities managed as part of the given application that match the given filter - */ - Collection<Entity> findEntitiesInApplication(Application application, Predicate<? super Entity> filter); - - /** - * Returns the entity with the given identifier (may be a full instance, or a proxy to one which is remote), - * or null. - */ - @Nullable Entity getEntity(String id); - - /** whether the entity is under management by this management context */ - boolean isManaged(Entity entity); - - /** - * Begins management for the given entity and its children, recursively. - * - * depending on the implementation of the management context, - * this might push it out to one or more remote management nodes. - * Manage an entity. - */ - // TODO manage and unmanage without arguments should be changed to take an explicit ManagementTransitionMode - // (but that class is not currently in the API project) - void manage(Entity e); - - /** - * Causes the given entity and its children, recursively, to be removed from the management plane - * (for instance because the entity is no longer relevant) - */ - void unmanage(Entity e); - -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/ExecutionContext.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/ExecutionContext.java b/api/src/main/java/brooklyn/management/ExecutionContext.java deleted file mode 100644 index 2e43a91..0000000 --- a/api/src/main/java/brooklyn/management/ExecutionContext.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Map; -import java.util.Set; -import java.util.concurrent.Callable; -import java.util.concurrent.Executor; - -import brooklyn.entity.Entity; - -/** - * This is a Brooklyn extension to the Java {@link Executor}. - * - * The "context" could, for example, be an {@link Entity} so that tasks executed - * can be annotated as executing in that context. - */ -public interface ExecutionContext extends Executor { - - /** - * Get the tasks executed through this context (returning an immutable set). - */ - Set<Task<?>> getTasks(); - - /** - * See {@link ExecutionManager#submit(Map, TaskAdaptable)} for properties that can be passed in. - */ - Task<?> submit(Map<?,?> properties, Runnable runnable); - - /** - * See {@link ExecutionManager#submit(Map, TaskAdaptable)} for properties that can be passed in. - */ - <T> Task<T> submit(Map<?,?> properties, Callable<T> callable); - - /** {@link ExecutionManager#submit(Runnable) */ - Task<?> submit(Runnable runnable); - - /** {@link ExecutionManager#submit(Callable) */ - <T> Task<T> submit(Callable<T> callable); - - /** See {@link ExecutionManager#submit(Map, TaskAdaptable)}. */ - <T> Task<T> submit(TaskAdaptable<T> task); - - /** - * See {@link ExecutionManager#submit(Map, TaskAdaptable)} for properties that can be passed in. - */ - <T> Task<T> submit(Map<?,?> properties, TaskAdaptable<T> task); - - boolean isShutdown(); - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/ExecutionManager.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/ExecutionManager.java b/api/src/main/java/brooklyn/management/ExecutionManager.java deleted file mode 100644 index 4b1a72c..0000000 --- a/api/src/main/java/brooklyn/management/ExecutionManager.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Collection; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.Callable; -import java.util.concurrent.ExecutorService; - -import brooklyn.entity.Entity; - -/** - * This class manages the execution of a number of jobs with tags. - * - * It is like an executor service (and it ends up delegating to one) but adds additional support - * where jobs can be: - * <ul> - * <li>Tracked with tags/buckets - * <li>Be {@link Runnable}s, {@link Callable}s, or {@link groovy.lang.Closure}s - * <li>Remembered after completion - * <li>Treated as {@link Task} instances (see below) - * <li>Given powerful synchronization capabilities - * </ul> - * <p> - * The advantage of treating them as {@link Task} instances include: - * <ul> - * <li>Richer status information - * <li>Started-by, contained-by relationships automatically remembered - * <li>Runtime metadata (start, stop, etc) - * <li>Grid and multi-machine support) - * </ul> - * <p> - * For usage instructions see {@link #submit(Map, TaskAdaptable)}, and for examples see the various - * {@code ExecutionTest} and {@code TaskTest} instances. - * <p> - * It has been developed for multi-location provisioning and management to track work being - * done by each {@link Entity}. - * <p> - * Note the use of the environment variable {@code THREAD_POOL_SIZE} which is used to size - * the {@link ExecutorService} thread pool. The default is calculated as twice the number - * of CPUs in the system plus two, giving 10 for a four core system, 18 for an eight CPU - * server and so on. - */ -public interface ExecutionManager { - public boolean isShutdown(); - - /** returns the task with the given ID, or null if none */ - public Task<?> getTask(String id); - - /** returns all tasks with the given tag (immutable) */ - public Set<Task<?>> getTasksWithTag(Object tag); - - /** returns all tasks that have any of the given tags (immutable) */ - public Set<Task<?>> getTasksWithAnyTag(Iterable<?> tags); - - /** returns all tasks that have all of the given tags (immutable) */ - public Set<Task<?>> getTasksWithAllTags(Iterable<?> tags); - - /** returns all tags known to this manager (immutable) */ - public Set<Object> getTaskTags(); - -// /** returns all tasks known to this manager (immutable) */ -// public Set<Task<?>> getAllTasks(); - - /** see {@link #submit(Map, TaskAdaptable)} */ - public Task<?> submit(Runnable r); - - /** see {@link #submit(Map, TaskAdaptable)} */ - public <T> Task<T> submit(Callable<T> c); - - /** see {@link #submit(Map, TaskAdaptable)} */ - public <T> Task<T> submit(TaskAdaptable<T> task); - - /** see {@link #submit(Map, TaskAdaptable)} */ - public Task<?> submit(Map<?, ?> flags, Runnable r); - - /** see {@link #submit(Map, TaskAdaptable)} */ - public <T> Task<T> submit(Map<?, ?> flags, Callable<T> c); - - /** - * Submits the given {@link Task} for execution in the context associated with this manager. - * - * The following optional flags supported (in the optional map first arg): - * <ul> - * <li><em>tag</em> - A single object to be used as a tag for looking up the task - * <li><em>tags</em> - A {@link Collection} of object tags each of which the task should be associated, - * used for associating with contexts, mutex execution, and other purposes - * <li><em>synchId</em> - A string, or {@link Collection} of strings, representing a category on which an object should own a synch lock - * <li><em>synchObj</em> - A string, or {@link Collection} of strings, representing a category on which an object should own a synch lock - * <li><em>newTaskStartCallback</em> - A {@link groovy.lang.Closure} that will be invoked just before the task starts if it starts as a result of this call - * <li><em>newTaskEndCallback</em> - A {@link groovy.lang.Closure} that will be invoked when the task completes if it starts as a result of this call - * </ul> - * Callbacks run in the task's thread, and if the callback is a {@link groovy.lang.Closure} it is passed the task for convenience. The closure can be any of the - * following types; either a {@link groovy.lang.Closure}, {@link Runnable} or {@link Callable}. - * <p> - * If a Map is supplied it must be modifiable (currently; may allow immutable maps in future). - */ - public <T> Task<T> submit(Map<?, ?> flags, TaskAdaptable<T> task); - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/HasTaskChildren.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/HasTaskChildren.java b/api/src/main/java/brooklyn/management/HasTaskChildren.java deleted file mode 100644 index 6ba26b3..0000000 --- a/api/src/main/java/brooklyn/management/HasTaskChildren.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import com.google.common.annotations.Beta; - -/** - * Interface marks tasks which have explicit children, - * typically where the task defines the ordering of running those children tasks - * <p> - * The {@link Task#getSubmittedByTask()} on the child will typically return the parent, - * but note there are other means of submitting tasks (e.g. background, in the same {@link ExecutionContext}), - * where the submitter has no API reference to the submitted tasks. - * <p> - * In general the children mechanism is preferred as it is easier to navigate - * (otherwise you have to scan the {@link ExecutionContext} to find tasks submitted by a task). - */ -@Beta // in 0.6.0 -public interface HasTaskChildren { - - public Iterable<Task<?>> getChildren(); - -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/LocationManager.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/LocationManager.java b/api/src/main/java/brooklyn/management/LocationManager.java deleted file mode 100644 index 3d90a97..0000000 --- a/api/src/main/java/brooklyn/management/LocationManager.java +++ /dev/null @@ -1,87 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Collection; -import java.util.Map; - -import brooklyn.location.Location; -import brooklyn.location.LocationSpec; - -/** - * For managing and querying entities. - */ -public interface LocationManager { - - /** - * Creates a new location, which is tracked by the management context. - * - * @param spec - */ - <T extends Location> T createLocation(LocationSpec<T> spec); - - /** - * Convenience (particularly for groovy code) to create a location. - * Equivalent to {@code createLocation(LocationSpec.create(type).configure(config))} - * - * @see #createLocation(LocationSpec) - */ - <T extends Location> T createLocation(Map<?,?> config, Class<T> type); - - /** - * All locations under control of this management plane. - * - * This returns a snapshot of the current locations; it will not reflect future changes in the locations. - * If no locations are found, the collection will be empty (i.e. null is never returned). - */ - Collection<Location> getLocations(); - - /** - * Returns the location under management (e.g. in use) with the given identifier - * (e.g. random string; and different to the LocationDefinition id). - * May return a full instance, or a proxy to one which is remote. - * If no location found with that id, returns null. - */ - Location getLocation(String id); - - /** whether the location is under management by this management context */ - boolean isManaged(Location loc); - - /** - * Begins management for the given location and its children, recursively. - * - * depending on the implementation of the management context, - * this might push it out to one or more remote management nodes. - * Manage a location. - * - * @since 0.6.0 (added only for backwards compatibility, where locations are being created directly). - * @deprecated in 0.6.0; use {@link #createLocation(LocationSpec)} instead. - */ - Location manage(Location loc); - - /** - * Causes the given location and its children, recursively, to be removed from the management plane - * (for instance because the location is no longer relevant). - * - * If the given location is not managed (e.g. it has already been unmanaged) then this is a no-op - * (though it may be logged so duplicate calls are best avoided). - */ - void unmanage(Location loc); - -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/ManagementContext.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/ManagementContext.java b/api/src/main/java/brooklyn/management/ManagementContext.java deleted file mode 100644 index d1f4be3..0000000 --- a/api/src/main/java/brooklyn/management/ManagementContext.java +++ /dev/null @@ -1,254 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.io.Serializable; -import java.net.URI; -import java.util.Collection; - -import brooklyn.basic.BrooklynObject; -import org.apache.brooklyn.catalog.BrooklynCatalog; -import brooklyn.config.StringConfigMap; -import brooklyn.entity.Application; -import brooklyn.entity.Entity; -import brooklyn.entity.drivers.DriverDependentEntity; -import brooklyn.entity.drivers.EntityDriverManager; -import brooklyn.entity.drivers.downloads.DownloadResolverManager; -import brooklyn.entity.rebind.RebindManager; -import brooklyn.location.LocationRegistry; -import brooklyn.management.entitlement.EntitlementManager; -import brooklyn.management.ha.HighAvailabilityManager; -import brooklyn.util.guava.Maybe; - -import com.google.common.annotations.Beta; - -/** - * This is the entry point for accessing and interacting with a realm of applications and their entities in Brooklyn. - * - * For example, policies and the management console(s) (web-app, etc) can use this to interact with entities; - * policies, web-app, and entities share the realm for subscribing to events, executing tasks, and generally co-existing. - * <p> - * It may refer to several applications, and it refers to all the entities descended from those applications. - */ -public interface ManagementContext { - - // TODO Consider separating out into a ConfigManager for methods like: - // - getConfig() - // - reloadBrooklynProperties(); - // - addPropertiesReloadListener - // - removePropertiesReloadListener - // - interface PropertiesReloadListener - - /** - * UID for the Brooklyn management plane which this {@link ManagementContext} node is a part of. - * <p> - * Each Brooklyn entity is actively managed by a unique management plane - * whose ID which should not normally change for the duration of that entity, - * even though the nodes in that plane might, and the plane may go down and come back up. - * In other words the value of {@link Application#getManagementContext()#getManagementPlaneId()} - * will generally be constant (in contrast to {@link #getManagementNodeId()}). - * <p> - * This value should not be null unless the management context is a non-functional - * (non-deployment) instance. */ - String getManagementPlaneId(); - - /** - * UID for this {@link ManagementContext} node (as part of a single management plane). - * <p> - * No two instances of {@link ManagementContext} should ever have the same node UID. - * The value of {@link Application#getManagementContext()#getManagementNodeId()} may - * change many times (in contrast to {@link #getManagementPlaneId()}). - * <p> - * This value should not be null unless the management context is a non-functional - * (non-deployment) instance. */ - String getManagementNodeId(); - - /** - * The URI that this management node's REST API is available at, or absent if the node's - * API is unavailable. - */ - Maybe<URI> getManagementNodeUri(); - - /** - * All applications under control of this management plane - */ - Collection<Application> getApplications(); - - /** - * Returns the {@link EntityManager} instance for managing/querying entities. - */ - EntityManager getEntityManager(); - - /** - * Returns the {@link ExecutionManager} instance for entities and users in this management realm - * to submit tasks and to observe what tasks are occurring - */ - ExecutionManager getExecutionManager(); - - /** - * Returns an {@link ExecutionContext} within the {@link ExecutionManager} for tasks - * associated to the Brooklyn node's operation (not any entities). - **/ - ExecutionContext getServerExecutionContext(); - - /** - * Returns the {@link EntityDriverManager} entities can use to create drivers. This - * manager can also be used to programmatically customize which driver type to use - * for entities in different locations. - * - * The default strategy for choosing a driver is to use a naming convention: - * {@link DriverDependentEntity#getDriverInterface()} returns the interface that the - * driver must implement; its name should end in "Driver". For example, this suffix is - * replaced with "SshDriver" for SshMachineLocation, for example. - */ - EntityDriverManager getEntityDriverManager(); - - /** - * Returns the {@link DownloadResolverManager} for resolving things like which URL to download an installer from. - * - * The default {@link DownloadResolverManager} will retrieve {@code entity.getAttribute(Attributes.DOWNLOAD_URL)}, - * and substitute things like "${version}" etc. - * - * However, additional resolvers can be registered to customize this behaviour (e.g. to always go to an - * enterprise's repository). - */ - DownloadResolverManager getEntityDownloadsManager(); - - /** - * Returns the {@link SubscriptionManager} instance for entities and users of this management realm - * to subscribe to sensor events (and, in the case of entities, to emit sensor events) - */ - SubscriptionManager getSubscriptionManager(); - - //TODO (Alex) I'm not sure the following two getXxxContext methods are needed on the interface; - //I expect they will only be called once, in AbstractEntity, and fully capable - //there of generating the respective contexts from the managers - //(Litmus test will be whether there is anything in FederatedManagementContext - //which requires a custom FederatedExecutionContext -- or whether BasicEC - //works with FederatedExecutionManager) - /** - * Returns an {@link ExecutionContext} instance representing tasks - * (from the {@link ExecutionManager}) associated with this entity, and capable - * of conveniently running such tasks which will be associated with that entity - */ - ExecutionContext getExecutionContext(Entity entity); - - /** - * Returns a {@link SubscriptionContext} instance representing subscriptions - * (from the {@link SubscriptionManager}) associated with this entity, and capable - * of conveniently subscribing on behalf of that entity - */ - SubscriptionContext getSubscriptionContext(Entity entity); - - @Beta // method may move to an internal interface; brooklyn users should not need to call this directly - RebindManager getRebindManager(); - - /** - * @since 0.7.0 - */ - @Beta // method may move to an internal interface; brooklyn users should not need to call this directly - HighAvailabilityManager getHighAvailabilityManager(); - - /** - * Returns the ConfigMap (e.g. BrooklynProperties) applicable to this management context. - * Defaults to reading ~/.brooklyn/brooklyn.properties but configurable in the management context. - */ - StringConfigMap getConfig(); - - /** - * Whether the management context has been initialized and not yet terminated. - * This does not mean startup is entirely completed. See also {@link #isStartupComplete()}. - */ - // TODO should we replace this with isNotYetTerminated() ?? - // and perhaps introduce isFullyRunning() which does (isStartupComplete() && isRunning()), - // and/or move to a MgmtContextStatus subclass where errors can also be stored? - public boolean isRunning(); - - /** - * Whether all startup tasks have completed. Previous to this point the management context is still usable - * (and hence {@link #isRunning()} returns true immediately after construction) - * but some subsystems (e.g. persistence, OSGi, webapps, entities started at startup) - * may not be available until this returns true. - * <p> - * Also see {@link #isStartupComplete()}. - */ - @Beta // see comment on isRunning() as items might move to a status handler - public boolean isStartupComplete(); - - /** Record of configured locations and location resolvers */ - LocationRegistry getLocationRegistry(); - - /** Record of configured Brooklyn entities (and templates and policies) which can be loaded */ - BrooklynCatalog getCatalog(); - - /** Returns the class loader to be used to load items. - * Temporary routine while catalog supports classloader-based and OSGi-based classloading. */ - @Beta - ClassLoader getCatalogClassLoader(); - - LocationManager getLocationManager(); - - /** - * For controlling access to operations - can be queried to find if an operation is allowed. - * Callers should *not* cache the result of this method, but should instead always call - * again to get the {@link AccessController}. - */ - AccessController getAccessController(); - - /** - * Reloads locations from {@code brooklyn.properties}. Any changes will apply only to newly created applications - */ - void reloadBrooklynProperties(); - - /** - * Listener for {@code brooklyn.properties} reload events. - * - * @see {@link #raddPropertiesReloadListenerPropertiesReloadListener)} - * @see {@link #removePropertiesReloadListener(PropertiesReloadListener)} - */ - interface PropertiesReloadListener extends Serializable { - - /** Called when {@code brooklyn.properties} is reloaded. */ - void reloaded(); - - } - - /** - * Registers a listener to be notified when brooklyn.properties is reloaded - */ - void addPropertiesReloadListener(PropertiesReloadListener listener); - - /** - * Deregisters a listener from brooklyn.properties reload notifications - */ - void removePropertiesReloadListener(PropertiesReloadListener listener); - - /** - * Active entitlements checker instance. - */ - EntitlementManager getEntitlementManager(); - - /** As {@link #lookup(String, Class)} but not constraining the return type */ - public BrooklynObject lookup(String id); - - /** Finds an entity with the given ID known at this management context */ - // TODO in future support policies etc - public <T extends BrooklynObject> T lookup(String id, Class<T> type); - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/SubscriptionContext.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/SubscriptionContext.java b/api/src/main/java/brooklyn/management/SubscriptionContext.java deleted file mode 100644 index 1581d5e..0000000 --- a/api/src/main/java/brooklyn/management/SubscriptionContext.java +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Map; -import java.util.Set; - -import brooklyn.entity.Entity; -import brooklyn.entity.Group; -import brooklyn.event.Sensor; -import brooklyn.event.SensorEvent; -import brooklyn.event.SensorEventListener; - -/** - * This is the context through which an {@link Entity} can manage its subscriptions. - */ -public interface SubscriptionContext { - /** - * As {@link SubscriptionManager#subscribe(Map, Entity, Sensor, SensorEventListener)} with default subscription parameters for this context - */ - <T> SubscriptionHandle subscribe(Map<String, Object> flags, Entity producer, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribe(Entity producer, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToChildren(Map<String, Object> flags, Entity parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToChildren(Entity parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToMembers(Map<String, Object> flags, Group parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToMembers(Group parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see SubscriptionManager#unsubscribe(SubscriptionHandle) */ - boolean unsubscribe(SubscriptionHandle subscriptionId); - - /** causes all subscriptions to be deregistered - * @return number of subscriptions removed */ - int unsubscribeAll(); - - /** @see SubscriptionManager#publish(SensorEvent) */ - <T> void publish(SensorEvent<T> event); - - /** Return the subscriptions associated with this context */ - Set<SubscriptionHandle> getSubscriptions(); -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/SubscriptionHandle.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/SubscriptionHandle.java b/api/src/main/java/brooklyn/management/SubscriptionHandle.java deleted file mode 100644 index ba4f498..0000000 --- a/api/src/main/java/brooklyn/management/SubscriptionHandle.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -/** - * A "receipt" returned by {@link SubscriptionContext} and {@link SubscriptionManager}'s {@code subscribe()} - * methods. It can be used to unsubscribe - see {@link SubscriptionContext#unsubscribe(SubscriptionHandle)} - * and {@link SubscriptionManager#unsubscribe(SubscriptionHandle)}. - */ -public interface SubscriptionHandle { -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/SubscriptionManager.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/SubscriptionManager.java b/api/src/main/java/brooklyn/management/SubscriptionManager.java deleted file mode 100644 index 0161cc7..0000000 --- a/api/src/main/java/brooklyn/management/SubscriptionManager.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Map; -import java.util.Set; - -import brooklyn.entity.Entity; -import brooklyn.entity.Group; -import brooklyn.event.Sensor; -import brooklyn.event.SensorEvent; -import brooklyn.event.SensorEventListener; - -/** - * The management interface for subscriptions. - * - * Different implementations will handle entities subscribing and unsubscribing to {@link SensorEvent}s - * and their delivery. - * - * @see SubscriptionContext - */ -public interface SubscriptionManager { - /** - * Subscribe to {@link Sensor} data changes and events on a given {@link Entity}, supplying the {@link SensorEventListener} - * to invoke when they occur. - * - * The method returns an id which can be used to {@link #unsubscribe(SubscriptionHandle)} later. - * <p> - * The listener callback is in-order single-threaded and synchronized on this object. The flags - * parameters can include the following: - * <ul> - * <li>subscriber - object to identify the subscriber (e.g. entity, or console session uid) - * <li><i>in future</i> - control parameters for the subscription (period, minimum delta for updates, etc) - * </ul> - * - * @param flags optional parameters to be associated with the subscription - * @param producer entity to listen to, or null to listen to all entities - * @param sensor sensor channel of events to listen to, or null for all sensors from the given producer(s) - * @param listener callback to invoke when an event occurs - * @return an id for this subscription - * - * @see #unsubscribe(SubscriptionHandle) - */ - <T> SubscriptionHandle subscribe(Map<String, Object> flags, Entity producer, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribe(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribe(Entity producer, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** - * Subscribe to {@link Sensor} data changes and events on all children of a given {@link Entity}, supplying the - * {@link SensorEventListener} to invoke when they occur. - * - * The subscriptions will be created recursively for all children, and the same listener callback will be invoked for each - * sensor datum. The semantics are otherwise identical to the {@link #subscribe(Map, Entity, Sensor, SensorEventListener)} method. - * - * @see #subscribe(Map, Entity, Sensor, SensorEventListener) - */ - <T> SubscriptionHandle subscribeToChildren(Map<String, Object> flags, Entity parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribeToChildren(Map, Entity, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToChildren(Entity parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** - * Subscribe to {@link Sensor} data changes and events on all members of a given {@link Group}, supplying the - * {@link SensorEventListener} to invoke when they occur. - * - * The subscriptions will be created recursively for all children, and the same listener callback will be invoked for each - * sensor datum. The semantics are otherwise identical to the {@link #subscribe(Map, Entity, Sensor, SensorEventListener)} method. - * - * @see #subscribe(Map, Entity, Sensor, SensorEventListener) - */ - <T> SubscriptionHandle subscribeToMembers(Map<String, Object> flags, Group parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** @see #subscribeToMembers(Map, Group, Sensor, SensorEventListener) */ - <T> SubscriptionHandle subscribeToMembers(Group parent, Sensor<T> sensor, SensorEventListener<? super T> listener); - - /** - * Unsubscribe the given subscription id. - * - * @return true if such a subscription was present (and it will now be removed) - * - * @see #subscribe(Map, Entity, Sensor, SensorEventListener) - */ - boolean unsubscribe(SubscriptionHandle subscriptionId); - - /** - * Deliver a {@link SensorEvent} to all subscribed listeners. - */ - <T> void publish(SensorEvent<T> event); - - /** Return the subscriptions requested by a given subscriber */ - Set<SubscriptionHandle> getSubscriptionsForSubscriber(Object subscriber); - - /** Return the subscriptions on a given source-sensor pair */ - Set<SubscriptionHandle> getSubscriptionsForEntitySensor(Entity source, Sensor<?> sensor); -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f7f03580/api/src/main/java/brooklyn/management/Task.java ---------------------------------------------------------------------- diff --git a/api/src/main/java/brooklyn/management/Task.java b/api/src/main/java/brooklyn/management/Task.java deleted file mode 100644 index d6dc401..0000000 --- a/api/src/main/java/brooklyn/management/Task.java +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package brooklyn.management; - -import java.util.Set; -import java.util.concurrent.Callable; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.Future; -import java.util.concurrent.FutureTask; -import java.util.concurrent.TimeoutException; - -import com.google.common.util.concurrent.ListenableFuture; - -import brooklyn.util.time.Duration; - -/** - * Represents a unit of work for execution. - * - * When used with an {@link ExecutionManager} or {@link ExecutionContext} it will record submission time, - * execution start time, end time, and any result. A task can be submitted to the ExecutionManager or - * ExecutionContext, in which case it will be returned, or it may be created by submission - * of a {@link Runnable} or {@link Callable} and thereafter it can be treated just like a {@link Future}. - */ -public interface Task<T> extends ListenableFuture<T>, TaskAdaptable<T> { - - public String getId(); - - public Set<Object> getTags(); - /** if {@link #isSubmitted()} returns the time when the task was submitted; or -1 otherwise */ - public long getSubmitTimeUtc(); - /** if {@link #isBegun()} returns the time when the task was starts; - * guaranteed to be >= {@link #getSubmitTimeUtc()} > 0 if started, or -1 otherwise */ - public long getStartTimeUtc(); - /** if {@link #isDone()} (for any reason) returns the time when the task ended; - * guaranteed to be >= {@link #getStartTimeUtc()} > 0 if ended, or -1 otherwise */ - public long getEndTimeUtc(); - public String getDisplayName(); - public String getDescription(); - - /** task which submitted this task, if was submitted by a task */ - public Task<?> getSubmittedByTask(); - - /** The thread where the task is running, if it is running. */ - public Thread getThread(); - - /** - * Whether task has been submitted - * - * Submitted tasks are normally expected to start running then complete, - * but unsubmitted tasks are sometimes passed around for someone else to submit them. - */ - public boolean isSubmitted(); - - /** - * Whether task has started running. - * - * Will remain true after normal completion or non-cancellation error. - * will be true on cancel iff the thread did actually start. - */ - public boolean isBegun(); - - /** - * Whether the task threw an error, including cancellation (implies {@link #isDone()}) - */ - public boolean isError(); - - /** - * Causes calling thread to block until the task is started. - */ - public void blockUntilStarted(); - - /** - * Causes calling thread to block until the task is ended. - * <p> - * Either normally or by cancellation or error, but without throwing error on cancellation or error. - * (Errors are logged at debug.) - */ - public void blockUntilEnded(); - - /** - * As {@link #blockUntilEnded()}, but returning after the given timeout; - * true if the task has ended and false otherwise - */ - public boolean blockUntilEnded(Duration timeout); - - public String getStatusSummary(); - - /** - * Returns detailed status, suitable for a hover. - * - * Plain-text format, with new-lines (and sometimes extra info) if multiline enabled. - */ - public String getStatusDetail(boolean multiline); - - /** As {@link #get(long, java.util.concurrent.TimeUnit)} */ - public T get(Duration duration) throws InterruptedException, ExecutionException, TimeoutException; - - /** As {@link #get()}, but propagating checked exceptions as unchecked for convenience. */ - public T getUnchecked(); - - /** As {@link #get()}, but propagating checked exceptions as unchecked for convenience - * (including a {@link TimeoutException} if the duration expires) */ - public T getUnchecked(Duration duration); - - /** As {@link Future#cancel(boolean)}. Note that {@link #isDone()} and {@link #blockUntilEnded(Duration)} return immediately - * once a task is cancelled, consistent with the underlying {@link FutureTask} behaviour. - * TODO Fine-grained control over underlying jobs, e.g. to ensure anything represented by this task is actually completed, - * is not (yet) publicly exposed. See the convenience method blockUntilInternalTasksEnded in the Tasks set of helpers - * for more discussion. */ - public boolean cancel(boolean mayInterruptIfRunning); - -}
