public abstract class AbstractCloudMachineProvisioningLocation extends AbstractLocation implements MachineProvisioningLocation<MachineLocation>, CloudLocationConfig
BrooklynObject.TagSupportConfigurable.ConfigurationSupportBrooklynObjectInternal.ConfigurationSupportInternalLOG, PARENT_LOCATION, TEMPORARY_LOCATIONACCESS_CREDENTIAL, ACCESS_IDENTITY, ADDITIONAL_INBOUND_PORTS, CALLER_CONTEXT, CLOUD_AVAILABILITY_ZONE_ID, CLOUD_ENDPOINT, CLOUD_REGION_ID, DESTROY_ON_FAILURE, DOMAIN_NAME, INBOUND_PORTS, LEGACY_PRIVATE_KEY_DATA, LEGACY_PRIVATE_KEY_FILE, LEGACY_PRIVATE_KEY_PASSPHRASE, LEGACY_PUBLIC_KEY_DATA, LEGACY_PUBLIC_KEY_FILE, LOG_CREDENTIALS, MIN_CORES, MIN_DISK, MIN_RAM, OS_64_BIT, PASSWORD, PRIVATE_KEY_DATA, PRIVATE_KEY_FILE, PRIVATE_KEY_PASSPHRASE, PUBLIC_KEY_DATA, PUBLIC_KEY_FILE, USER, VM_NAME_MAX_LENGTH, VM_NAME_SALT_LENGTH, WAIT_FOR_SSHABLE, WAIT_FOR_WINRM_AVAILABLEFINAL_SPEC, NAMED_SPEC_NAME, ORIGINAL_SPEC| Constructor and Description |
|---|
AbstractCloudMachineProvisioningLocation() |
AbstractCloudMachineProvisioningLocation(java.util.Map<?,?> conf)
typically wants at least ACCESS_IDENTITY and ACCESS_CREDENTIAL
|
| Modifier and Type | Method and Description |
|---|---|
java.util.Map<java.lang.String,java.lang.Object> |
getProvisioningFlags(java.util.Collection<java.lang.String> tags)
Gets flags, suitable as an argument to
MachineProvisioningLocation.obtain(Map). |
AbstractCloudMachineProvisioningLocation |
newSubLocation(java.lang.Class<? extends AbstractCloudMachineProvisioningLocation> type,
java.util.Map<?,?> newFlags) |
AbstractCloudMachineProvisioningLocation |
newSubLocation(java.util.Map<?,?> newFlags)
uses reflection to create an object of the same type, assuming a Map constructor;
subclasses can extend and downcast the result
|
addChild, addExtension, config, configure, containsLocation, equals, getAllConfig, getAllConfigBag, getChildren, getConfig, getConfig, getDisplayName, getExtension, getHostGeoInfo, getLocalConfigBag, getParent, getRawLocalConfigBag, getRebindSupport, hasConfig, hasExtension, hashCode, isManaged, onManagementStarted, onManagementStopped, removeChild, setConfig, setDisplayName, setHostGeoInfo, setManagementContext, setName, setParent, setParent, toMetadataRecord, toString, toVerboseStringgetCatalogItemId, getId, getManagementContext, getTagSupport, init, rebind, setCatalogItemId, tagsobtain, releasecontainsLocation, getAllConfig, getChildren, getConfig, getConfig, getDisplayName, getExtension, getId, getParent, hasConfig, hasExtension, setParent, toVerboseStringgetCatalogItemId, getTagSupport, tagsconfig, setConfiggetManagementContextsetCatalogItemIdpublic AbstractCloudMachineProvisioningLocation()
public AbstractCloudMachineProvisioningLocation(java.util.Map<?,?> conf)
public AbstractCloudMachineProvisioningLocation newSubLocation(java.util.Map<?,?> newFlags)
newSubLocation in interface MachineProvisioningLocation<MachineLocation>public AbstractCloudMachineProvisioningLocation newSubLocation(java.lang.Class<? extends AbstractCloudMachineProvisioningLocation> type, java.util.Map<?,?> newFlags)
public java.util.Map<java.lang.String,java.lang.Object> getProvisioningFlags(java.util.Collection<java.lang.String> tags)
MachineProvisioningLocationMachineProvisioningLocation.obtain(Map). The tags provided give
hints about the machine required. The provisioning-location could be configured to
understand those tags.
For example, an AWS-location could be configured to understand that a particular entity
type (e.g. "TomcatServer") requires a particular AMI in that region, so would return the
required image id.getProvisioningFlags in interface MachineProvisioningLocation<MachineLocation>