Skip to content

Commit

Permalink
Added support for tagging to the Elastic Load Balancing client.
Browse files Browse the repository at this point in the history
  • Loading branch information
jeremeamia committed Aug 11, 2014
1 parent a013a71 commit 0fd144a
Show file tree
Hide file tree
Showing 3 changed files with 238 additions and 5 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
@@ -1,6 +1,11 @@
CHANGELOG
=========

Next Release
------------

* Added support for tagging to the Elastic Load Balancing client.

2.6.13 (2014-07-31)
-------------------

Expand Down
3 changes: 3 additions & 0 deletions src/Aws/ElasticLoadBalancing/ElasticLoadBalancingClient.php
Expand Up @@ -26,6 +26,7 @@
/**
* Client to interact with Elastic Load Balancing
*
* @method Model addTags(array $args = array()) {@command ElasticLoadBalancing AddTags}
* @method Model applySecurityGroupsToLoadBalancer(array $args = array()) {@command ElasticLoadBalancing ApplySecurityGroupsToLoadBalancer}
* @method Model attachLoadBalancerToSubnets(array $args = array()) {@command ElasticLoadBalancing AttachLoadBalancerToSubnets}
* @method Model configureHealthCheck(array $args = array()) {@command ElasticLoadBalancing ConfigureHealthCheck}
Expand All @@ -43,11 +44,13 @@
* @method Model describeLoadBalancerPolicies(array $args = array()) {@command ElasticLoadBalancing DescribeLoadBalancerPolicies}
* @method Model describeLoadBalancerPolicyTypes(array $args = array()) {@command ElasticLoadBalancing DescribeLoadBalancerPolicyTypes}
* @method Model describeLoadBalancers(array $args = array()) {@command ElasticLoadBalancing DescribeLoadBalancers}
* @method Model describeTags(array $args = array()) {@command ElasticLoadBalancing DescribeTags}
* @method Model detachLoadBalancerFromSubnets(array $args = array()) {@command ElasticLoadBalancing DetachLoadBalancerFromSubnets}
* @method Model disableAvailabilityZonesForLoadBalancer(array $args = array()) {@command ElasticLoadBalancing DisableAvailabilityZonesForLoadBalancer}
* @method Model enableAvailabilityZonesForLoadBalancer(array $args = array()) {@command ElasticLoadBalancing EnableAvailabilityZonesForLoadBalancer}
* @method Model modifyLoadBalancerAttributes(array $args = array()) {@command ElasticLoadBalancing ModifyLoadBalancerAttributes}
* @method Model registerInstancesWithLoadBalancer(array $args = array()) {@command ElasticLoadBalancing RegisterInstancesWithLoadBalancer}
* @method Model removeTags(array $args = array()) {@command ElasticLoadBalancing RemoveTags}
* @method Model setLoadBalancerListenerSSLCertificate(array $args = array()) {@command ElasticLoadBalancing SetLoadBalancerListenerSSLCertificate}
* @method Model setLoadBalancerPoliciesForBackendServer(array $args = array()) {@command ElasticLoadBalancing SetLoadBalancerPoliciesForBackendServer}
* @method Model setLoadBalancerPoliciesOfListener(array $args = array()) {@command ElasticLoadBalancing SetLoadBalancerPoliciesOfListener}
Expand Down
Expand Up @@ -75,6 +75,72 @@
),
),
'operations' => array(
'AddTags' => array(
'httpMethod' => 'POST',
'uri' => '/',
'class' => 'Aws\\Common\\Command\\QueryCommand',
'responseClass' => 'EmptyOutput',
'responseType' => 'model',
'parameters' => array(
'Action' => array(
'static' => true,
'location' => 'aws.query',
'default' => 'AddTags',
),
'Version' => array(
'static' => true,
'location' => 'aws.query',
'default' => '2012-06-01',
),
'LoadBalancerNames' => array(
'required' => true,
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'LoadBalancerNames.member',
'items' => array(
'name' => 'AccessPointName',
'type' => 'string',
),
),
'Tags' => array(
'required' => true,
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'Tags.member',
'minItems' => 1,
'items' => array(
'name' => 'Tag',
'type' => 'object',
'properties' => array(
'Key' => array(
'required' => true,
'type' => 'string',
'minLength' => 1,
'maxLength' => 128,
),
'Value' => array(
'type' => 'string',
'maxLength' => 256,
),
),
),
),
),
'errorResponses' => array(
array(
'reason' => 'The specified load balancer could not be found.',
'class' => 'AccessPointNotFoundException',
),
array(
'reason' => 'The quota for the number of tags that can be assigned to a load balancer has been reached.',
'class' => 'TooManyTagsException',
),
array(
'reason' => 'The same tag key specified multiple times.',
'class' => 'DuplicateTagKeysException',
),
),
),
'ApplySecurityGroupsToLoadBalancer' => array(
'httpMethod' => 'POST',
'uri' => '/',
Expand Down Expand Up @@ -428,10 +494,32 @@
'type' => 'string',
'location' => 'aws.query',
),
'Tags' => array(
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'Tags.member',
'minItems' => 1,
'items' => array(
'name' => 'Tag',
'type' => 'object',
'properties' => array(
'Key' => array(
'required' => true,
'type' => 'string',
'minLength' => 1,
'maxLength' => 128,
),
'Value' => array(
'type' => 'string',
'maxLength' => 256,
),
),
),
),
),
'errorResponses' => array(
array(
'reason' => 'Load balancer name already exists for this account. Please choose another name.',
'reason' => 'The load balancer name already exists for this account. Please choose another name.',
'class' => 'DuplicateAccessPointNameException',
),
array(
Expand Down Expand Up @@ -462,6 +550,14 @@
'reason' => 'Invalid value for scheme. Scheme can only be specified for load balancers in VPC.',
'class' => 'InvalidSchemeException',
),
array(
'reason' => 'The quota for the number of tags that can be assigned to a load balancer has been reached.',
'class' => 'TooManyTagsException',
),
array(
'reason' => 'The same tag key specified multiple times.',
'class' => 'DuplicateTagKeysException',
),
),
),
'CreateLoadBalancerListeners' => array(
Expand Down Expand Up @@ -965,6 +1061,43 @@
),
),
),
'DescribeTags' => array(
'httpMethod' => 'POST',
'uri' => '/',
'class' => 'Aws\\Common\\Command\\QueryCommand',
'responseClass' => 'DescribeTagsOutput',
'responseType' => 'model',
'parameters' => array(
'Action' => array(
'static' => true,
'location' => 'aws.query',
'default' => 'DescribeTags',
),
'Version' => array(
'static' => true,
'location' => 'aws.query',
'default' => '2012-06-01',
),
'LoadBalancerNames' => array(
'required' => true,
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'LoadBalancerNames.member',
'minItems' => 1,
'maxItems' => 20,
'items' => array(
'name' => 'AccessPointName',
'type' => 'string',
),
),
),
'errorResponses' => array(
array(
'reason' => 'The specified load balancer could not be found.',
'class' => 'AccessPointNotFoundException',
),
),
),
'DetachLoadBalancerFromSubnets' => array(
'httpMethod' => 'POST',
'uri' => '/',
Expand Down Expand Up @@ -1240,6 +1373,59 @@
),
),
),
'RemoveTags' => array(
'httpMethod' => 'POST',
'uri' => '/',
'class' => 'Aws\\Common\\Command\\QueryCommand',
'responseClass' => 'EmptyOutput',
'responseType' => 'model',
'parameters' => array(
'Action' => array(
'static' => true,
'location' => 'aws.query',
'default' => 'RemoveTags',
),
'Version' => array(
'static' => true,
'location' => 'aws.query',
'default' => '2012-06-01',
),
'LoadBalancerNames' => array(
'required' => true,
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'LoadBalancerNames.member',
'items' => array(
'name' => 'AccessPointName',
'type' => 'string',
),
),
'Tags' => array(
'required' => true,
'type' => 'array',
'location' => 'aws.query',
'sentAs' => 'Tags.member',
'minItems' => 1,
'items' => array(
'name' => 'TagKeyOnly',
'type' => 'object',
'properties' => array(
'Key' => array(
'type' => 'string',
'minLength' => 1,
'maxLength' => 128,
),
),
),
),
),
'errorResponses' => array(
array(
'reason' => 'The specified load balancer could not be found.',
'class' => 'AccessPointNotFoundException',
),
),
),
'SetLoadBalancerListenerSSLCertificate' => array(
'httpMethod' => 'POST',
'uri' => '/',
Expand Down Expand Up @@ -1404,6 +1590,10 @@
),
),
'models' => array(
'EmptyOutput' => array(
'type' => 'object',
'additionalProperties' => true,
),
'ApplySecurityGroupsToLoadBalancerOutput' => array(
'type' => 'object',
'additionalProperties' => true,
Expand Down Expand Up @@ -1461,10 +1651,6 @@
),
),
),
'EmptyOutput' => array(
'type' => 'object',
'additionalProperties' => true,
),
'CreateAccessPointOutput' => array(
'type' => 'object',
'additionalProperties' => true,
Expand Down Expand Up @@ -1881,6 +2067,42 @@
),
),
),
'DescribeTagsOutput' => array(
'type' => 'object',
'additionalProperties' => true,
'properties' => array(
'TagDescriptions' => array(
'type' => 'array',
'location' => 'xml',
'items' => array(
'name' => 'TagDescription',
'type' => 'object',
'sentAs' => 'member',
'properties' => array(
'LoadBalancerName' => array(
'type' => 'string',
),
'Tags' => array(
'type' => 'array',
'items' => array(
'name' => 'Tag',
'type' => 'object',
'sentAs' => 'member',
'properties' => array(
'Key' => array(
'type' => 'string',
),
'Value' => array(
'type' => 'string',
),
),
),
),
),
),
),
),
),
'DetachLoadBalancerFromSubnetsOutput' => array(
'type' => 'object',
'additionalProperties' => true,
Expand Down Expand Up @@ -2022,5 +2244,8 @@
'output_token' => 'NextMarker',
'result_key' => 'LoadBalancerDescriptions',
),
'DescribeTags' => array(
'result_key' => 'TagDescriptions',
),
),
);

0 comments on commit 0fd144a

Please sign in to comment.