Brooklyn

brooklyn.location.jclouds.pool
[Java] Class ReusableMachineTemplate

java.lang.Object
  brooklyn.location.jclouds.templates.AbstractPortableTemplateBuilder
      brooklyn.location.jclouds.templates.PortableTemplateBuilder
          brooklyn.location.jclouds.pool.ReusableMachineTemplate

public class ReusableMachineTemplate
extends PortableTemplateBuilder

A facility for having a template we can declare without knowing the provider, then find matching instances, create instances, and generally manipulate them.

NB: to be sure of matching a specific template, you should provide a unique id in the constructor. (this will force 'strict' mode.)


Field Summary
static java.lang.String DESCRIPTION_METADATA_KEY

static java.lang.String HASH_METADATA_KEY

static java.lang.String NAME_METADATA_KEY

static java.lang.String PREFIX

static java.lang.String TEMPLATE_OWNER_METADATA_KEY

 
Fields inherited from class AbstractPortableTemplateBuilder
commands
 
Constructor Summary
ReusableMachineTemplate()

ReusableMachineTemplate(java.lang.String name)

 
Method Summary
protected void addStrictOptions(java.util.List result)

ReusableMachineTemplate description(java.lang.String description)

see #getDescription()

java.util.List getAdditionalOptionalOptions()

java.util.List getAdditionalOptions()

java.lang.String getDescription()

a description for this template; this is set on created machines but _not_ used to filter them (so you can change description freely).

java.lang.String getName()

human-friendly name for this template. should normally be unique, it is the primary differentiator for strict matching.

java.lang.String getOwner()

java.util.Set getTags(boolean includeOptional)

computes the tags that this template will set (argument true) or require to match (argument false)

java.util.Map getUserMetadata(boolean includeOptional)

computes the user metadata that this template will set (argument true) or required to match (argument false)

boolean isStrict()

ReusableMachineTemplate metadata(java.lang.String key, java.lang.String value)

ReusableMachineTemplate metadata(java.util.Map m)

ReusableMachineTemplate metadataOptional(java.lang.String key, java.lang.String value)

ReusableMachineTemplate metadataOptional(java.util.Map m)

ReusableMachineTemplate name(java.lang.String name)

see #getName()

ReusableMachineTemplate strict(boolean strict)

whether this template only matches machines instances created from this template; defaults true if a name is set, otherwise false.

ReusableMachineTemplate tag(java.lang.String tag)

ReusableMachineTemplate tagOptional(java.lang.String tag)

ReusableMachineTemplate tags(java.lang.String... tags)

ReusableMachineTemplate tagsOptional(java.lang.String... tags)

ReusableMachineTemplate templateOwnedByMe()

adds user.name as owner of this template

ReusableMachineTemplate templateOwner(java.lang.String owner)

adds an owner tag to this template

ReusableMachineTemplate templateUnowned()

no owner, means anyone can pick this up (default)

java.lang.String toString()

 
Methods inherited from class PortableTemplateBuilder
addOptionalOptions, addTemplateOptions, attachComputeService, build, computeAggregatedOptions, from, from, getAdditionalOptionalOptions, makeNonTrivialArgumentsString, newJcloudsTemplate, newJcloudsTemplateBuilder
 
Methods inherited from class AbstractPortableTemplateBuilder
addOptions, any, biggest, blank, equals, fastest, fromHardware, fromImage, fromTemplate, getAdditionalOptions, getHardware, getHardwareId, getHypervisorMatchesRegex, getImage, getImageDescriptionMatchesRegex, getImageId, getImageMatchesCondition, getImageNameMatchesRegex, getImageVersionMatchesRegex, getIs64bit, getLocationId, getMinCores, getMinDisk, getMinRam, getOptions, getOsArchitectureMatchesRegex, getOsDescriptionMatchesRegex, getOsFamily, getOsNameMatchesRegex, getOsVersionMatchesRegex, getTemplate, hardwareId, hashCode, hypervisorMatches, imageDescriptionMatches, imageId, imageMatches, imageNameMatches, imageVersionMatches, isBlank, locationId, makeNonTrivialArgumentsString, minCores, minDisk, minRam, options, os64Bit, osArchMatches, osDescriptionMatches, osFamily, osNameMatches, osVersionMatches, smallest, toString
 

Field Detail

DESCRIPTION_METADATA_KEY

public static final java.lang.String DESCRIPTION_METADATA_KEY


HASH_METADATA_KEY

public static final java.lang.String HASH_METADATA_KEY


NAME_METADATA_KEY

public static final java.lang.String NAME_METADATA_KEY


PREFIX

public static final java.lang.String PREFIX


TEMPLATE_OWNER_METADATA_KEY

public static final java.lang.String TEMPLATE_OWNER_METADATA_KEY


 
Constructor Detail

ReusableMachineTemplate

public ReusableMachineTemplate()


ReusableMachineTemplate

public ReusableMachineTemplate(java.lang.String name)


 
Method Detail

addStrictOptions

protected void addStrictOptions(java.util.List result)


description

public ReusableMachineTemplate description(java.lang.String description)
see #getDescription()


getAdditionalOptionalOptions

@Override
public java.util.List getAdditionalOptionalOptions()


getAdditionalOptions

@Override
public java.util.List getAdditionalOptions()


getDescription

public java.lang.String getDescription()
a description for this template; this is set on created machines but _not_ used to filter them (so you can change description freely).


getName

public java.lang.String getName()
human-friendly name for this template. should normally be unique, it is the primary differentiator for strict matching.


getOwner

public java.lang.String getOwner()


getTags

public java.util.Set getTags(boolean includeOptional)
computes the tags that this template will set (argument true) or require to match (argument false)


getUserMetadata

public java.util.Map getUserMetadata(boolean includeOptional)
computes the user metadata that this template will set (argument true) or required to match (argument false)


isStrict

public boolean isStrict()


metadata

public ReusableMachineTemplate metadata(java.lang.String key, java.lang.String value)


metadata

public ReusableMachineTemplate metadata(java.util.Map m)


metadataOptional

public ReusableMachineTemplate metadataOptional(java.lang.String key, java.lang.String value)


metadataOptional

public ReusableMachineTemplate metadataOptional(java.util.Map m)


name

public ReusableMachineTemplate name(java.lang.String name)
see #getName()


strict

public ReusableMachineTemplate strict(boolean strict)
whether this template only matches machines instances created from this template; defaults true if a name is set, otherwise false. if false, it will ignore name, owner, and hashcode


tag

public ReusableMachineTemplate tag(java.lang.String tag)


tagOptional

public ReusableMachineTemplate tagOptional(java.lang.String tag)


tags

public ReusableMachineTemplate tags(java.lang.String... tags)


tagsOptional

public ReusableMachineTemplate tagsOptional(java.lang.String... tags)


templateOwnedByMe

public ReusableMachineTemplate templateOwnedByMe()
adds user.name as owner of this template


templateOwner

public ReusableMachineTemplate templateOwner(java.lang.String owner)
adds an owner tag to this template


templateUnowned

public ReusableMachineTemplate templateUnowned()
no owner, means anyone can pick this up (default)


toString

@Override
public java.lang.String toString()


 

Brooklyn Multi-Cloud Application Management Platform
brooklyncentral.github.com. Apache License. © 2012.