amazonka-elasticache 0.3.6 → 1.0.0
raw patch · 48 files changed
+10093/−7915 lines, 48 filesdep +amazonka-elasticachedep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok
version bump matches the API change (PVP)
Dependencies added: amazonka-elasticache, amazonka-test, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers
Dependency ranges changed: amazonka-core, base
API changes (from Hackage documentation)
- Network.AWS.ElastiCache.AddTagsToResource: addTagsToResourceResponse :: AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: attrrTagList :: Lens' AddTagsToResourceResponse [Tag]
- Network.AWS.ElastiCache.AddTagsToResource: data AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance Eq AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance FromXML AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance IsList AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance Monoid AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance Read AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance Semigroup AddTagsToResourceResponse
- Network.AWS.ElastiCache.AddTagsToResource: instance Show AddTagsToResourceResponse
- Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: acsgirCacheSecurityGroup :: Lens' AuthorizeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)
- Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance FromXML AuthorizeCacheSecurityGroupIngressResponse
- Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Ord AuthorizeCacheSecurityGroupIngress
- Network.AWS.ElastiCache.CopySnapshot: csrSnapshot :: Lens' CopySnapshotResponse (Maybe Snapshot)
- Network.AWS.ElastiCache.CopySnapshot: instance FromXML CopySnapshotResponse
- Network.AWS.ElastiCache.CopySnapshot: instance Ord CopySnapshot
- Network.AWS.ElastiCache.CreateCacheCluster: cccNotificationTopicArn :: Lens' CreateCacheCluster (Maybe Text)
- Network.AWS.ElastiCache.CreateCacheCluster: cccSnapshotArns :: Lens' CreateCacheCluster [Text]
- Network.AWS.ElastiCache.CreateCacheCluster: cccrCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster)
- Network.AWS.ElastiCache.CreateCacheCluster: instance FromXML CreateCacheClusterResponse
- Network.AWS.ElastiCache.CreateCacheParameterGroup: ccpgrCacheParameterGroup :: Lens' CreateCacheParameterGroupResponse (Maybe CacheParameterGroup)
- Network.AWS.ElastiCache.CreateCacheParameterGroup: instance FromXML CreateCacheParameterGroupResponse
- Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Ord CreateCacheParameterGroup
- Network.AWS.ElastiCache.CreateCacheSecurityGroup: ccsgrCacheSecurityGroup :: Lens' CreateCacheSecurityGroupResponse (Maybe CacheSecurityGroup)
- Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance FromXML CreateCacheSecurityGroupResponse
- Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Ord CreateCacheSecurityGroup
- Network.AWS.ElastiCache.CreateCacheSubnetGroup: ccsgrCacheSubnetGroup :: Lens' CreateCacheSubnetGroupResponse (Maybe CacheSubnetGroup)
- Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance FromXML CreateCacheSubnetGroupResponse
- Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Ord CreateCacheSubnetGroup
- Network.AWS.ElastiCache.CreateReplicationGroup: crgNotificationTopicArn :: Lens' CreateReplicationGroup (Maybe Text)
- Network.AWS.ElastiCache.CreateReplicationGroup: crgSnapshotArns :: Lens' CreateReplicationGroup [Text]
- Network.AWS.ElastiCache.CreateReplicationGroup: crgrReplicationGroup :: Lens' CreateReplicationGroupResponse (Maybe ReplicationGroup)
- Network.AWS.ElastiCache.CreateReplicationGroup: instance FromXML CreateReplicationGroupResponse
- Network.AWS.ElastiCache.CreateSnapshot: csr1Snapshot :: Lens' CreateSnapshotResponse (Maybe Snapshot)
- Network.AWS.ElastiCache.CreateSnapshot: instance FromXML CreateSnapshotResponse
- Network.AWS.ElastiCache.CreateSnapshot: instance Ord CreateSnapshot
- Network.AWS.ElastiCache.DeleteCacheCluster: dccrCacheCluster :: Lens' DeleteCacheClusterResponse (Maybe CacheCluster)
- Network.AWS.ElastiCache.DeleteCacheCluster: instance FromXML DeleteCacheClusterResponse
- Network.AWS.ElastiCache.DeleteCacheCluster: instance Ord DeleteCacheCluster
- Network.AWS.ElastiCache.DeleteCacheParameterGroup: dcpg1CacheParameterGroupName :: Lens' DeleteCacheParameterGroup Text
- Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance IsString DeleteCacheParameterGroup
- Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Monoid DeleteCacheParameterGroup
- Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Ord DeleteCacheParameterGroup
- Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Ord DeleteCacheParameterGroupResponse
- Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance IsString DeleteCacheSecurityGroup
- Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Monoid DeleteCacheSecurityGroup
- Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Ord DeleteCacheSecurityGroup
- Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Ord DeleteCacheSecurityGroupResponse
- Network.AWS.ElastiCache.DeleteCacheSubnetGroup: dcsg1CacheSubnetGroupName :: Lens' DeleteCacheSubnetGroup Text
- Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance IsString DeleteCacheSubnetGroup
- Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Monoid DeleteCacheSubnetGroup
- Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Ord DeleteCacheSubnetGroup
- Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Ord DeleteCacheSubnetGroupResponse
- Network.AWS.ElastiCache.DeleteReplicationGroup: drgrReplicationGroup :: Lens' DeleteReplicationGroupResponse (Maybe ReplicationGroup)
- Network.AWS.ElastiCache.DeleteReplicationGroup: instance FromXML DeleteReplicationGroupResponse
- Network.AWS.ElastiCache.DeleteReplicationGroup: instance Ord DeleteReplicationGroup
- Network.AWS.ElastiCache.DeleteSnapshot: ds1SnapshotName :: Lens' DeleteSnapshot Text
- Network.AWS.ElastiCache.DeleteSnapshot: dsrSnapshot :: Lens' DeleteSnapshotResponse (Maybe Snapshot)
- Network.AWS.ElastiCache.DeleteSnapshot: instance FromXML DeleteSnapshotResponse
- Network.AWS.ElastiCache.DeleteSnapshot: instance IsString DeleteSnapshot
- Network.AWS.ElastiCache.DeleteSnapshot: instance Monoid DeleteSnapshot
- Network.AWS.ElastiCache.DeleteSnapshot: instance Ord DeleteSnapshot
- Network.AWS.ElastiCache.DescribeCacheClusters: dcc1CacheClusterId :: Lens' DescribeCacheClusters (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheClusters: dcc1Marker :: Lens' DescribeCacheClusters (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheClusters: dcc1MaxRecords :: Lens' DescribeCacheClusters (Maybe Int)
- Network.AWS.ElastiCache.DescribeCacheClusters: dcc1ShowCacheNodeInfo :: Lens' DescribeCacheClusters (Maybe Bool)
- Network.AWS.ElastiCache.DescribeCacheClusters: dccrCacheClusters :: Lens' DescribeCacheClustersResponse [CacheCluster]
- Network.AWS.ElastiCache.DescribeCacheClusters: dccrMarker :: Lens' DescribeCacheClustersResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheClusters: instance FromXML DescribeCacheClustersResponse
- Network.AWS.ElastiCache.DescribeCacheClusters: instance Ord DescribeCacheClusters
- Network.AWS.ElastiCache.DescribeCacheEngineVersions: dcevrCacheEngineVersions :: Lens' DescribeCacheEngineVersionsResponse [CacheEngineVersion]
- Network.AWS.ElastiCache.DescribeCacheEngineVersions: dcevrMarker :: Lens' DescribeCacheEngineVersionsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance FromXML DescribeCacheEngineVersionsResponse
- Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Ord DescribeCacheEngineVersions
- Network.AWS.ElastiCache.DescribeCacheParameterGroups: dcpgrCacheParameterGroups :: Lens' DescribeCacheParameterGroupsResponse [CacheParameterGroup]
- Network.AWS.ElastiCache.DescribeCacheParameterGroups: dcpgrMarker :: Lens' DescribeCacheParameterGroupsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance FromXML DescribeCacheParameterGroupsResponse
- Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Ord DescribeCacheParameterGroups
- Network.AWS.ElastiCache.DescribeCacheParameters: dcprCacheNodeTypeSpecificParameters :: Lens' DescribeCacheParametersResponse [CacheNodeTypeSpecificParameter]
- Network.AWS.ElastiCache.DescribeCacheParameters: dcprMarker :: Lens' DescribeCacheParametersResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheParameters: dcprParameters :: Lens' DescribeCacheParametersResponse [Parameter]
- Network.AWS.ElastiCache.DescribeCacheParameters: instance FromXML DescribeCacheParametersResponse
- Network.AWS.ElastiCache.DescribeCacheParameters: instance Ord DescribeCacheParameters
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsg1CacheSecurityGroupName :: Lens' DescribeCacheSecurityGroups (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsg1Marker :: Lens' DescribeCacheSecurityGroups (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsg1MaxRecords :: Lens' DescribeCacheSecurityGroups (Maybe Int)
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgr1CacheSecurityGroups :: Lens' DescribeCacheSecurityGroupsResponse [CacheSecurityGroup]
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgr1Marker :: Lens' DescribeCacheSecurityGroupsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance FromXML DescribeCacheSecurityGroupsResponse
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Ord DescribeCacheSecurityGroups
- Network.AWS.ElastiCache.DescribeCacheSubnetGroups: dcsgrCacheSubnetGroups :: Lens' DescribeCacheSubnetGroupsResponse [CacheSubnetGroup]
- Network.AWS.ElastiCache.DescribeCacheSubnetGroups: dcsgrMarker :: Lens' DescribeCacheSubnetGroupsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance FromXML DescribeCacheSubnetGroupsResponse
- Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Ord DescribeCacheSubnetGroups
- Network.AWS.ElastiCache.DescribeEngineDefaultParameters: dedprEngineDefaults :: Lens' DescribeEngineDefaultParametersResponse EngineDefaults
- Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance FromXML DescribeEngineDefaultParametersResponse
- Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Ord DescribeEngineDefaultParameters
- Network.AWS.ElastiCache.DescribeEvents: derEvents :: Lens' DescribeEventsResponse [Event]
- Network.AWS.ElastiCache.DescribeEvents: derMarker :: Lens' DescribeEventsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeEvents: instance FromXML DescribeEventsResponse
- Network.AWS.ElastiCache.DescribeReplicationGroups: drg1Marker :: Lens' DescribeReplicationGroups (Maybe Text)
- Network.AWS.ElastiCache.DescribeReplicationGroups: drg1MaxRecords :: Lens' DescribeReplicationGroups (Maybe Int)
- Network.AWS.ElastiCache.DescribeReplicationGroups: drg1ReplicationGroupId :: Lens' DescribeReplicationGroups (Maybe Text)
- Network.AWS.ElastiCache.DescribeReplicationGroups: drgrMarker :: Lens' DescribeReplicationGroupsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeReplicationGroups: drgrReplicationGroups :: Lens' DescribeReplicationGroupsResponse [ReplicationGroup]
- Network.AWS.ElastiCache.DescribeReplicationGroups: instance FromXML DescribeReplicationGroupsResponse
- Network.AWS.ElastiCache.DescribeReplicationGroups: instance Ord DescribeReplicationGroups
- Network.AWS.ElastiCache.DescribeReservedCacheNodes: drcnrMarker :: Lens' DescribeReservedCacheNodesResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeReservedCacheNodes: drcnrReservedCacheNodes :: Lens' DescribeReservedCacheNodesResponse [ReservedCacheNode]
- Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance FromXML DescribeReservedCacheNodesResponse
- Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Ord DescribeReservedCacheNodes
- Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: drcnorMarker :: Lens' DescribeReservedCacheNodesOfferingsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: drcnorReservedCacheNodesOfferings :: Lens' DescribeReservedCacheNodesOfferingsResponse [ReservedCacheNodesOffering]
- Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance FromXML DescribeReservedCacheNodesOfferingsResponse
- Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Ord DescribeReservedCacheNodesOfferings
- Network.AWS.ElastiCache.DescribeSnapshots: dsrMarker :: Lens' DescribeSnapshotsResponse (Maybe Text)
- Network.AWS.ElastiCache.DescribeSnapshots: dsrSnapshots :: Lens' DescribeSnapshotsResponse [Snapshot]
- Network.AWS.ElastiCache.DescribeSnapshots: instance FromXML DescribeSnapshotsResponse
- Network.AWS.ElastiCache.DescribeSnapshots: instance Ord DescribeSnapshots
- Network.AWS.ElastiCache.ListTagsForResource: data ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance Eq ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance FromXML ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance IsList ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance IsString ListTagsForResource
- Network.AWS.ElastiCache.ListTagsForResource: instance Monoid ListTagsForResource
- Network.AWS.ElastiCache.ListTagsForResource: instance Monoid ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance Ord ListTagsForResource
- Network.AWS.ElastiCache.ListTagsForResource: instance Read ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance Semigroup ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: instance Show ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: listTagsForResourceResponse :: ListTagsForResourceResponse
- Network.AWS.ElastiCache.ListTagsForResource: ltfrrTagList :: Lens' ListTagsForResourceResponse [Tag]
- Network.AWS.ElastiCache.ModifyCacheCluster: instance FromXML ModifyCacheClusterResponse
- Network.AWS.ElastiCache.ModifyCacheCluster: mccNotificationTopicArn :: Lens' ModifyCacheCluster (Maybe Text)
- Network.AWS.ElastiCache.ModifyCacheCluster: mccrCacheCluster :: Lens' ModifyCacheClusterResponse (Maybe CacheCluster)
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: data ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Eq ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance FromXML ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Monoid ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Ord ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Read ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Show ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: mcpgrCacheParameterGroupName :: Lens' ModifyCacheParameterGroupResponse (Maybe Text)
- Network.AWS.ElastiCache.ModifyCacheParameterGroup: modifyCacheParameterGroupResponse :: ModifyCacheParameterGroupResponse
- Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance FromXML ModifyCacheSubnetGroupResponse
- Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Ord ModifyCacheSubnetGroup
- Network.AWS.ElastiCache.ModifyCacheSubnetGroup: mcsgrCacheSubnetGroup :: Lens' ModifyCacheSubnetGroupResponse (Maybe CacheSubnetGroup)
- Network.AWS.ElastiCache.ModifyReplicationGroup: instance FromXML ModifyReplicationGroupResponse
- Network.AWS.ElastiCache.ModifyReplicationGroup: instance Ord ModifyReplicationGroup
- Network.AWS.ElastiCache.ModifyReplicationGroup: mrgNotificationTopicArn :: Lens' ModifyReplicationGroup (Maybe Text)
- Network.AWS.ElastiCache.ModifyReplicationGroup: mrgrReplicationGroup :: Lens' ModifyReplicationGroupResponse (Maybe ReplicationGroup)
- Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance FromXML PurchaseReservedCacheNodesOfferingResponse
- Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Ord PurchaseReservedCacheNodesOffering
- Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: prcnorReservedCacheNode :: Lens' PurchaseReservedCacheNodesOfferingResponse (Maybe ReservedCacheNode)
- Network.AWS.ElastiCache.RebootCacheCluster: instance FromXML RebootCacheClusterResponse
- Network.AWS.ElastiCache.RebootCacheCluster: instance Ord RebootCacheCluster
- Network.AWS.ElastiCache.RebootCacheCluster: rccrCacheCluster :: Lens' RebootCacheClusterResponse (Maybe CacheCluster)
- Network.AWS.ElastiCache.RemoveTagsFromResource: data RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Eq RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance FromXML RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance IsList RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Monoid RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Ord RemoveTagsFromResource
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Read RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Semigroup RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: instance Show RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: removeTagsFromResourceResponse :: RemoveTagsFromResourceResponse
- Network.AWS.ElastiCache.RemoveTagsFromResource: rtfrrTagList :: Lens' RemoveTagsFromResourceResponse [Tag]
- Network.AWS.ElastiCache.ResetCacheParameterGroup: data ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Eq ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance FromXML ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Monoid ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Ord ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Read ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Show ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.ResetCacheParameterGroup: rcpgrCacheParameterGroupName :: Lens' ResetCacheParameterGroupResponse (Maybe Text)
- Network.AWS.ElastiCache.ResetCacheParameterGroup: resetCacheParameterGroupResponse :: ResetCacheParameterGroupResponse
- Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance FromXML RevokeCacheSecurityGroupIngressResponse
- Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Ord RevokeCacheSecurityGroupIngress
- Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: rcsgirCacheSecurityGroup :: Lens' RevokeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)
- Network.AWS.ElastiCache.Types: STCacheCluster :: SourceType
- Network.AWS.ElastiCache.Types: STCacheParameterGroup :: SourceType
- Network.AWS.ElastiCache.Types: STCacheSecurityGroup :: SourceType
- Network.AWS.ElastiCache.Types: STCacheSubnetGroup :: SourceType
- Network.AWS.ElastiCache.Types: csgVpcId :: Lens' CacheSubnetGroup (Maybe Text)
- Network.AWS.ElastiCache.Types: data RESTError :: *
- Network.AWS.ElastiCache.Types: ecsgEC2SecurityGroupName :: Lens' EC2SecurityGroup (Maybe Text)
- Network.AWS.ElastiCache.Types: ecsgEC2SecurityGroupOwnerId :: Lens' EC2SecurityGroup (Maybe Text)
- Network.AWS.ElastiCache.Types: ecsgStatus :: Lens' EC2SecurityGroup (Maybe Text)
- Network.AWS.ElastiCache.Types: instance Constructor C1_0AZMode
- Network.AWS.ElastiCache.Types: instance Constructor C1_0AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_0PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_0SourceType
- Network.AWS.ElastiCache.Types: instance Constructor C1_1AZMode
- Network.AWS.ElastiCache.Types: instance Constructor C1_1AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_1PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_1SourceType
- Network.AWS.ElastiCache.Types: instance Constructor C1_2AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_2SourceType
- Network.AWS.ElastiCache.Types: instance Constructor C1_3AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Constructor C1_3SourceType
- Network.AWS.ElastiCache.Types: instance Datatype D1AZMode
- Network.AWS.ElastiCache.Types: instance Datatype D1AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Datatype D1PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Datatype D1SourceType
- Network.AWS.ElastiCache.Types: instance Enum AZMode
- Network.AWS.ElastiCache.Types: instance Enum AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Enum PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Enum SourceType
- Network.AWS.ElastiCache.Types: instance Eq AZMode
- Network.AWS.ElastiCache.Types: instance Eq AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Eq AvailabilityZone
- Network.AWS.ElastiCache.Types: instance Eq CacheCluster
- Network.AWS.ElastiCache.Types: instance Eq CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance Eq CacheNode
- Network.AWS.ElastiCache.Types: instance Eq CacheNodeTypeSpecificParameter
- Network.AWS.ElastiCache.Types: instance Eq CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance Eq CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance Eq CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance Eq CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance Eq CacheSecurityGroup
- Network.AWS.ElastiCache.Types: instance Eq CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Eq CacheSubnetGroup
- Network.AWS.ElastiCache.Types: instance Eq EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance Eq Endpoint
- Network.AWS.ElastiCache.Types: instance Eq EngineDefaults
- Network.AWS.ElastiCache.Types: instance Eq Event
- Network.AWS.ElastiCache.Types: instance Eq NodeGroup
- Network.AWS.ElastiCache.Types: instance Eq NodeGroupMember
- Network.AWS.ElastiCache.Types: instance Eq NodeSnapshot
- Network.AWS.ElastiCache.Types: instance Eq NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance Eq Parameter
- Network.AWS.ElastiCache.Types: instance Eq ParameterNameValue
- Network.AWS.ElastiCache.Types: instance Eq PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Eq PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Eq RecurringCharge
- Network.AWS.ElastiCache.Types: instance Eq ReplicationGroup
- Network.AWS.ElastiCache.Types: instance Eq ReplicationGroupPendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Eq ReservedCacheNode
- Network.AWS.ElastiCache.Types: instance Eq ReservedCacheNodesOffering
- Network.AWS.ElastiCache.Types: instance Eq SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Eq Snapshot
- Network.AWS.ElastiCache.Types: instance Eq SourceType
- Network.AWS.ElastiCache.Types: instance Eq Subnet
- Network.AWS.ElastiCache.Types: instance Eq Tag
- Network.AWS.ElastiCache.Types: instance Eq TagListMessage
- Network.AWS.ElastiCache.Types: instance FromText AZMode
- Network.AWS.ElastiCache.Types: instance FromText AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance FromText PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance FromText SourceType
- Network.AWS.ElastiCache.Types: instance FromXML AZMode
- Network.AWS.ElastiCache.Types: instance FromXML AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance FromXML AvailabilityZone
- Network.AWS.ElastiCache.Types: instance FromXML CacheCluster
- Network.AWS.ElastiCache.Types: instance FromXML CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance FromXML CacheNode
- Network.AWS.ElastiCache.Types: instance FromXML CacheNodeTypeSpecificParameter
- Network.AWS.ElastiCache.Types: instance FromXML CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance FromXML CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance FromXML CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance FromXML CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance FromXML CacheSecurityGroup
- Network.AWS.ElastiCache.Types: instance FromXML CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance FromXML CacheSubnetGroup
- Network.AWS.ElastiCache.Types: instance FromXML EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance FromXML Endpoint
- Network.AWS.ElastiCache.Types: instance FromXML EngineDefaults
- Network.AWS.ElastiCache.Types: instance FromXML Event
- Network.AWS.ElastiCache.Types: instance FromXML NodeGroup
- Network.AWS.ElastiCache.Types: instance FromXML NodeGroupMember
- Network.AWS.ElastiCache.Types: instance FromXML NodeSnapshot
- Network.AWS.ElastiCache.Types: instance FromXML NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance FromXML Parameter
- Network.AWS.ElastiCache.Types: instance FromXML ParameterNameValue
- Network.AWS.ElastiCache.Types: instance FromXML PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance FromXML PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance FromXML RecurringCharge
- Network.AWS.ElastiCache.Types: instance FromXML ReplicationGroup
- Network.AWS.ElastiCache.Types: instance FromXML ReplicationGroupPendingModifiedValues
- Network.AWS.ElastiCache.Types: instance FromXML ReservedCacheNode
- Network.AWS.ElastiCache.Types: instance FromXML ReservedCacheNodesOffering
- Network.AWS.ElastiCache.Types: instance FromXML SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance FromXML Snapshot
- Network.AWS.ElastiCache.Types: instance FromXML SourceType
- Network.AWS.ElastiCache.Types: instance FromXML Subnet
- Network.AWS.ElastiCache.Types: instance FromXML Tag
- Network.AWS.ElastiCache.Types: instance FromXML TagListMessage
- Network.AWS.ElastiCache.Types: instance Generic AZMode
- Network.AWS.ElastiCache.Types: instance Generic AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Generic PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Generic SourceType
- Network.AWS.ElastiCache.Types: instance Hashable AZMode
- Network.AWS.ElastiCache.Types: instance Hashable AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Hashable PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Hashable SourceType
- Network.AWS.ElastiCache.Types: instance IsList TagListMessage
- Network.AWS.ElastiCache.Types: instance Monoid AvailabilityZone
- Network.AWS.ElastiCache.Types: instance Monoid CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance Monoid TagListMessage
- Network.AWS.ElastiCache.Types: instance Ord AZMode
- Network.AWS.ElastiCache.Types: instance Ord AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Ord AvailabilityZone
- Network.AWS.ElastiCache.Types: instance Ord CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance Ord CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance Ord CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance Ord CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance Ord CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance Ord CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Ord EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance Ord Endpoint
- Network.AWS.ElastiCache.Types: instance Ord NodeSnapshot
- Network.AWS.ElastiCache.Types: instance Ord NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance Ord Parameter
- Network.AWS.ElastiCache.Types: instance Ord ParameterNameValue
- Network.AWS.ElastiCache.Types: instance Ord PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Ord PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Ord RecurringCharge
- Network.AWS.ElastiCache.Types: instance Ord SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Ord SourceType
- Network.AWS.ElastiCache.Types: instance Ord Tag
- Network.AWS.ElastiCache.Types: instance Read AZMode
- Network.AWS.ElastiCache.Types: instance Read AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Read AvailabilityZone
- Network.AWS.ElastiCache.Types: instance Read CacheCluster
- Network.AWS.ElastiCache.Types: instance Read CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance Read CacheNode
- Network.AWS.ElastiCache.Types: instance Read CacheNodeTypeSpecificParameter
- Network.AWS.ElastiCache.Types: instance Read CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance Read CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance Read CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance Read CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance Read CacheSecurityGroup
- Network.AWS.ElastiCache.Types: instance Read CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Read CacheSubnetGroup
- Network.AWS.ElastiCache.Types: instance Read EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance Read Endpoint
- Network.AWS.ElastiCache.Types: instance Read EngineDefaults
- Network.AWS.ElastiCache.Types: instance Read Event
- Network.AWS.ElastiCache.Types: instance Read NodeGroup
- Network.AWS.ElastiCache.Types: instance Read NodeGroupMember
- Network.AWS.ElastiCache.Types: instance Read NodeSnapshot
- Network.AWS.ElastiCache.Types: instance Read NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance Read Parameter
- Network.AWS.ElastiCache.Types: instance Read ParameterNameValue
- Network.AWS.ElastiCache.Types: instance Read PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Read PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Read RecurringCharge
- Network.AWS.ElastiCache.Types: instance Read ReplicationGroup
- Network.AWS.ElastiCache.Types: instance Read ReplicationGroupPendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Read ReservedCacheNode
- Network.AWS.ElastiCache.Types: instance Read ReservedCacheNodesOffering
- Network.AWS.ElastiCache.Types: instance Read SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Read Snapshot
- Network.AWS.ElastiCache.Types: instance Read SourceType
- Network.AWS.ElastiCache.Types: instance Read Subnet
- Network.AWS.ElastiCache.Types: instance Read Tag
- Network.AWS.ElastiCache.Types: instance Read TagListMessage
- Network.AWS.ElastiCache.Types: instance Semigroup TagListMessage
- Network.AWS.ElastiCache.Types: instance Show AZMode
- Network.AWS.ElastiCache.Types: instance Show AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Show AvailabilityZone
- Network.AWS.ElastiCache.Types: instance Show CacheCluster
- Network.AWS.ElastiCache.Types: instance Show CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance Show CacheNode
- Network.AWS.ElastiCache.Types: instance Show CacheNodeTypeSpecificParameter
- Network.AWS.ElastiCache.Types: instance Show CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance Show CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance Show CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance Show CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance Show CacheSecurityGroup
- Network.AWS.ElastiCache.Types: instance Show CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Show CacheSubnetGroup
- Network.AWS.ElastiCache.Types: instance Show EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance Show Endpoint
- Network.AWS.ElastiCache.Types: instance Show EngineDefaults
- Network.AWS.ElastiCache.Types: instance Show Event
- Network.AWS.ElastiCache.Types: instance Show NodeGroup
- Network.AWS.ElastiCache.Types: instance Show NodeGroupMember
- Network.AWS.ElastiCache.Types: instance Show NodeSnapshot
- Network.AWS.ElastiCache.Types: instance Show NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance Show Parameter
- Network.AWS.ElastiCache.Types: instance Show ParameterNameValue
- Network.AWS.ElastiCache.Types: instance Show PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance Show PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Show RecurringCharge
- Network.AWS.ElastiCache.Types: instance Show ReplicationGroup
- Network.AWS.ElastiCache.Types: instance Show ReplicationGroupPendingModifiedValues
- Network.AWS.ElastiCache.Types: instance Show ReservedCacheNode
- Network.AWS.ElastiCache.Types: instance Show ReservedCacheNodesOffering
- Network.AWS.ElastiCache.Types: instance Show SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance Show Snapshot
- Network.AWS.ElastiCache.Types: instance Show SourceType
- Network.AWS.ElastiCache.Types: instance Show Subnet
- Network.AWS.ElastiCache.Types: instance Show Tag
- Network.AWS.ElastiCache.Types: instance Show TagListMessage
- Network.AWS.ElastiCache.Types: instance ToByteString AZMode
- Network.AWS.ElastiCache.Types: instance ToByteString AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToByteString PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToByteString SourceType
- Network.AWS.ElastiCache.Types: instance ToHeader AZMode
- Network.AWS.ElastiCache.Types: instance ToHeader AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToHeader PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToHeader SourceType
- Network.AWS.ElastiCache.Types: instance ToQuery AZMode
- Network.AWS.ElastiCache.Types: instance ToQuery AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToQuery AvailabilityZone
- Network.AWS.ElastiCache.Types: instance ToQuery CacheCluster
- Network.AWS.ElastiCache.Types: instance ToQuery CacheEngineVersion
- Network.AWS.ElastiCache.Types: instance ToQuery CacheNode
- Network.AWS.ElastiCache.Types: instance ToQuery CacheNodeTypeSpecificParameter
- Network.AWS.ElastiCache.Types: instance ToQuery CacheNodeTypeSpecificValue
- Network.AWS.ElastiCache.Types: instance ToQuery CacheParameterGroup
- Network.AWS.ElastiCache.Types: instance ToQuery CacheParameterGroupNameMessage
- Network.AWS.ElastiCache.Types: instance ToQuery CacheParameterGroupStatus
- Network.AWS.ElastiCache.Types: instance ToQuery CacheSecurityGroup
- Network.AWS.ElastiCache.Types: instance ToQuery CacheSecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance ToQuery CacheSubnetGroup
- Network.AWS.ElastiCache.Types: instance ToQuery EC2SecurityGroup
- Network.AWS.ElastiCache.Types: instance ToQuery Endpoint
- Network.AWS.ElastiCache.Types: instance ToQuery EngineDefaults
- Network.AWS.ElastiCache.Types: instance ToQuery Event
- Network.AWS.ElastiCache.Types: instance ToQuery NodeGroup
- Network.AWS.ElastiCache.Types: instance ToQuery NodeGroupMember
- Network.AWS.ElastiCache.Types: instance ToQuery NodeSnapshot
- Network.AWS.ElastiCache.Types: instance ToQuery NotificationConfiguration
- Network.AWS.ElastiCache.Types: instance ToQuery Parameter
- Network.AWS.ElastiCache.Types: instance ToQuery ParameterNameValue
- Network.AWS.ElastiCache.Types: instance ToQuery PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToQuery PendingModifiedValues
- Network.AWS.ElastiCache.Types: instance ToQuery RecurringCharge
- Network.AWS.ElastiCache.Types: instance ToQuery ReplicationGroup
- Network.AWS.ElastiCache.Types: instance ToQuery ReplicationGroupPendingModifiedValues
- Network.AWS.ElastiCache.Types: instance ToQuery ReservedCacheNode
- Network.AWS.ElastiCache.Types: instance ToQuery ReservedCacheNodesOffering
- Network.AWS.ElastiCache.Types: instance ToQuery SecurityGroupMembership
- Network.AWS.ElastiCache.Types: instance ToQuery Snapshot
- Network.AWS.ElastiCache.Types: instance ToQuery SourceType
- Network.AWS.ElastiCache.Types: instance ToQuery Subnet
- Network.AWS.ElastiCache.Types: instance ToQuery Tag
- Network.AWS.ElastiCache.Types: instance ToQuery TagListMessage
- Network.AWS.ElastiCache.Types: instance ToText AZMode
- Network.AWS.ElastiCache.Types: instance ToText AutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToText PendingAutomaticFailoverStatus
- Network.AWS.ElastiCache.Types: instance ToText SourceType
- Network.AWS.ElastiCache.Types: ncTopicArn :: Lens' NotificationConfiguration (Maybe Text)
- Network.AWS.ElastiCache.Types: ns :: Text
- Network.AWS.ElastiCache.Types: sTopicArn :: Lens' Snapshot (Maybe Text)
- Network.AWS.ElastiCache.Types: sVpcId :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: AFSDisabled :: AutomaticFailoverStatus
+ Network.AWS.ElastiCache: AFSDisabling :: AutomaticFailoverStatus
+ Network.AWS.ElastiCache: AFSEnabled :: AutomaticFailoverStatus
+ Network.AWS.ElastiCache: AFSEnabling :: AutomaticFailoverStatus
+ Network.AWS.ElastiCache: CacheCluster :: SourceType
+ Network.AWS.ElastiCache: CacheParameterGroup :: SourceType
+ Network.AWS.ElastiCache: CacheSecurityGroup :: SourceType
+ Network.AWS.ElastiCache: CacheSubnetGroup :: SourceType
+ Network.AWS.ElastiCache: CrossAz :: AZMode
+ Network.AWS.ElastiCache: Disabled :: PendingAutomaticFailoverStatus
+ Network.AWS.ElastiCache: Enabled :: PendingAutomaticFailoverStatus
+ Network.AWS.ElastiCache: SingleAz :: AZMode
+ Network.AWS.ElastiCache: _AuthorizationAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _AuthorizationNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheClusterAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheClusterNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheParameterGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheParameterGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheParameterGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSecurityGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSecurityGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSecurityGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSubnetGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSubnetGroupInUse :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSubnetGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSubnetGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _CacheSubnetQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ClusterQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InsufficientCacheClusterCapacityFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidARNFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidCacheClusterStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidCacheParameterGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidCacheSecurityGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidParameterCombinationException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidParameterValueException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidReplicationGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidSnapshotStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidSubnet :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _InvalidVPCNetworkStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _NodeQuotaForClusterExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _NodeQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReplicationGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReplicationGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReservedCacheNodeAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReservedCacheNodeNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReservedCacheNodeQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _ReservedCacheNodesOfferingNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _SnapshotAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _SnapshotFeatureNotSupportedFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _SnapshotNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _SnapshotQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _SubnetInUse :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _TagNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: _TagQuotaPerResourceExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache: availabilityZone :: AvailabilityZone
+ Network.AWS.ElastiCache: azName :: Lens' AvailabilityZone (Maybe Text)
+ Network.AWS.ElastiCache: cacheCluster :: CacheCluster
+ Network.AWS.ElastiCache: cacheClusterAvailable :: Wait DescribeCacheClusters
+ Network.AWS.ElastiCache: cacheClusterDeleted :: Wait DescribeCacheClusters
+ Network.AWS.ElastiCache: cacheEngineVersion :: CacheEngineVersion
+ Network.AWS.ElastiCache: cacheNode :: CacheNode
+ Network.AWS.ElastiCache: cacheNodeTypeSpecificParameter :: CacheNodeTypeSpecificParameter
+ Network.AWS.ElastiCache: cacheNodeTypeSpecificValue :: CacheNodeTypeSpecificValue
+ Network.AWS.ElastiCache: cacheParameterGroup :: CacheParameterGroup
+ Network.AWS.ElastiCache: cacheParameterGroupNameMessage :: CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache: cacheParameterGroupStatus :: CacheParameterGroupStatus
+ Network.AWS.ElastiCache: cacheSecurityGroup :: CacheSecurityGroup
+ Network.AWS.ElastiCache: cacheSecurityGroupMembership :: CacheSecurityGroupMembership
+ Network.AWS.ElastiCache: cacheSubnetGroup :: CacheSubnetGroup
+ Network.AWS.ElastiCache: ccAutoMinorVersionUpgrade :: Lens' CacheCluster (Maybe Bool)
+ Network.AWS.ElastiCache: ccCacheClusterCreateTime :: Lens' CacheCluster (Maybe UTCTime)
+ Network.AWS.ElastiCache: ccCacheClusterId :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccCacheClusterStatus :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccCacheNodeType :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccCacheNodes :: Lens' CacheCluster [CacheNode]
+ Network.AWS.ElastiCache: ccCacheParameterGroup :: Lens' CacheCluster (Maybe CacheParameterGroupStatus)
+ Network.AWS.ElastiCache: ccCacheSecurityGroups :: Lens' CacheCluster [CacheSecurityGroupMembership]
+ Network.AWS.ElastiCache: ccCacheSubnetGroupName :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccClientDownloadLandingPage :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccConfigurationEndpoint :: Lens' CacheCluster (Maybe Endpoint)
+ Network.AWS.ElastiCache: ccEngine :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccEngineVersion :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccNotificationConfiguration :: Lens' CacheCluster (Maybe NotificationConfiguration)
+ Network.AWS.ElastiCache: ccNumCacheNodes :: Lens' CacheCluster (Maybe Int)
+ Network.AWS.ElastiCache: ccPendingModifiedValues :: Lens' CacheCluster (Maybe PendingModifiedValues)
+ Network.AWS.ElastiCache: ccPreferredAvailabilityZone :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccPreferredMaintenanceWindow :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccReplicationGroupId :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: ccSecurityGroups :: Lens' CacheCluster [SecurityGroupMembership]
+ Network.AWS.ElastiCache: ccSnapshotRetentionLimit :: Lens' CacheCluster (Maybe Int)
+ Network.AWS.ElastiCache: ccSnapshotWindow :: Lens' CacheCluster (Maybe Text)
+ Network.AWS.ElastiCache: cevCacheEngineDescription :: Lens' CacheEngineVersion (Maybe Text)
+ Network.AWS.ElastiCache: cevCacheEngineVersionDescription :: Lens' CacheEngineVersion (Maybe Text)
+ Network.AWS.ElastiCache: cevCacheParameterGroupFamily :: Lens' CacheEngineVersion (Maybe Text)
+ Network.AWS.ElastiCache: cevEngine :: Lens' CacheEngineVersion (Maybe Text)
+ Network.AWS.ElastiCache: cevEngineVersion :: Lens' CacheEngineVersion (Maybe Text)
+ Network.AWS.ElastiCache: cnCacheNodeCreateTime :: Lens' CacheNode (Maybe UTCTime)
+ Network.AWS.ElastiCache: cnCacheNodeId :: Lens' CacheNode (Maybe Text)
+ Network.AWS.ElastiCache: cnCacheNodeStatus :: Lens' CacheNode (Maybe Text)
+ Network.AWS.ElastiCache: cnCustomerAvailabilityZone :: Lens' CacheNode (Maybe Text)
+ Network.AWS.ElastiCache: cnEndpoint :: Lens' CacheNode (Maybe Endpoint)
+ Network.AWS.ElastiCache: cnParameterGroupStatus :: Lens' CacheNode (Maybe Text)
+ Network.AWS.ElastiCache: cnSourceCacheNodeId :: Lens' CacheNode (Maybe Text)
+ Network.AWS.ElastiCache: cntspAllowedValues :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntspCacheNodeTypeSpecificValues :: Lens' CacheNodeTypeSpecificParameter [CacheNodeTypeSpecificValue]
+ Network.AWS.ElastiCache: cntspDataType :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntspDescription :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntspIsModifiable :: Lens' CacheNodeTypeSpecificParameter (Maybe Bool)
+ Network.AWS.ElastiCache: cntspMinimumEngineVersion :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntspParameterName :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntspSource :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)
+ Network.AWS.ElastiCache: cntsvCacheNodeType :: Lens' CacheNodeTypeSpecificValue (Maybe Text)
+ Network.AWS.ElastiCache: cntsvValue :: Lens' CacheNodeTypeSpecificValue (Maybe Text)
+ Network.AWS.ElastiCache: cpgCacheParameterGroupFamily :: Lens' CacheParameterGroup (Maybe Text)
+ Network.AWS.ElastiCache: cpgCacheParameterGroupName :: Lens' CacheParameterGroup (Maybe Text)
+ Network.AWS.ElastiCache: cpgDescription :: Lens' CacheParameterGroup (Maybe Text)
+ Network.AWS.ElastiCache: cpgnmCacheParameterGroupName :: Lens' CacheParameterGroupNameMessage (Maybe Text)
+ Network.AWS.ElastiCache: cpgsCacheNodeIdsToReboot :: Lens' CacheParameterGroupStatus [Text]
+ Network.AWS.ElastiCache: cpgsCacheParameterGroupName :: Lens' CacheParameterGroupStatus (Maybe Text)
+ Network.AWS.ElastiCache: cpgsParameterApplyStatus :: Lens' CacheParameterGroupStatus (Maybe Text)
+ Network.AWS.ElastiCache: csgCacheSecurityGroupName :: Lens' CacheSecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgCacheSubnetGroupDescription :: Lens' CacheSubnetGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgCacheSubnetGroupName :: Lens' CacheSubnetGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgDescription :: Lens' CacheSecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgEC2SecurityGroups :: Lens' CacheSecurityGroup [EC2SecurityGroup]
+ Network.AWS.ElastiCache: csgOwnerId :: Lens' CacheSecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgSubnets :: Lens' CacheSubnetGroup [Subnet]
+ Network.AWS.ElastiCache: csgVPCId :: Lens' CacheSubnetGroup (Maybe Text)
+ Network.AWS.ElastiCache: csgmCacheSecurityGroupName :: Lens' CacheSecurityGroupMembership (Maybe Text)
+ Network.AWS.ElastiCache: csgmStatus :: Lens' CacheSecurityGroupMembership (Maybe Text)
+ Network.AWS.ElastiCache: data AZMode
+ Network.AWS.ElastiCache: data AutomaticFailoverStatus
+ Network.AWS.ElastiCache: data AvailabilityZone
+ Network.AWS.ElastiCache: data CacheCluster
+ Network.AWS.ElastiCache: data CacheEngineVersion
+ Network.AWS.ElastiCache: data CacheNode
+ Network.AWS.ElastiCache: data CacheNodeTypeSpecificParameter
+ Network.AWS.ElastiCache: data CacheNodeTypeSpecificValue
+ Network.AWS.ElastiCache: data CacheParameterGroup
+ Network.AWS.ElastiCache: data CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache: data CacheParameterGroupStatus
+ Network.AWS.ElastiCache: data CacheSecurityGroup
+ Network.AWS.ElastiCache: data CacheSecurityGroupMembership
+ Network.AWS.ElastiCache: data CacheSubnetGroup
+ Network.AWS.ElastiCache: data EC2SecurityGroup
+ Network.AWS.ElastiCache: data ElastiCache
+ Network.AWS.ElastiCache: data Endpoint
+ Network.AWS.ElastiCache: data EngineDefaults
+ Network.AWS.ElastiCache: data Event
+ Network.AWS.ElastiCache: data NodeGroup
+ Network.AWS.ElastiCache: data NodeGroupMember
+ Network.AWS.ElastiCache: data NodeSnapshot
+ Network.AWS.ElastiCache: data NotificationConfiguration
+ Network.AWS.ElastiCache: data Parameter
+ Network.AWS.ElastiCache: data ParameterNameValue
+ Network.AWS.ElastiCache: data PendingAutomaticFailoverStatus
+ Network.AWS.ElastiCache: data PendingModifiedValues
+ Network.AWS.ElastiCache: data RecurringCharge
+ Network.AWS.ElastiCache: data ReplicationGroup
+ Network.AWS.ElastiCache: data ReplicationGroupPendingModifiedValues
+ Network.AWS.ElastiCache: data ReservedCacheNode
+ Network.AWS.ElastiCache: data ReservedCacheNodesOffering
+ Network.AWS.ElastiCache: data SecurityGroupMembership
+ Network.AWS.ElastiCache: data Snapshot
+ Network.AWS.ElastiCache: data SourceType
+ Network.AWS.ElastiCache: data Subnet
+ Network.AWS.ElastiCache: data Tag
+ Network.AWS.ElastiCache: data TagListMessage
+ Network.AWS.ElastiCache: eAddress :: Lens' Endpoint (Maybe Text)
+ Network.AWS.ElastiCache: eDate :: Lens' Event (Maybe UTCTime)
+ Network.AWS.ElastiCache: eMessage :: Lens' Event (Maybe Text)
+ Network.AWS.ElastiCache: ePort :: Lens' Endpoint (Maybe Int)
+ Network.AWS.ElastiCache: eSourceIdentifier :: Lens' Event (Maybe Text)
+ Network.AWS.ElastiCache: eSourceType :: Lens' Event (Maybe SourceType)
+ Network.AWS.ElastiCache: ec2SecurityGroup :: EC2SecurityGroup
+ Network.AWS.ElastiCache: edCacheNodeTypeSpecificParameters :: Lens' EngineDefaults [CacheNodeTypeSpecificParameter]
+ Network.AWS.ElastiCache: edCacheParameterGroupFamily :: Lens' EngineDefaults (Maybe Text)
+ Network.AWS.ElastiCache: edMarker :: Lens' EngineDefaults (Maybe Text)
+ Network.AWS.ElastiCache: edParameters :: Lens' EngineDefaults [Parameter]
+ Network.AWS.ElastiCache: endpoint :: Endpoint
+ Network.AWS.ElastiCache: engineDefaults :: EngineDefaults
+ Network.AWS.ElastiCache: esgEC2SecurityGroupName :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: esgEC2SecurityGroupOwnerId :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: esgStatus :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache: event :: Event
+ Network.AWS.ElastiCache: ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.ElastiCache: ncTopicStatus :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.ElastiCache: ngNodeGroupId :: Lens' NodeGroup (Maybe Text)
+ Network.AWS.ElastiCache: ngNodeGroupMembers :: Lens' NodeGroup [NodeGroupMember]
+ Network.AWS.ElastiCache: ngPrimaryEndpoint :: Lens' NodeGroup (Maybe Endpoint)
+ Network.AWS.ElastiCache: ngStatus :: Lens' NodeGroup (Maybe Text)
+ Network.AWS.ElastiCache: ngmCacheClusterId :: Lens' NodeGroupMember (Maybe Text)
+ Network.AWS.ElastiCache: ngmCacheNodeId :: Lens' NodeGroupMember (Maybe Text)
+ Network.AWS.ElastiCache: ngmCurrentRole :: Lens' NodeGroupMember (Maybe Text)
+ Network.AWS.ElastiCache: ngmPreferredAvailabilityZone :: Lens' NodeGroupMember (Maybe Text)
+ Network.AWS.ElastiCache: ngmReadEndpoint :: Lens' NodeGroupMember (Maybe Endpoint)
+ Network.AWS.ElastiCache: nodeGroup :: NodeGroup
+ Network.AWS.ElastiCache: nodeGroupMember :: NodeGroupMember
+ Network.AWS.ElastiCache: nodeSnapshot :: NodeSnapshot
+ Network.AWS.ElastiCache: notificationConfiguration :: NotificationConfiguration
+ Network.AWS.ElastiCache: nsCacheNodeCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)
+ Network.AWS.ElastiCache: nsCacheNodeId :: Lens' NodeSnapshot (Maybe Text)
+ Network.AWS.ElastiCache: nsCacheSize :: Lens' NodeSnapshot (Maybe Text)
+ Network.AWS.ElastiCache: nsSnapshotCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)
+ Network.AWS.ElastiCache: pAllowedValues :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pDataType :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pDescription :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pIsModifiable :: Lens' Parameter (Maybe Bool)
+ Network.AWS.ElastiCache: pMinimumEngineVersion :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pParameterName :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pParameterValue :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: pSource :: Lens' Parameter (Maybe Text)
+ Network.AWS.ElastiCache: parameter :: Parameter
+ Network.AWS.ElastiCache: parameterNameValue :: ParameterNameValue
+ Network.AWS.ElastiCache: pendingModifiedValues :: PendingModifiedValues
+ Network.AWS.ElastiCache: pmvCacheNodeIdsToRemove :: Lens' PendingModifiedValues [Text]
+ Network.AWS.ElastiCache: pmvEngineVersion :: Lens' PendingModifiedValues (Maybe Text)
+ Network.AWS.ElastiCache: pmvNumCacheNodes :: Lens' PendingModifiedValues (Maybe Int)
+ Network.AWS.ElastiCache: pnvParameterName :: Lens' ParameterNameValue (Maybe Text)
+ Network.AWS.ElastiCache: pnvParameterValue :: Lens' ParameterNameValue (Maybe Text)
+ Network.AWS.ElastiCache: rcRecurringChargeAmount :: Lens' RecurringCharge (Maybe Double)
+ Network.AWS.ElastiCache: rcRecurringChargeFrequency :: Lens' RecurringCharge (Maybe Text)
+ Network.AWS.ElastiCache: rcnCacheNodeCount :: Lens' ReservedCacheNode (Maybe Int)
+ Network.AWS.ElastiCache: rcnCacheNodeType :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnDuration :: Lens' ReservedCacheNode (Maybe Int)
+ Network.AWS.ElastiCache: rcnFixedPrice :: Lens' ReservedCacheNode (Maybe Double)
+ Network.AWS.ElastiCache: rcnOfferingType :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnProductDescription :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnRecurringCharges :: Lens' ReservedCacheNode [RecurringCharge]
+ Network.AWS.ElastiCache: rcnReservedCacheNodeId :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnReservedCacheNodesOfferingId :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnStartTime :: Lens' ReservedCacheNode (Maybe UTCTime)
+ Network.AWS.ElastiCache: rcnState :: Lens' ReservedCacheNode (Maybe Text)
+ Network.AWS.ElastiCache: rcnUsagePrice :: Lens' ReservedCacheNode (Maybe Double)
+ Network.AWS.ElastiCache: rcnoCacheNodeType :: Lens' ReservedCacheNodesOffering (Maybe Text)
+ Network.AWS.ElastiCache: rcnoDuration :: Lens' ReservedCacheNodesOffering (Maybe Int)
+ Network.AWS.ElastiCache: rcnoFixedPrice :: Lens' ReservedCacheNodesOffering (Maybe Double)
+ Network.AWS.ElastiCache: rcnoOfferingType :: Lens' ReservedCacheNodesOffering (Maybe Text)
+ Network.AWS.ElastiCache: rcnoProductDescription :: Lens' ReservedCacheNodesOffering (Maybe Text)
+ Network.AWS.ElastiCache: rcnoRecurringCharges :: Lens' ReservedCacheNodesOffering [RecurringCharge]
+ Network.AWS.ElastiCache: rcnoReservedCacheNodesOfferingId :: Lens' ReservedCacheNodesOffering (Maybe Text)
+ Network.AWS.ElastiCache: rcnoUsagePrice :: Lens' ReservedCacheNodesOffering (Maybe Double)
+ Network.AWS.ElastiCache: recurringCharge :: RecurringCharge
+ Network.AWS.ElastiCache: replicationGroup :: ReplicationGroup
+ Network.AWS.ElastiCache: replicationGroupAvailable :: Wait DescribeReplicationGroups
+ Network.AWS.ElastiCache: replicationGroupDeleted :: Wait DescribeReplicationGroups
+ Network.AWS.ElastiCache: replicationGroupPendingModifiedValues :: ReplicationGroupPendingModifiedValues
+ Network.AWS.ElastiCache: reservedCacheNode :: ReservedCacheNode
+ Network.AWS.ElastiCache: reservedCacheNodesOffering :: ReservedCacheNodesOffering
+ Network.AWS.ElastiCache: rgAutomaticFailover :: Lens' ReplicationGroup (Maybe AutomaticFailoverStatus)
+ Network.AWS.ElastiCache: rgDescription :: Lens' ReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache: rgMemberClusters :: Lens' ReplicationGroup [Text]
+ Network.AWS.ElastiCache: rgNodeGroups :: Lens' ReplicationGroup [NodeGroup]
+ Network.AWS.ElastiCache: rgPendingModifiedValues :: Lens' ReplicationGroup (Maybe ReplicationGroupPendingModifiedValues)
+ Network.AWS.ElastiCache: rgReplicationGroupId :: Lens' ReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache: rgSnapshottingClusterId :: Lens' ReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache: rgStatus :: Lens' ReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache: rgpmvAutomaticFailoverStatus :: Lens' ReplicationGroupPendingModifiedValues (Maybe PendingAutomaticFailoverStatus)
+ Network.AWS.ElastiCache: rgpmvPrimaryClusterId :: Lens' ReplicationGroupPendingModifiedValues (Maybe Text)
+ Network.AWS.ElastiCache: sAutoMinorVersionUpgrade :: Lens' Snapshot (Maybe Bool)
+ Network.AWS.ElastiCache: sCacheClusterCreateTime :: Lens' Snapshot (Maybe UTCTime)
+ Network.AWS.ElastiCache: sCacheClusterId :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sCacheNodeType :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sCacheParameterGroupName :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sCacheSubnetGroupName :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sEngine :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sEngineVersion :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sNodeSnapshots :: Lens' Snapshot [NodeSnapshot]
+ Network.AWS.ElastiCache: sNumCacheNodes :: Lens' Snapshot (Maybe Int)
+ Network.AWS.ElastiCache: sPort :: Lens' Snapshot (Maybe Int)
+ Network.AWS.ElastiCache: sPreferredAvailabilityZone :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sPreferredMaintenanceWindow :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sSnapshotName :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sSnapshotRetentionLimit :: Lens' Snapshot (Maybe Int)
+ Network.AWS.ElastiCache: sSnapshotSource :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sSnapshotStatus :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sSnapshotWindow :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sSubnetAvailabilityZone :: Lens' Subnet (Maybe AvailabilityZone)
+ Network.AWS.ElastiCache: sSubnetIdentifier :: Lens' Subnet (Maybe Text)
+ Network.AWS.ElastiCache: sTopicARN :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: sVPCId :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache: securityGroupMembership :: SecurityGroupMembership
+ Network.AWS.ElastiCache: sgmSecurityGroupId :: Lens' SecurityGroupMembership (Maybe Text)
+ Network.AWS.ElastiCache: sgmStatus :: Lens' SecurityGroupMembership (Maybe Text)
+ Network.AWS.ElastiCache: snapshot :: Snapshot
+ Network.AWS.ElastiCache: subnet :: Subnet
+ Network.AWS.ElastiCache: tag :: Tag
+ Network.AWS.ElastiCache: tagKey :: Lens' Tag (Maybe Text)
+ Network.AWS.ElastiCache: tagListMessage :: TagListMessage
+ Network.AWS.ElastiCache: tagValue :: Lens' Tag (Maybe Text)
+ Network.AWS.ElastiCache: tlmTagList :: Lens' TagListMessage [Tag]
+ Network.AWS.ElastiCache.AddTagsToResource: data TagListMessage
+ Network.AWS.ElastiCache.AddTagsToResource: instance Constructor C1_0AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Data AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Datatype D1AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Generic AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Selector S1_0_0AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Selector S1_0_1AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: instance Typeable AddTagsToResource
+ Network.AWS.ElastiCache.AddTagsToResource: tagListMessage :: TagListMessage
+ Network.AWS.ElastiCache.AddTagsToResource: tlmTagList :: Lens' TagListMessage [Tag]
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: acsgirsCacheSecurityGroup :: Lens' AuthorizeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: acsgirsStatus :: Lens' AuthorizeCacheSecurityGroupIngressResponse Int
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Constructor C1_0AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Constructor C1_0AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Data AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Data AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Datatype D1AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Datatype D1AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Generic AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Generic AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Selector S1_0_0AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Selector S1_0_0AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Selector S1_0_1AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Selector S1_0_1AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Selector S1_0_2AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Typeable AuthorizeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: instance Typeable AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.CopySnapshot: csrsSnapshot :: Lens' CopySnapshotResponse (Maybe Snapshot)
+ Network.AWS.ElastiCache.CopySnapshot: csrsStatus :: Lens' CopySnapshotResponse Int
+ Network.AWS.ElastiCache.CopySnapshot: instance Constructor C1_0CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Constructor C1_0CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Data CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Data CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Datatype D1CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Datatype D1CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Generic CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Generic CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Selector S1_0_0CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Selector S1_0_0CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Selector S1_0_1CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Selector S1_0_1CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: instance Typeable CopySnapshot
+ Network.AWS.ElastiCache.CopySnapshot: instance Typeable CopySnapshotResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: cccNotificationTopicARN :: Lens' CreateCacheCluster (Maybe Text)
+ Network.AWS.ElastiCache.CreateCacheCluster: cccSnapshotARNs :: Lens' CreateCacheCluster [Text]
+ Network.AWS.ElastiCache.CreateCacheCluster: cccrsCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster)
+ Network.AWS.ElastiCache.CreateCacheCluster: cccrsStatus :: Lens' CreateCacheClusterResponse Int
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Constructor C1_0CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Constructor C1_0CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Data CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Data CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Datatype D1CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Datatype D1CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Generic CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Generic CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_0CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_0CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_10CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_11CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_12CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_13CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_14CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_15CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_16CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_17CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_18CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_19CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_1CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_1CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_20CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_21CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_2CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_3CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_4CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_5CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_6CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_7CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_8CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Selector S1_0_9CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Typeable CreateCacheCluster
+ Network.AWS.ElastiCache.CreateCacheCluster: instance Typeable CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: ccpgrsCacheParameterGroup :: Lens' CreateCacheParameterGroupResponse (Maybe CacheParameterGroup)
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: ccpgrsStatus :: Lens' CreateCacheParameterGroupResponse Int
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Constructor C1_0CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Constructor C1_0CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Data CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Data CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Datatype D1CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Datatype D1CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Generic CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Generic CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Selector S1_0_0CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Selector S1_0_0CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Selector S1_0_1CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Selector S1_0_1CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Selector S1_0_2CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Typeable CreateCacheParameterGroup
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: instance Typeable CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: ccsgrsCacheSecurityGroup :: Lens' CreateCacheSecurityGroupResponse (Maybe CacheSecurityGroup)
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: ccsgrsStatus :: Lens' CreateCacheSecurityGroupResponse Int
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Constructor C1_0CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Constructor C1_0CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Data CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Data CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Datatype D1CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Datatype D1CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Generic CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Generic CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Selector S1_0_0CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Selector S1_0_0CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Selector S1_0_1CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Selector S1_0_1CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Typeable CreateCacheSecurityGroup
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: instance Typeable CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: crsCacheSubnetGroup :: Lens' CreateCacheSubnetGroupResponse (Maybe CacheSubnetGroup)
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: crsStatus :: Lens' CreateCacheSubnetGroupResponse Int
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Constructor C1_0CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Constructor C1_0CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Data CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Data CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Datatype D1CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Datatype D1CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Generic CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Generic CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Selector S1_0_0CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Selector S1_0_0CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Selector S1_0_1CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Selector S1_0_1CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Selector S1_0_2CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Typeable CreateCacheSubnetGroup
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: instance Typeable CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: crgNotificationTopicARN :: Lens' CreateReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache.CreateReplicationGroup: crgSnapshotARNs :: Lens' CreateReplicationGroup [Text]
+ Network.AWS.ElastiCache.CreateReplicationGroup: crgrsReplicationGroup :: Lens' CreateReplicationGroupResponse (Maybe ReplicationGroup)
+ Network.AWS.ElastiCache.CreateReplicationGroup: crgrsStatus :: Lens' CreateReplicationGroupResponse Int
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Constructor C1_0CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Constructor C1_0CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Data CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Data CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Datatype D1CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Datatype D1CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Generic CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Generic CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_0CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_0CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_10CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_11CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_12CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_13CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_14CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_15CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_16CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_17CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_18CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_19CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_1CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_1CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_20CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_21CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_2CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_3CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_4CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_5CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_6CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_7CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_8CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Selector S1_0_9CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Typeable CreateReplicationGroup
+ Network.AWS.ElastiCache.CreateReplicationGroup: instance Typeable CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateSnapshot: crersSnapshot :: Lens' CreateSnapshotResponse (Maybe Snapshot)
+ Network.AWS.ElastiCache.CreateSnapshot: crersStatus :: Lens' CreateSnapshotResponse Int
+ Network.AWS.ElastiCache.CreateSnapshot: instance Constructor C1_0CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Constructor C1_0CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Data CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Data CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Datatype D1CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Datatype D1CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Generic CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Generic CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Selector S1_0_0CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Selector S1_0_0CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Selector S1_0_1CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Selector S1_0_1CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: instance Typeable CreateSnapshot
+ Network.AWS.ElastiCache.CreateSnapshot: instance Typeable CreateSnapshotResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: dccrsCacheCluster :: Lens' DeleteCacheClusterResponse (Maybe CacheCluster)
+ Network.AWS.ElastiCache.DeleteCacheCluster: dccrsStatus :: Lens' DeleteCacheClusterResponse Int
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Constructor C1_0DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Constructor C1_0DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Data DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Data DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Datatype D1DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Datatype D1DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Generic DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Generic DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Selector S1_0_0DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Selector S1_0_0DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Selector S1_0_1DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Selector S1_0_1DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Typeable DeleteCacheCluster
+ Network.AWS.ElastiCache.DeleteCacheCluster: instance Typeable DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: dCacheParameterGroupName :: Lens' DeleteCacheParameterGroup Text
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Constructor C1_0DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Data DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Data DeleteCacheParameterGroupResponse
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Datatype D1DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Generic DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Selector S1_0_0DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Typeable DeleteCacheParameterGroup
+ Network.AWS.ElastiCache.DeleteCacheParameterGroup: instance Typeable DeleteCacheParameterGroupResponse
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Constructor C1_0DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Data DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Data DeleteCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Datatype D1DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Generic DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Selector S1_0_0DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Typeable DeleteCacheSecurityGroup
+ Network.AWS.ElastiCache.DeleteCacheSecurityGroup: instance Typeable DeleteCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: dCacheSubnetGroupName :: Lens' DeleteCacheSubnetGroup Text
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Constructor C1_0DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Data DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Data DeleteCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Datatype D1DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Generic DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Selector S1_0_0DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Typeable DeleteCacheSubnetGroup
+ Network.AWS.ElastiCache.DeleteCacheSubnetGroup: instance Typeable DeleteCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: delrsReplicationGroup :: Lens' DeleteReplicationGroupResponse (Maybe ReplicationGroup)
+ Network.AWS.ElastiCache.DeleteReplicationGroup: delrsStatus :: Lens' DeleteReplicationGroupResponse Int
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Constructor C1_0DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Constructor C1_0DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Data DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Data DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Datatype D1DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Datatype D1DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Generic DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Generic DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Selector S1_0_0DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Selector S1_0_0DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Selector S1_0_1DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Selector S1_0_1DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Selector S1_0_2DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Typeable DeleteReplicationGroup
+ Network.AWS.ElastiCache.DeleteReplicationGroup: instance Typeable DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: dSnapshotName :: Lens' DeleteSnapshot Text
+ Network.AWS.ElastiCache.DeleteSnapshot: dsrsSnapshot :: Lens' DeleteSnapshotResponse (Maybe Snapshot)
+ Network.AWS.ElastiCache.DeleteSnapshot: dsrsStatus :: Lens' DeleteSnapshotResponse Int
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Constructor C1_0DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Constructor C1_0DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Data DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Data DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Datatype D1DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Datatype D1DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Generic DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Generic DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Selector S1_0_0DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Selector S1_0_0DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Selector S1_0_1DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Typeable DeleteSnapshot
+ Network.AWS.ElastiCache.DeleteSnapshot: instance Typeable DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: dCacheClusterId :: Lens' DescribeCacheClusters (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheClusters: dMarker :: Lens' DescribeCacheClusters (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheClusters: dMaxRecords :: Lens' DescribeCacheClusters (Maybe Int)
+ Network.AWS.ElastiCache.DescribeCacheClusters: dShowCacheNodeInfo :: Lens' DescribeCacheClusters (Maybe Bool)
+ Network.AWS.ElastiCache.DescribeCacheClusters: drsCacheClusters :: Lens' DescribeCacheClustersResponse [CacheCluster]
+ Network.AWS.ElastiCache.DescribeCacheClusters: drsMarker :: Lens' DescribeCacheClustersResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheClusters: drsStatus :: Lens' DescribeCacheClustersResponse Int
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Constructor C1_0DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Constructor C1_0DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Data DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Data DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Datatype D1DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Datatype D1DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Generic DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Generic DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_0DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_0DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_1DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_1DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_2DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_2DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Selector S1_0_3DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Typeable DescribeCacheClusters
+ Network.AWS.ElastiCache.DescribeCacheClusters: instance Typeable DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: dcevrsCacheEngineVersions :: Lens' DescribeCacheEngineVersionsResponse [CacheEngineVersion]
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: dcevrsMarker :: Lens' DescribeCacheEngineVersionsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: dcevrsStatus :: Lens' DescribeCacheEngineVersionsResponse Int
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Constructor C1_0DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Constructor C1_0DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Data DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Data DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Datatype D1DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Datatype D1DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Generic DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Generic DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_0DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_0DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_1DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_1DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_2DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_2DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_3DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_4DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Selector S1_0_5DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Typeable DescribeCacheEngineVersions
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: instance Typeable DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: dcpgrsCacheParameterGroups :: Lens' DescribeCacheParameterGroupsResponse [CacheParameterGroup]
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: dcpgrsMarker :: Lens' DescribeCacheParameterGroupsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: dcpgrsStatus :: Lens' DescribeCacheParameterGroupsResponse Int
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Constructor C1_0DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Constructor C1_0DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Data DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Data DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Datatype D1DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Datatype D1DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Generic DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Generic DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_0DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_0DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_1DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_1DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_2DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Selector S1_0_2DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Typeable DescribeCacheParameterGroups
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: instance Typeable DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: dcprsCacheNodeTypeSpecificParameters :: Lens' DescribeCacheParametersResponse [CacheNodeTypeSpecificParameter]
+ Network.AWS.ElastiCache.DescribeCacheParameters: dcprsMarker :: Lens' DescribeCacheParametersResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheParameters: dcprsParameters :: Lens' DescribeCacheParametersResponse [Parameter]
+ Network.AWS.ElastiCache.DescribeCacheParameters: dcprsStatus :: Lens' DescribeCacheParametersResponse Int
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Constructor C1_0DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Constructor C1_0DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Data DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Data DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Datatype D1DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Datatype D1DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Generic DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Generic DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_0DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_0DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_1DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_1DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_2DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_2DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_3DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Selector S1_0_3DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Typeable DescribeCacheParameters
+ Network.AWS.ElastiCache.DescribeCacheParameters: instance Typeable DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsCacheSecurityGroupName :: Lens' DescribeCacheSecurityGroups (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsMarker :: Lens' DescribeCacheSecurityGroups (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsMaxRecords :: Lens' DescribeCacheSecurityGroups (Maybe Int)
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsrsCacheSecurityGroups :: Lens' DescribeCacheSecurityGroupsResponse [CacheSecurityGroup]
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsrsMarker :: Lens' DescribeCacheSecurityGroupsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: dcsgsrsStatus :: Lens' DescribeCacheSecurityGroupsResponse Int
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Constructor C1_0DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Constructor C1_0DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Data DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Data DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Datatype D1DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Datatype D1DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Generic DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Generic DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_0DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_0DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_1DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_1DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_2DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Selector S1_0_2DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Typeable DescribeCacheSecurityGroups
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: instance Typeable DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: dcsgrsCacheSubnetGroups :: Lens' DescribeCacheSubnetGroupsResponse [CacheSubnetGroup]
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: dcsgrsMarker :: Lens' DescribeCacheSubnetGroupsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: dcsgrsStatus :: Lens' DescribeCacheSubnetGroupsResponse Int
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Constructor C1_0DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Constructor C1_0DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Data DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Data DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Datatype D1DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Datatype D1DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Generic DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Generic DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_0DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_0DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_1DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_1DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_2DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Selector S1_0_2DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Typeable DescribeCacheSubnetGroups
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: instance Typeable DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: dedprsEngineDefaults :: Lens' DescribeEngineDefaultParametersResponse EngineDefaults
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: dedprsStatus :: Lens' DescribeEngineDefaultParametersResponse Int
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Constructor C1_0DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Constructor C1_0DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Data DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Data DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Datatype D1DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Datatype D1DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Generic DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Generic DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Selector S1_0_0DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Selector S1_0_0DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Selector S1_0_1DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Selector S1_0_1DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Selector S1_0_2DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Typeable DescribeEngineDefaultParameters
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: instance Typeable DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEvents: dersEvents :: Lens' DescribeEventsResponse [Event]
+ Network.AWS.ElastiCache.DescribeEvents: dersMarker :: Lens' DescribeEventsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeEvents: dersStatus :: Lens' DescribeEventsResponse Int
+ Network.AWS.ElastiCache.DescribeEvents: instance Constructor C1_0DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Constructor C1_0DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Data DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Data DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Datatype D1DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Datatype D1DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Generic DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Generic DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_0DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_0DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_1DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_1DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_2DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_2DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_3DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_4DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_5DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Selector S1_0_6DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Typeable DescribeEvents
+ Network.AWS.ElastiCache.DescribeEvents: instance Typeable DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgrsMarker :: Lens' DescribeReplicationGroupsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgrsReplicationGroups :: Lens' DescribeReplicationGroupsResponse [ReplicationGroup]
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgrsStatus :: Lens' DescribeReplicationGroupsResponse Int
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgsMarker :: Lens' DescribeReplicationGroups (Maybe Text)
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgsMaxRecords :: Lens' DescribeReplicationGroups (Maybe Int)
+ Network.AWS.ElastiCache.DescribeReplicationGroups: drgsReplicationGroupId :: Lens' DescribeReplicationGroups (Maybe Text)
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Constructor C1_0DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Constructor C1_0DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Data DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Data DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Datatype D1DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Datatype D1DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Generic DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Generic DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_0DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_0DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_1DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_1DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_2DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Selector S1_0_2DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Typeable DescribeReplicationGroups
+ Network.AWS.ElastiCache.DescribeReplicationGroups: instance Typeable DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: drcnrsMarker :: Lens' DescribeReservedCacheNodesResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: drcnrsReservedCacheNodes :: Lens' DescribeReservedCacheNodesResponse [ReservedCacheNode]
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: drcnrsStatus :: Lens' DescribeReservedCacheNodesResponse Int
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Constructor C1_0DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Constructor C1_0DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Data DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Data DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Datatype D1DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Datatype D1DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Generic DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Generic DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_0DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_0DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_1DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_1DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_2DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_2DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_3DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_4DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_5DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_6DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Selector S1_0_7DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Typeable DescribeReservedCacheNodes
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: instance Typeable DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: drcnorsMarker :: Lens' DescribeReservedCacheNodesOfferingsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: drcnorsReservedCacheNodesOfferings :: Lens' DescribeReservedCacheNodesOfferingsResponse [ReservedCacheNodesOffering]
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: drcnorsStatus :: Lens' DescribeReservedCacheNodesOfferingsResponse Int
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Constructor C1_0DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Constructor C1_0DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Data DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Data DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Datatype D1DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Datatype D1DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Generic DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Generic DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_0DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_0DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_1DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_1DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_2DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_2DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_3DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_4DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_5DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Selector S1_0_6DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Typeable DescribeReservedCacheNodesOfferings
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: instance Typeable DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: dssrsMarker :: Lens' DescribeSnapshotsResponse (Maybe Text)
+ Network.AWS.ElastiCache.DescribeSnapshots: dssrsSnapshots :: Lens' DescribeSnapshotsResponse [Snapshot]
+ Network.AWS.ElastiCache.DescribeSnapshots: dssrsStatus :: Lens' DescribeSnapshotsResponse Int
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Constructor C1_0DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Constructor C1_0DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Data DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Data DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Datatype D1DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Datatype D1DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Generic DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Generic DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_0DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_0DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_1DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_1DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_2DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_2DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_3DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Selector S1_0_4DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Typeable DescribeSnapshots
+ Network.AWS.ElastiCache.DescribeSnapshots: instance Typeable DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.ListTagsForResource: data TagListMessage
+ Network.AWS.ElastiCache.ListTagsForResource: instance Constructor C1_0ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: instance Data ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: instance Datatype D1ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: instance Generic ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: instance Selector S1_0_0ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: instance Typeable ListTagsForResource
+ Network.AWS.ElastiCache.ListTagsForResource: tagListMessage :: TagListMessage
+ Network.AWS.ElastiCache.ListTagsForResource: tlmTagList :: Lens' TagListMessage [Tag]
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Constructor C1_0ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Constructor C1_0ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Data ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Data ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Datatype D1ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Datatype D1ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Generic ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Generic ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_0ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_0ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_10ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_11ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_12ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_13ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_14ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_15ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_1ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_1ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_2ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_3ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_4ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_5ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_6ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_7ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_8ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Selector S1_0_9ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Typeable ModifyCacheCluster
+ Network.AWS.ElastiCache.ModifyCacheCluster: instance Typeable ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: mccNotificationTopicARN :: Lens' ModifyCacheCluster (Maybe Text)
+ Network.AWS.ElastiCache.ModifyCacheCluster: mccrsCacheCluster :: Lens' ModifyCacheClusterResponse (Maybe CacheCluster)
+ Network.AWS.ElastiCache.ModifyCacheCluster: mccrsStatus :: Lens' ModifyCacheClusterResponse Int
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: cacheParameterGroupNameMessage :: CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: cpgnmCacheParameterGroupName :: Lens' CacheParameterGroupNameMessage (Maybe Text)
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: data CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Constructor C1_0ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Data ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Datatype D1ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Generic ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Selector S1_0_0ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Selector S1_0_1ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheParameterGroup: instance Typeable ModifyCacheParameterGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Constructor C1_0ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Constructor C1_0ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Data ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Data ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Datatype D1ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Datatype D1ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Generic ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Generic ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Selector S1_0_0ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Selector S1_0_0ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Selector S1_0_1ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Selector S1_0_1ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Selector S1_0_2ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Typeable ModifyCacheSubnetGroup
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: instance Typeable ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: mcsgrsCacheSubnetGroup :: Lens' ModifyCacheSubnetGroupResponse (Maybe CacheSubnetGroup)
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: mcsgrsStatus :: Lens' ModifyCacheSubnetGroupResponse Int
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Constructor C1_0ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Constructor C1_0ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Data ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Data ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Datatype D1ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Datatype D1ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Generic ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Generic ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_0ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_0ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_10ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_11ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_12ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_13ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_14ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_15ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_1ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_1ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_2ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_3ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_4ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_5ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_6ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_7ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_8ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Selector S1_0_9ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Typeable ModifyReplicationGroup
+ Network.AWS.ElastiCache.ModifyReplicationGroup: instance Typeable ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: mrgNotificationTopicARN :: Lens' ModifyReplicationGroup (Maybe Text)
+ Network.AWS.ElastiCache.ModifyReplicationGroup: mrgrsReplicationGroup :: Lens' ModifyReplicationGroupResponse (Maybe ReplicationGroup)
+ Network.AWS.ElastiCache.ModifyReplicationGroup: mrgrsStatus :: Lens' ModifyReplicationGroupResponse Int
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Constructor C1_0PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Constructor C1_0PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Data PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Data PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Datatype D1PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Datatype D1PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Generic PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Generic PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Selector S1_0_0PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Selector S1_0_0PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Selector S1_0_1PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Selector S1_0_1PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Selector S1_0_2PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Typeable PurchaseReservedCacheNodesOffering
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: instance Typeable PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: prcnorsReservedCacheNode :: Lens' PurchaseReservedCacheNodesOfferingResponse (Maybe ReservedCacheNode)
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: prcnorsStatus :: Lens' PurchaseReservedCacheNodesOfferingResponse Int
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Constructor C1_0RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Constructor C1_0RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Data RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Data RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Datatype D1RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Datatype D1RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Generic RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Generic RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Selector S1_0_0RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Selector S1_0_0RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Selector S1_0_1RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Selector S1_0_1RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Typeable RebootCacheCluster
+ Network.AWS.ElastiCache.RebootCacheCluster: instance Typeable RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: rccrsCacheCluster :: Lens' RebootCacheClusterResponse (Maybe CacheCluster)
+ Network.AWS.ElastiCache.RebootCacheCluster: rccrsStatus :: Lens' RebootCacheClusterResponse Int
+ Network.AWS.ElastiCache.RemoveTagsFromResource: data TagListMessage
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Constructor C1_0RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Data RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Datatype D1RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Generic RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Selector S1_0_0RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Selector S1_0_1RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: instance Typeable RemoveTagsFromResource
+ Network.AWS.ElastiCache.RemoveTagsFromResource: tagListMessage :: TagListMessage
+ Network.AWS.ElastiCache.RemoveTagsFromResource: tlmTagList :: Lens' TagListMessage [Tag]
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: cacheParameterGroupNameMessage :: CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: cpgnmCacheParameterGroupName :: Lens' CacheParameterGroupNameMessage (Maybe Text)
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: data CacheParameterGroupNameMessage
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Constructor C1_0ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Data ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Datatype D1ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Generic ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Selector S1_0_0ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Selector S1_0_1ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Selector S1_0_2ResetCacheParameterGroup
+ Network.AWS.ElastiCache.ResetCacheParameterGroup: instance Typeable ResetCacheParameterGroup
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Constructor C1_0RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Constructor C1_0RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Data RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Data RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Datatype D1RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Datatype D1RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Generic RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Generic RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Selector S1_0_0RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Selector S1_0_0RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Selector S1_0_1RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Selector S1_0_1RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Selector S1_0_2RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Typeable RevokeCacheSecurityGroupIngress
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: instance Typeable RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: rcsgirsCacheSecurityGroup :: Lens' RevokeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: rcsgirsStatus :: Lens' RevokeCacheSecurityGroupIngressResponse Int
+ Network.AWS.ElastiCache.Types: CacheCluster :: SourceType
+ Network.AWS.ElastiCache.Types: CacheParameterGroup :: SourceType
+ Network.AWS.ElastiCache.Types: CacheSecurityGroup :: SourceType
+ Network.AWS.ElastiCache.Types: CacheSubnetGroup :: SourceType
+ Network.AWS.ElastiCache.Types: _AuthorizationAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _AuthorizationNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheClusterAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheClusterNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheParameterGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheParameterGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheParameterGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSecurityGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSecurityGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSecurityGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSubnetGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSubnetGroupInUse :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSubnetGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSubnetGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _CacheSubnetQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ClusterQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InsufficientCacheClusterCapacityFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidARNFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidCacheClusterStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidCacheParameterGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidCacheSecurityGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidParameterCombinationException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidParameterValueException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidReplicationGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidSnapshotStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidSubnet :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _InvalidVPCNetworkStateFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _NodeQuotaForClusterExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _NodeQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReplicationGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReplicationGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReservedCacheNodeAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReservedCacheNodeNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReservedCacheNodeQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _ReservedCacheNodesOfferingNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _SnapshotAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _SnapshotFeatureNotSupportedFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _SnapshotNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _SnapshotQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _SubnetInUse :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _TagNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: _TagQuotaPerResourceExceeded :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.ElastiCache.Types: csgVPCId :: Lens' CacheSubnetGroup (Maybe Text)
+ Network.AWS.ElastiCache.Types: esgEC2SecurityGroupName :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache.Types: esgEC2SecurityGroupOwnerId :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache.Types: esgStatus :: Lens' EC2SecurityGroup (Maybe Text)
+ Network.AWS.ElastiCache.Types: ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)
+ Network.AWS.ElastiCache.Types: sTopicARN :: Lens' Snapshot (Maybe Text)
+ Network.AWS.ElastiCache.Types: sVPCId :: Lens' Snapshot (Maybe Text)
- Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: authorizeCacheSecurityGroupIngressResponse :: AuthorizeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress: authorizeCacheSecurityGroupIngressResponse :: Int -> AuthorizeCacheSecurityGroupIngressResponse
- Network.AWS.ElastiCache.CopySnapshot: copySnapshotResponse :: CopySnapshotResponse
+ Network.AWS.ElastiCache.CopySnapshot: copySnapshotResponse :: Int -> CopySnapshotResponse
- Network.AWS.ElastiCache.CreateCacheCluster: createCacheClusterResponse :: CreateCacheClusterResponse
+ Network.AWS.ElastiCache.CreateCacheCluster: createCacheClusterResponse :: Int -> CreateCacheClusterResponse
- Network.AWS.ElastiCache.CreateCacheParameterGroup: createCacheParameterGroupResponse :: CreateCacheParameterGroupResponse
+ Network.AWS.ElastiCache.CreateCacheParameterGroup: createCacheParameterGroupResponse :: Int -> CreateCacheParameterGroupResponse
- Network.AWS.ElastiCache.CreateCacheSecurityGroup: createCacheSecurityGroupResponse :: CreateCacheSecurityGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSecurityGroup: createCacheSecurityGroupResponse :: Int -> CreateCacheSecurityGroupResponse
- Network.AWS.ElastiCache.CreateCacheSubnetGroup: createCacheSubnetGroupResponse :: CreateCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.CreateCacheSubnetGroup: createCacheSubnetGroupResponse :: Int -> CreateCacheSubnetGroupResponse
- Network.AWS.ElastiCache.CreateReplicationGroup: createReplicationGroupResponse :: CreateReplicationGroupResponse
+ Network.AWS.ElastiCache.CreateReplicationGroup: createReplicationGroupResponse :: Int -> CreateReplicationGroupResponse
- Network.AWS.ElastiCache.CreateSnapshot: createSnapshotResponse :: CreateSnapshotResponse
+ Network.AWS.ElastiCache.CreateSnapshot: createSnapshotResponse :: Int -> CreateSnapshotResponse
- Network.AWS.ElastiCache.DeleteCacheCluster: deleteCacheClusterResponse :: DeleteCacheClusterResponse
+ Network.AWS.ElastiCache.DeleteCacheCluster: deleteCacheClusterResponse :: Int -> DeleteCacheClusterResponse
- Network.AWS.ElastiCache.DeleteReplicationGroup: deleteReplicationGroupResponse :: DeleteReplicationGroupResponse
+ Network.AWS.ElastiCache.DeleteReplicationGroup: deleteReplicationGroupResponse :: Int -> DeleteReplicationGroupResponse
- Network.AWS.ElastiCache.DeleteSnapshot: deleteSnapshotResponse :: DeleteSnapshotResponse
+ Network.AWS.ElastiCache.DeleteSnapshot: deleteSnapshotResponse :: Int -> DeleteSnapshotResponse
- Network.AWS.ElastiCache.DescribeCacheClusters: describeCacheClustersResponse :: DescribeCacheClustersResponse
+ Network.AWS.ElastiCache.DescribeCacheClusters: describeCacheClustersResponse :: Int -> DescribeCacheClustersResponse
- Network.AWS.ElastiCache.DescribeCacheEngineVersions: describeCacheEngineVersionsResponse :: DescribeCacheEngineVersionsResponse
+ Network.AWS.ElastiCache.DescribeCacheEngineVersions: describeCacheEngineVersionsResponse :: Int -> DescribeCacheEngineVersionsResponse
- Network.AWS.ElastiCache.DescribeCacheParameterGroups: describeCacheParameterGroupsResponse :: DescribeCacheParameterGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheParameterGroups: describeCacheParameterGroupsResponse :: Int -> DescribeCacheParameterGroupsResponse
- Network.AWS.ElastiCache.DescribeCacheParameters: describeCacheParametersResponse :: DescribeCacheParametersResponse
+ Network.AWS.ElastiCache.DescribeCacheParameters: describeCacheParametersResponse :: Int -> DescribeCacheParametersResponse
- Network.AWS.ElastiCache.DescribeCacheSecurityGroups: describeCacheSecurityGroupsResponse :: DescribeCacheSecurityGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSecurityGroups: describeCacheSecurityGroupsResponse :: Int -> DescribeCacheSecurityGroupsResponse
- Network.AWS.ElastiCache.DescribeCacheSubnetGroups: describeCacheSubnetGroupsResponse :: DescribeCacheSubnetGroupsResponse
+ Network.AWS.ElastiCache.DescribeCacheSubnetGroups: describeCacheSubnetGroupsResponse :: Int -> DescribeCacheSubnetGroupsResponse
- Network.AWS.ElastiCache.DescribeEngineDefaultParameters: describeEngineDefaultParametersResponse :: EngineDefaults -> DescribeEngineDefaultParametersResponse
+ Network.AWS.ElastiCache.DescribeEngineDefaultParameters: describeEngineDefaultParametersResponse :: Int -> EngineDefaults -> DescribeEngineDefaultParametersResponse
- Network.AWS.ElastiCache.DescribeEvents: describeEventsResponse :: DescribeEventsResponse
+ Network.AWS.ElastiCache.DescribeEvents: describeEventsResponse :: Int -> DescribeEventsResponse
- Network.AWS.ElastiCache.DescribeReplicationGroups: describeReplicationGroupsResponse :: DescribeReplicationGroupsResponse
+ Network.AWS.ElastiCache.DescribeReplicationGroups: describeReplicationGroupsResponse :: Int -> DescribeReplicationGroupsResponse
- Network.AWS.ElastiCache.DescribeReservedCacheNodes: describeReservedCacheNodesResponse :: DescribeReservedCacheNodesResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodes: describeReservedCacheNodesResponse :: Int -> DescribeReservedCacheNodesResponse
- Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: describeReservedCacheNodesOfferingsResponse :: DescribeReservedCacheNodesOfferingsResponse
+ Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings: describeReservedCacheNodesOfferingsResponse :: Int -> DescribeReservedCacheNodesOfferingsResponse
- Network.AWS.ElastiCache.DescribeSnapshots: describeSnapshotsResponse :: DescribeSnapshotsResponse
+ Network.AWS.ElastiCache.DescribeSnapshots: describeSnapshotsResponse :: Int -> DescribeSnapshotsResponse
- Network.AWS.ElastiCache.ModifyCacheCluster: modifyCacheClusterResponse :: ModifyCacheClusterResponse
+ Network.AWS.ElastiCache.ModifyCacheCluster: modifyCacheClusterResponse :: Int -> ModifyCacheClusterResponse
- Network.AWS.ElastiCache.ModifyCacheSubnetGroup: modifyCacheSubnetGroupResponse :: ModifyCacheSubnetGroupResponse
+ Network.AWS.ElastiCache.ModifyCacheSubnetGroup: modifyCacheSubnetGroupResponse :: Int -> ModifyCacheSubnetGroupResponse
- Network.AWS.ElastiCache.ModifyReplicationGroup: modifyReplicationGroupResponse :: ModifyReplicationGroupResponse
+ Network.AWS.ElastiCache.ModifyReplicationGroup: modifyReplicationGroupResponse :: Int -> ModifyReplicationGroupResponse
- Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: purchaseReservedCacheNodesOfferingResponse :: PurchaseReservedCacheNodesOfferingResponse
+ Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering: purchaseReservedCacheNodesOfferingResponse :: Int -> PurchaseReservedCacheNodesOfferingResponse
- Network.AWS.ElastiCache.RebootCacheCluster: rebootCacheClusterResponse :: RebootCacheClusterResponse
+ Network.AWS.ElastiCache.RebootCacheCluster: rebootCacheClusterResponse :: Int -> RebootCacheClusterResponse
- Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: revokeCacheSecurityGroupIngressResponse :: RevokeCacheSecurityGroupIngressResponse
+ Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress: revokeCacheSecurityGroupIngressResponse :: Int -> RevokeCacheSecurityGroupIngressResponse
Files
- README.md +29/−12
- amazonka-elasticache.cabal +58/−16
- gen/Network/AWS/ElastiCache.hs +654/−87
- gen/Network/AWS/ElastiCache/AddTagsToResource.hs +76/−99
- gen/Network/AWS/ElastiCache/AuthorizeCacheSecurityGroupIngress.hs +120/−104
- gen/Network/AWS/ElastiCache/CopySnapshot.hs +94/−82
- gen/Network/AWS/ElastiCache/CreateCacheCluster.hs +389/−338
- gen/Network/AWS/ElastiCache/CreateCacheParameterGroup.hs +113/−100
- gen/Network/AWS/ElastiCache/CreateCacheSecurityGroup.hs +106/−90
- gen/Network/AWS/ElastiCache/CreateCacheSubnetGroup.hs +111/−97
- gen/Network/AWS/ElastiCache/CreateReplicationGroup.hs +381/−333
- gen/Network/AWS/ElastiCache/CreateSnapshot.hs +97/−83
- gen/Network/AWS/ElastiCache/DeleteCacheCluster.hs +106/−92
- gen/Network/AWS/ElastiCache/DeleteCacheParameterGroup.hs +72/−65
- gen/Network/AWS/ElastiCache/DeleteCacheSecurityGroup.hs +69/−62
- gen/Network/AWS/ElastiCache/DeleteCacheSubnetGroup.hs +71/−65
- gen/Network/AWS/ElastiCache/DeleteReplicationGroup.hs +117/−104
- gen/Network/AWS/ElastiCache/DeleteSnapshot.hs +92/−78
- gen/Network/AWS/ElastiCache/DescribeCacheClusters.hs +159/−140
- gen/Network/AWS/ElastiCache/DescribeCacheEngineVersions.hs +161/−140
- gen/Network/AWS/ElastiCache/DescribeCacheParameterGroups.hs +135/−114
- gen/Network/AWS/ElastiCache/DescribeCacheParameters.hs +155/−134
- gen/Network/AWS/ElastiCache/DescribeCacheSecurityGroups.hs +139/−119
- gen/Network/AWS/ElastiCache/DescribeCacheSubnetGroups.hs +132/−113
- gen/Network/AWS/ElastiCache/DescribeEngineDefaultParameters.hs +138/−110
- gen/Network/AWS/ElastiCache/DescribeEvents.hs +172/−152
- gen/Network/AWS/ElastiCache/DescribeReplicationGroups.hs +140/−119
- gen/Network/AWS/ElastiCache/DescribeReservedCacheNodes.hs +205/−166
- gen/Network/AWS/ElastiCache/DescribeReservedCacheNodesOfferings.hs +207/−161
- gen/Network/AWS/ElastiCache/DescribeSnapshots.hs +149/−129
- gen/Network/AWS/ElastiCache/ListTagsForResource.hs +66/−90
- gen/Network/AWS/ElastiCache/ModifyCacheCluster.hs +361/−325
- gen/Network/AWS/ElastiCache/ModifyCacheParameterGroup.hs +75/−96
- gen/Network/AWS/ElastiCache/ModifyCacheSubnetGroup.hs +107/−92
- gen/Network/AWS/ElastiCache/ModifyReplicationGroup.hs +280/−266
- gen/Network/AWS/ElastiCache/PurchaseReservedCacheNodesOffering.hs +109/−92
- gen/Network/AWS/ElastiCache/RebootCacheCluster.hs +104/−89
- gen/Network/AWS/ElastiCache/RemoveTagsFromResource.hs +72/−96
- gen/Network/AWS/ElastiCache/ResetCacheParameterGroup.hs +89/−110
- gen/Network/AWS/ElastiCache/RevokeCacheSecurityGroupIngress.hs +114/−100
- gen/Network/AWS/ElastiCache/Types.hs +644/−2983
- gen/Network/AWS/ElastiCache/Types/Product.hs +2436/−0
- gen/Network/AWS/ElastiCache/Types/Sum.hs +129/−0
- gen/Network/AWS/ElastiCache/Waiters.hs +129/−72
- test/Main.hs +21/−0
- test/Test/AWS/ElastiCache.hs +26/−0
- test/Test/AWS/ElastiCache/Internal.hs +16/−0
- test/Test/AWS/Gen/ElastiCache.hs +668/−0
README.md view
@@ -1,27 +1,44 @@ # Amazon ElastiCache SDK -> _Warning:_ This is an experimental preview release which is still under heavy development and not intended for public consumption, _caveat emptor_!-+* [Version](#version) * [Description](#description) * [Contribute](#contribute) * [Licence](#licence) ++## Version++`1.0.0`++ ## Description -ElastiCache is a web service that makes it easy to deploy, operate, and scale-an in-memory cache in the cloud. The service improves the performance of web-applications by allowing you to retrieve information from fast, managed,-in-memory caches, instead of relying entirely on slower disk-based databases.-Amazon ElastiCache automatically detects and replaces failed nodes, reducing-the overhead associated with self-managed infrastructures and provides a-resilient system that mitigates the risk of overloaded databases, which slow-website and application load times. Through integration with Amazon-CloudWatch, Amazon ElastiCache provides enhanced visibility into key-performance metrics associated with your Memcached or Redis nodes.+Amazon ElastiCache +Amazon ElastiCache is a web service that makes it easier to set up,+operate, and scale a distributed cache in the cloud.++With ElastiCache, customers gain all of the benefits of a+high-performance, in-memory cache with far less of the administrative+burden of launching and managing a distributed cache. The service makes+setup, scaling, and cluster failure handling much simpler than in a+self-managed cache deployment.++In addition, through integration with Amazon CloudWatch, customers get+enhanced visibility into the key performance statistics associated with+their cache and can receive alarms if a part of their cache runs hot.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-elasticache) and the [AWS API Reference](http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html). +The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core). ## Contribute
amazonka-elasticache.cabal view
@@ -1,34 +1,46 @@ name: amazonka-elasticache-version: 0.3.6+version: 1.0.0 synopsis: Amazon ElastiCache SDK. homepage: https://github.com/brendanhay/amazonka license: OtherLicense license-file: LICENSE author: Brendan Hay maintainer: Brendan Hay <brendan.g.hay@gmail.com>-copyright: Copyright (c) 2013-2014 Brendan Hay+copyright: Copyright (c) 2013-2015 Brendan Hay category: Network, AWS, Cloud, Distributed Computing build-type: Simple extra-source-files: README.md cabal-version: >= 1.10 description:- ElastiCache is a web service that makes it easy to deploy, operate, and scale- an in-memory cache in the cloud. The service improves the performance of web- applications by allowing you to retrieve information from fast, managed,- in-memory caches, instead of relying entirely on slower disk-based databases.- Amazon ElastiCache automatically detects and replaces failed nodes, reducing- the overhead associated with self-managed infrastructures and provides a- resilient system that mitigates the risk of overloaded databases, which slow- website and application load times. Through integration with Amazon- CloudWatch, Amazon ElastiCache provides enhanced visibility into key- performance metrics associated with your Memcached or Redis nodes.+ Amazon ElastiCache + Amazon ElastiCache is a web service that makes it easier to set up,+ operate, and scale a distributed cache in the cloud.++ With ElastiCache, customers gain all of the benefits of a+ high-performance, in-memory cache with far less of the administrative+ burden of launching and managing a distributed cache. The service makes+ setup, scaling, and cluster failure handling much simpler than in a+ self-managed cache deployment.++ In addition, through integration with Amazon CloudWatch, customers get+ enhanced visibility into the key performance statistics associated with+ their cache and can receive alarms if a part of their cache runs hot. .- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html AWS API Reference>+ The types from this library are intended to be used with+ <http://hackage.haskell.org/package/amazonka amazonka>, which provides+ mechanisms for specifying AuthN/AuthZ information and sending requests. .- /Warning:/ This is an experimental preview release which is still under- heavy development and not intended for public consumption, caveat emptor!+ Use of lenses is required for constructing and manipulating types.+ This is due to the amount of nesting of AWS types and transparency regarding+ de/serialisation into more palatable Haskell values.+ The provided lenses should be compatible with any of the major lens libraries+ such as <http://hackage.haskell.org/package/lens lens> or+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Network.AWS.ElastiCache" and the <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html AWS API Reference>+ to get started. source-repository head type: git@@ -83,7 +95,37 @@ , Network.AWS.ElastiCache.Waiters other-modules:+ Network.AWS.ElastiCache.Types.Product+ , Network.AWS.ElastiCache.Types.Sum build-depends:- amazonka-core == 0.3.6.*+ amazonka-core == 1.0.0.* , base >= 4.7 && < 5++test-suite amazonka-elasticache-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs++ ghc-options: -Wall -threaded++ -- This is not comprehensive if modules have manually been added.+ -- It exists to ensure cabal 'somewhat' detects test module changes.+ other-modules:+ Test.AWS.ElastiCache+ , Test.AWS.Gen.ElastiCache+ , Test.AWS.ElastiCache.Internal++ build-depends:+ amazonka-core == 1.0.0+ , amazonka-test == 1.0.0+ , amazonka-elasticache == 1.0.0+ , base+ , bytestring+ , lens+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
gen/Network/AWS/ElastiCache.hs view
@@ -1,103 +1,670 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | ElastiCache is a web service that makes it easy to deploy, operate, and scale--- an in-memory cache in the cloud. The service improves the performance of web--- applications by allowing you to retrieve information from fast, managed,--- in-memory caches, instead of relying entirely on slower disk-based databases.--- Amazon ElastiCache automatically detects and replaces failed nodes, reducing--- the overhead associated with self-managed infrastructures and provides a--- resilient system that mitigates the risk of overloaded databases, which slow--- website and application load times. Through integration with Amazon--- CloudWatch, Amazon ElastiCache provides enhanced visibility into key--- performance metrics associated with your Memcached or Redis nodes.+-- Amazon ElastiCache+--+-- Amazon ElastiCache is a web service that makes it easier to set up,+-- operate, and scale a distributed cache in the cloud.+--+-- With ElastiCache, customers gain all of the benefits of a+-- high-performance, in-memory cache with far less of the administrative+-- burden of launching and managing a distributed cache. The service makes+-- setup, scaling, and cluster failure handling much simpler than in a+-- self-managed cache deployment.+--+-- In addition, through integration with Amazon CloudWatch, customers get+-- enhanced visibility into the key performance statistics associated with+-- their cache and can receive alarms if a part of their cache runs hot.+--+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.ElastiCache- ( module Network.AWS.ElastiCache.AddTagsToResource- , module Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress- , module Network.AWS.ElastiCache.CopySnapshot- , module Network.AWS.ElastiCache.CreateCacheCluster- , module Network.AWS.ElastiCache.CreateCacheParameterGroup- , module Network.AWS.ElastiCache.CreateCacheSecurityGroup- , module Network.AWS.ElastiCache.CreateCacheSubnetGroup+ (+ -- * Service+ ElastiCache++ -- * Errors+ -- $errors++ -- ** CacheSubnetGroupAlreadyExistsFault+ , _CacheSubnetGroupAlreadyExistsFault++ -- ** CacheSubnetGroupInUse+ , _CacheSubnetGroupInUse++ -- ** CacheSecurityGroupNotFoundFault+ , _CacheSecurityGroupNotFoundFault++ -- ** ReservedCacheNodeAlreadyExistsFault+ , _ReservedCacheNodeAlreadyExistsFault++ -- ** AuthorizationAlreadyExistsFault+ , _AuthorizationAlreadyExistsFault++ -- ** ReservedCacheNodeQuotaExceededFault+ , _ReservedCacheNodeQuotaExceededFault++ -- ** CacheSubnetGroupQuotaExceededFault+ , _CacheSubnetGroupQuotaExceededFault++ -- ** ReplicationGroupNotFoundFault+ , _ReplicationGroupNotFoundFault++ -- ** ReservedCacheNodesOfferingNotFoundFault+ , _ReservedCacheNodesOfferingNotFoundFault++ -- ** TagQuotaPerResourceExceeded+ , _TagQuotaPerResourceExceeded++ -- ** InvalidSubnet+ , _InvalidSubnet++ -- ** SnapshotNotFoundFault+ , _SnapshotNotFoundFault++ -- ** InsufficientCacheClusterCapacityFault+ , _InsufficientCacheClusterCapacityFault++ -- ** InvalidSnapshotStateFault+ , _InvalidSnapshotStateFault++ -- ** SnapshotAlreadyExistsFault+ , _SnapshotAlreadyExistsFault++ -- ** TagNotFoundFault+ , _TagNotFoundFault++ -- ** SnapshotQuotaExceededFault+ , _SnapshotQuotaExceededFault++ -- ** CacheParameterGroupAlreadyExistsFault+ , _CacheParameterGroupAlreadyExistsFault++ -- ** NodeQuotaForClusterExceededFault+ , _NodeQuotaForClusterExceededFault++ -- ** SnapshotFeatureNotSupportedFault+ , _SnapshotFeatureNotSupportedFault++ -- ** CacheSubnetGroupNotFoundFault+ , _CacheSubnetGroupNotFoundFault++ -- ** ReservedCacheNodeNotFoundFault+ , _ReservedCacheNodeNotFoundFault++ -- ** InvalidParameterValueException+ , _InvalidParameterValueException++ -- ** InvalidVPCNetworkStateFault+ , _InvalidVPCNetworkStateFault++ -- ** CacheClusterNotFoundFault+ , _CacheClusterNotFoundFault++ -- ** InvalidReplicationGroupStateFault+ , _InvalidReplicationGroupStateFault++ -- ** ReplicationGroupAlreadyExistsFault+ , _ReplicationGroupAlreadyExistsFault++ -- ** SubnetInUse+ , _SubnetInUse++ -- ** CacheClusterAlreadyExistsFault+ , _CacheClusterAlreadyExistsFault++ -- ** ClusterQuotaForCustomerExceededFault+ , _ClusterQuotaForCustomerExceededFault++ -- ** AuthorizationNotFoundFault+ , _AuthorizationNotFoundFault++ -- ** CacheSecurityGroupQuotaExceededFault+ , _CacheSecurityGroupQuotaExceededFault++ -- ** InvalidCacheClusterStateFault+ , _InvalidCacheClusterStateFault++ -- ** CacheParameterGroupQuotaExceededFault+ , _CacheParameterGroupQuotaExceededFault++ -- ** NodeQuotaForCustomerExceededFault+ , _NodeQuotaForCustomerExceededFault++ -- ** CacheSubnetQuotaExceededFault+ , _CacheSubnetQuotaExceededFault++ -- ** CacheParameterGroupNotFoundFault+ , _CacheParameterGroupNotFoundFault++ -- ** InvalidParameterCombinationException+ , _InvalidParameterCombinationException++ -- ** InvalidARNFault+ , _InvalidARNFault++ -- ** InvalidCacheParameterGroupStateFault+ , _InvalidCacheParameterGroupStateFault++ -- ** CacheSecurityGroupAlreadyExistsFault+ , _CacheSecurityGroupAlreadyExistsFault++ -- ** InvalidCacheSecurityGroupStateFault+ , _InvalidCacheSecurityGroupStateFault++ -- * Waiters+ -- $waiters++ -- ** CacheClusterAvailable+ , cacheClusterAvailable++ -- ** CacheClusterDeleted+ , cacheClusterDeleted++ -- ** ReplicationGroupDeleted+ , replicationGroupDeleted++ -- ** ReplicationGroupAvailable+ , replicationGroupAvailable++ -- * Operations+ -- $operations++ -- ** DeleteCacheSecurityGroup+ , module Network.AWS.ElastiCache.DeleteCacheSecurityGroup++ -- ** CreateReplicationGroup , module Network.AWS.ElastiCache.CreateReplicationGroup- , module Network.AWS.ElastiCache.CreateSnapshot++ -- ** DeleteCacheCluster , module Network.AWS.ElastiCache.DeleteCacheCluster- , module Network.AWS.ElastiCache.DeleteCacheParameterGroup- , module Network.AWS.ElastiCache.DeleteCacheSecurityGroup- , module Network.AWS.ElastiCache.DeleteCacheSubnetGroup++ -- ** RebootCacheCluster+ , module Network.AWS.ElastiCache.RebootCacheCluster++ -- ** RevokeCacheSecurityGroupIngress+ , module Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress++ -- ** DescribeEvents (Paginated)+ , module Network.AWS.ElastiCache.DescribeEvents++ -- ** DescribeEngineDefaultParameters (Paginated)+ , module Network.AWS.ElastiCache.DescribeEngineDefaultParameters++ -- ** ModifyCacheParameterGroup+ , module Network.AWS.ElastiCache.ModifyCacheParameterGroup++ -- ** CreateCacheCluster+ , module Network.AWS.ElastiCache.CreateCacheCluster++ -- ** ListTagsForResource+ , module Network.AWS.ElastiCache.ListTagsForResource++ -- ** DeleteReplicationGroup , module Network.AWS.ElastiCache.DeleteReplicationGroup- , module Network.AWS.ElastiCache.DeleteSnapshot++ -- ** PurchaseReservedCacheNodesOffering+ , module Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering++ -- ** DescribeCacheClusters (Paginated) , module Network.AWS.ElastiCache.DescribeCacheClusters- , module Network.AWS.ElastiCache.DescribeCacheEngineVersions- , module Network.AWS.ElastiCache.DescribeCacheParameterGroups++ -- ** ModifyReplicationGroup+ , module Network.AWS.ElastiCache.ModifyReplicationGroup++ -- ** RemoveTagsFromResource+ , module Network.AWS.ElastiCache.RemoveTagsFromResource++ -- ** DescribeCacheParameters (Paginated) , module Network.AWS.ElastiCache.DescribeCacheParameters- , module Network.AWS.ElastiCache.DescribeCacheSecurityGroups++ -- ** DescribeCacheSubnetGroups (Paginated) , module Network.AWS.ElastiCache.DescribeCacheSubnetGroups- , module Network.AWS.ElastiCache.DescribeEngineDefaultParameters- , module Network.AWS.ElastiCache.DescribeEvents++ -- ** CreateCacheSecurityGroup+ , module Network.AWS.ElastiCache.CreateCacheSecurityGroup++ -- ** AddTagsToResource+ , module Network.AWS.ElastiCache.AddTagsToResource++ -- ** AuthorizeCacheSecurityGroupIngress+ , module Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress++ -- ** CopySnapshot+ , module Network.AWS.ElastiCache.CopySnapshot++ -- ** CreateCacheSubnetGroup+ , module Network.AWS.ElastiCache.CreateCacheSubnetGroup++ -- ** DescribeCacheParameterGroups (Paginated)+ , module Network.AWS.ElastiCache.DescribeCacheParameterGroups++ -- ** ResetCacheParameterGroup+ , module Network.AWS.ElastiCache.ResetCacheParameterGroup++ -- ** DescribeSnapshots (Paginated)+ , module Network.AWS.ElastiCache.DescribeSnapshots++ -- ** DescribeReservedCacheNodesOfferings (Paginated)+ , module Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings++ -- ** DeleteSnapshot+ , module Network.AWS.ElastiCache.DeleteSnapshot++ -- ** DescribeReplicationGroups (Paginated) , module Network.AWS.ElastiCache.DescribeReplicationGroups++ -- ** ModifyCacheSubnetGroup+ , module Network.AWS.ElastiCache.ModifyCacheSubnetGroup++ -- ** CreateSnapshot+ , module Network.AWS.ElastiCache.CreateSnapshot++ -- ** DescribeCacheSecurityGroups (Paginated)+ , module Network.AWS.ElastiCache.DescribeCacheSecurityGroups++ -- ** DeleteCacheParameterGroup+ , module Network.AWS.ElastiCache.DeleteCacheParameterGroup++ -- ** DescribeReservedCacheNodes (Paginated) , module Network.AWS.ElastiCache.DescribeReservedCacheNodes- , module Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings- , module Network.AWS.ElastiCache.DescribeSnapshots- , module Network.AWS.ElastiCache.ListTagsForResource++ -- ** DescribeCacheEngineVersions (Paginated)+ , module Network.AWS.ElastiCache.DescribeCacheEngineVersions++ -- ** ModifyCacheCluster , module Network.AWS.ElastiCache.ModifyCacheCluster- , module Network.AWS.ElastiCache.ModifyCacheParameterGroup- , module Network.AWS.ElastiCache.ModifyCacheSubnetGroup- , module Network.AWS.ElastiCache.ModifyReplicationGroup- , module Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering- , module Network.AWS.ElastiCache.RebootCacheCluster- , module Network.AWS.ElastiCache.RemoveTagsFromResource- , module Network.AWS.ElastiCache.ResetCacheParameterGroup- , module Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress- , module Network.AWS.ElastiCache.Types- , module Network.AWS.ElastiCache.Waiters++ -- ** CreateCacheParameterGroup+ , module Network.AWS.ElastiCache.CreateCacheParameterGroup++ -- ** DeleteCacheSubnetGroup+ , module Network.AWS.ElastiCache.DeleteCacheSubnetGroup++ -- * Types++ -- ** AZMode+ , AZMode (..)++ -- ** AutomaticFailoverStatus+ , AutomaticFailoverStatus (..)++ -- ** PendingAutomaticFailoverStatus+ , PendingAutomaticFailoverStatus (..)++ -- ** SourceType+ , SourceType (..)++ -- ** AvailabilityZone+ , AvailabilityZone+ , availabilityZone+ , azName++ -- ** CacheCluster+ , CacheCluster+ , cacheCluster+ , ccCacheNodeType+ , ccEngineVersion+ , ccCacheNodes+ , ccCacheClusterCreateTime+ , ccAutoMinorVersionUpgrade+ , ccSecurityGroups+ , ccNotificationConfiguration+ , ccSnapshotWindow+ , ccCacheClusterId+ , ccConfigurationEndpoint+ , ccEngine+ , ccCacheSecurityGroups+ , ccClientDownloadLandingPage+ , ccPreferredMaintenanceWindow+ , ccCacheSubnetGroupName+ , ccCacheClusterStatus+ , ccPreferredAvailabilityZone+ , ccCacheParameterGroup+ , ccSnapshotRetentionLimit+ , ccReplicationGroupId+ , ccPendingModifiedValues+ , ccNumCacheNodes++ -- ** CacheEngineVersion+ , CacheEngineVersion+ , cacheEngineVersion+ , cevCacheEngineDescription+ , cevCacheParameterGroupFamily+ , cevEngineVersion+ , cevCacheEngineVersionDescription+ , cevEngine++ -- ** CacheNode+ , CacheNode+ , cacheNode+ , cnSourceCacheNodeId+ , cnParameterGroupStatus+ , cnCacheNodeCreateTime+ , cnCustomerAvailabilityZone+ , cnCacheNodeId+ , cnCacheNodeStatus+ , cnEndpoint++ -- ** CacheNodeTypeSpecificParameter+ , CacheNodeTypeSpecificParameter+ , cacheNodeTypeSpecificParameter+ , cntspCacheNodeTypeSpecificValues+ , cntspMinimumEngineVersion+ , cntspSource+ , cntspIsModifiable+ , cntspAllowedValues+ , cntspDataType+ , cntspParameterName+ , cntspDescription++ -- ** CacheNodeTypeSpecificValue+ , CacheNodeTypeSpecificValue+ , cacheNodeTypeSpecificValue+ , cntsvCacheNodeType+ , cntsvValue++ -- ** CacheParameterGroup+ , CacheParameterGroup+ , cacheParameterGroup+ , cpgCacheParameterGroupFamily+ , cpgCacheParameterGroupName+ , cpgDescription++ -- ** CacheParameterGroupNameMessage+ , CacheParameterGroupNameMessage+ , cacheParameterGroupNameMessage+ , cpgnmCacheParameterGroupName++ -- ** CacheParameterGroupStatus+ , CacheParameterGroupStatus+ , cacheParameterGroupStatus+ , cpgsCacheParameterGroupName+ , cpgsCacheNodeIdsToReboot+ , cpgsParameterApplyStatus++ -- ** CacheSecurityGroup+ , CacheSecurityGroup+ , cacheSecurityGroup+ , csgCacheSecurityGroupName+ , csgOwnerId+ , csgEC2SecurityGroups+ , csgDescription++ -- ** CacheSecurityGroupMembership+ , CacheSecurityGroupMembership+ , cacheSecurityGroupMembership+ , csgmStatus+ , csgmCacheSecurityGroupName++ -- ** CacheSubnetGroup+ , CacheSubnetGroup+ , cacheSubnetGroup+ , csgVPCId+ , csgSubnets+ , csgCacheSubnetGroupName+ , csgCacheSubnetGroupDescription++ -- ** EC2SecurityGroup+ , EC2SecurityGroup+ , ec2SecurityGroup+ , esgStatus+ , esgEC2SecurityGroupOwnerId+ , esgEC2SecurityGroupName++ -- ** Endpoint+ , Endpoint+ , endpoint+ , eAddress+ , ePort++ -- ** EngineDefaults+ , EngineDefaults+ , engineDefaults+ , edCacheParameterGroupFamily+ , edCacheNodeTypeSpecificParameters+ , edParameters+ , edMarker++ -- ** Event+ , Event+ , event+ , eSourceType+ , eSourceIdentifier+ , eDate+ , eMessage++ -- ** NodeGroup+ , NodeGroup+ , nodeGroup+ , ngStatus+ , ngPrimaryEndpoint+ , ngNodeGroupMembers+ , ngNodeGroupId++ -- ** NodeGroupMember+ , NodeGroupMember+ , nodeGroupMember+ , ngmCacheClusterId+ , ngmCacheNodeId+ , ngmPreferredAvailabilityZone+ , ngmCurrentRole+ , ngmReadEndpoint++ -- ** NodeSnapshot+ , NodeSnapshot+ , nodeSnapshot+ , nsCacheNodeCreateTime+ , nsCacheNodeId+ , nsSnapshotCreateTime+ , nsCacheSize++ -- ** NotificationConfiguration+ , NotificationConfiguration+ , notificationConfiguration+ , ncTopicStatus+ , ncTopicARN++ -- ** Parameter+ , Parameter+ , parameter+ , pParameterValue+ , pMinimumEngineVersion+ , pSource+ , pIsModifiable+ , pAllowedValues+ , pDataType+ , pParameterName+ , pDescription++ -- ** ParameterNameValue+ , ParameterNameValue+ , parameterNameValue+ , pnvParameterValue+ , pnvParameterName++ -- ** PendingModifiedValues+ , PendingModifiedValues+ , pendingModifiedValues+ , pmvEngineVersion+ , pmvCacheNodeIdsToRemove+ , pmvNumCacheNodes++ -- ** RecurringCharge+ , RecurringCharge+ , recurringCharge+ , rcRecurringChargeFrequency+ , rcRecurringChargeAmount++ -- ** ReplicationGroup+ , ReplicationGroup+ , replicationGroup+ , rgNodeGroups+ , rgStatus+ , rgSnapshottingClusterId+ , rgMemberClusters+ , rgReplicationGroupId+ , rgPendingModifiedValues+ , rgDescription+ , rgAutomaticFailover++ -- ** ReplicationGroupPendingModifiedValues+ , ReplicationGroupPendingModifiedValues+ , replicationGroupPendingModifiedValues+ , rgpmvPrimaryClusterId+ , rgpmvAutomaticFailoverStatus++ -- ** ReservedCacheNode+ , ReservedCacheNode+ , reservedCacheNode+ , rcnCacheNodeType+ , rcnState+ , rcnProductDescription+ , rcnStartTime+ , rcnCacheNodeCount+ , rcnReservedCacheNodeId+ , rcnOfferingType+ , rcnUsagePrice+ , rcnRecurringCharges+ , rcnFixedPrice+ , rcnDuration+ , rcnReservedCacheNodesOfferingId++ -- ** ReservedCacheNodesOffering+ , ReservedCacheNodesOffering+ , reservedCacheNodesOffering+ , rcnoCacheNodeType+ , rcnoProductDescription+ , rcnoOfferingType+ , rcnoUsagePrice+ , rcnoRecurringCharges+ , rcnoFixedPrice+ , rcnoDuration+ , rcnoReservedCacheNodesOfferingId++ -- ** SecurityGroupMembership+ , SecurityGroupMembership+ , securityGroupMembership+ , sgmStatus+ , sgmSecurityGroupId++ -- ** Snapshot+ , Snapshot+ , snapshot+ , sCacheNodeType+ , sEngineVersion+ , sCacheClusterCreateTime+ , sAutoMinorVersionUpgrade+ , sCacheParameterGroupName+ , sSnapshotStatus+ , sSnapshotWindow+ , sVPCId+ , sCacheClusterId+ , sEngine+ , sPreferredMaintenanceWindow+ , sTopicARN+ , sCacheSubnetGroupName+ , sNodeSnapshots+ , sPreferredAvailabilityZone+ , sSnapshotRetentionLimit+ , sSnapshotName+ , sSnapshotSource+ , sNumCacheNodes+ , sPort++ -- ** Subnet+ , Subnet+ , subnet+ , sSubnetIdentifier+ , sSubnetAvailabilityZone++ -- ** Tag+ , Tag+ , tag+ , tagValue+ , tagKey++ -- ** TagListMessage+ , TagListMessage+ , tagListMessage+ , tlmTagList ) where -import Network.AWS.ElastiCache.AddTagsToResource-import Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress-import Network.AWS.ElastiCache.CopySnapshot-import Network.AWS.ElastiCache.CreateCacheCluster-import Network.AWS.ElastiCache.CreateCacheParameterGroup-import Network.AWS.ElastiCache.CreateCacheSecurityGroup-import Network.AWS.ElastiCache.CreateCacheSubnetGroup-import Network.AWS.ElastiCache.CreateReplicationGroup-import Network.AWS.ElastiCache.CreateSnapshot-import Network.AWS.ElastiCache.DeleteCacheCluster-import Network.AWS.ElastiCache.DeleteCacheParameterGroup-import Network.AWS.ElastiCache.DeleteCacheSecurityGroup-import Network.AWS.ElastiCache.DeleteCacheSubnetGroup-import Network.AWS.ElastiCache.DeleteReplicationGroup-import Network.AWS.ElastiCache.DeleteSnapshot-import Network.AWS.ElastiCache.DescribeCacheClusters-import Network.AWS.ElastiCache.DescribeCacheEngineVersions-import Network.AWS.ElastiCache.DescribeCacheParameterGroups-import Network.AWS.ElastiCache.DescribeCacheParameters-import Network.AWS.ElastiCache.DescribeCacheSecurityGroups-import Network.AWS.ElastiCache.DescribeCacheSubnetGroups-import Network.AWS.ElastiCache.DescribeEngineDefaultParameters-import Network.AWS.ElastiCache.DescribeEvents-import Network.AWS.ElastiCache.DescribeReplicationGroups-import Network.AWS.ElastiCache.DescribeReservedCacheNodes-import Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings-import Network.AWS.ElastiCache.DescribeSnapshots-import Network.AWS.ElastiCache.ListTagsForResource-import Network.AWS.ElastiCache.ModifyCacheCluster-import Network.AWS.ElastiCache.ModifyCacheParameterGroup-import Network.AWS.ElastiCache.ModifyCacheSubnetGroup-import Network.AWS.ElastiCache.ModifyReplicationGroup-import Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering-import Network.AWS.ElastiCache.RebootCacheCluster-import Network.AWS.ElastiCache.RemoveTagsFromResource-import Network.AWS.ElastiCache.ResetCacheParameterGroup-import Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress-import Network.AWS.ElastiCache.Types-import Network.AWS.ElastiCache.Waiters+import Network.AWS.ElastiCache.AddTagsToResource+import Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress+import Network.AWS.ElastiCache.CopySnapshot+import Network.AWS.ElastiCache.CreateCacheCluster+import Network.AWS.ElastiCache.CreateCacheParameterGroup+import Network.AWS.ElastiCache.CreateCacheSecurityGroup+import Network.AWS.ElastiCache.CreateCacheSubnetGroup+import Network.AWS.ElastiCache.CreateReplicationGroup+import Network.AWS.ElastiCache.CreateSnapshot+import Network.AWS.ElastiCache.DeleteCacheCluster+import Network.AWS.ElastiCache.DeleteCacheParameterGroup+import Network.AWS.ElastiCache.DeleteCacheSecurityGroup+import Network.AWS.ElastiCache.DeleteCacheSubnetGroup+import Network.AWS.ElastiCache.DeleteReplicationGroup+import Network.AWS.ElastiCache.DeleteSnapshot+import Network.AWS.ElastiCache.DescribeCacheClusters+import Network.AWS.ElastiCache.DescribeCacheEngineVersions+import Network.AWS.ElastiCache.DescribeCacheParameterGroups+import Network.AWS.ElastiCache.DescribeCacheParameters+import Network.AWS.ElastiCache.DescribeCacheSecurityGroups+import Network.AWS.ElastiCache.DescribeCacheSubnetGroups+import Network.AWS.ElastiCache.DescribeEngineDefaultParameters+import Network.AWS.ElastiCache.DescribeEvents+import Network.AWS.ElastiCache.DescribeReplicationGroups+import Network.AWS.ElastiCache.DescribeReservedCacheNodes+import Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings+import Network.AWS.ElastiCache.DescribeSnapshots+import Network.AWS.ElastiCache.ListTagsForResource+import Network.AWS.ElastiCache.ModifyCacheCluster+import Network.AWS.ElastiCache.ModifyCacheParameterGroup+import Network.AWS.ElastiCache.ModifyCacheSubnetGroup+import Network.AWS.ElastiCache.ModifyReplicationGroup+import Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering+import Network.AWS.ElastiCache.RebootCacheCluster+import Network.AWS.ElastiCache.RemoveTagsFromResource+import Network.AWS.ElastiCache.ResetCacheParameterGroup+import Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Waiters++{- $errors+Error matchers are designed for use with the functions provided by+<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+This allows catching (and rethrowing) service specific errors returned+by 'ElastiCache'.+-}++{- $operations+Some AWS operations return results that are incomplete and require subsequent+requests in order to obtain the entire result set. The process of sending+subsequent requests to continue where a previous request left off is called+pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+1000 objects at a time, and you must send subsequent requests with the+appropriate Marker in order to retrieve the next page of results.++Operations that have an 'AWSPager' instance can transparently perform subsequent+requests, correctly setting Markers and other request facets to iterate through+the entire result set of a truncated API operation. Operations which support+this have an additional note in the documentation.++Many operations have the ability to filter results on the server side. See the+individual operation parameters for details.+-}++{- $waiters+Waiters poll by repeatedly sending a request until some remote success condition+configured by the 'Wait' specification is fulfilled. The 'Wait' specification+determines how many attempts should be made, in addition to delay and retry strategies.+-}
gen/Network/AWS/ElastiCache/AddTagsToResource.hs view
@@ -1,134 +1,111 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.AddTagsToResource--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /AddTagsToResource/ action adds up to 10 cost allocation tags to the named--- resource. A /cost allocation tag/ is a key-value pair where the key and value--- are case-sensitive. Cost allocation tags can be used to categorize and track--- your AWS costs.+-- The /AddTagsToResource/ action adds up to 10 cost allocation tags to the+-- named resource. A /cost allocation tag/ is a key-value pair where the+-- key and value are case-sensitive. Cost allocation tags can be used to+-- categorize and track your AWS costs. -- -- When you apply tags to your ElastiCache resources, AWS generates a cost--- allocation report as a comma-separated value (CSV) file with your usage and--- costs aggregated by your tags. You can apply tags that represent business--- categories (such as cost centers, application names, or owners) to organize--- your costs across multiple services. For more information, see <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Tagging.html Using CostAllocation Tags in Amazon ElastiCache>.+-- allocation report as a comma-separated value (CSV) file with your usage+-- and costs aggregated by your tags. You can apply tags that represent+-- business categories (such as cost centers, application names, or owners)+-- to organize your costs across multiple services. For more information,+-- see+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Tagging.html Using Cost Allocation Tags in Amazon ElastiCache>. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AddTagsToResource.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AddTagsToResource.html AWS API Reference> for AddTagsToResource. module Network.AWS.ElastiCache.AddTagsToResource (- -- * Request- AddTagsToResource- -- ** Request constructor- , addTagsToResource- -- ** Request lenses+ -- * Creating a Request+ addTagsToResource+ , AddTagsToResource+ -- * Request Lenses , attrResourceName , attrTags - -- * Response- , AddTagsToResourceResponse- -- ** Response constructor- , addTagsToResourceResponse- -- ** Response lenses- , attrrTagList+ -- * Destructuring the Response+ , tagListMessage+ , TagListMessage+ -- * Response Lenses+ , tlmTagList ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data AddTagsToResource = AddTagsToResource- { _attrResourceName :: Text- , _attrTags :: List "member" Tag- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'AddTagsToResource' constructor.+-- | Represents the input of an /AddTagsToResource/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'addTagsToResource' smart constructor.+data AddTagsToResource = AddTagsToResource'+ { _attrResourceName :: !Text+ , _attrTags :: ![Tag]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AddTagsToResource' with the minimum fields required to make a request. ----- * 'attrResourceName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'attrTags' @::@ ['Tag']+-- * 'attrResourceName' ---addTagsToResource :: Text -- ^ 'attrResourceName'- -> AddTagsToResource-addTagsToResource p1 = AddTagsToResource- { _attrResourceName = p1- , _attrTags = mempty+-- * 'attrTags'+addTagsToResource+ :: Text -- ^ 'attrResourceName'+ -> AddTagsToResource+addTagsToResource pResourceName_ =+ AddTagsToResource'+ { _attrResourceName = pResourceName_+ , _attrTags = mempty } --- | The name of the resource to which the tags are to be added, for example 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'.+-- | The name of the resource to which the tags are to be added, for example+-- 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'. attrResourceName :: Lens' AddTagsToResource Text-attrResourceName = lens _attrResourceName (\s a -> s { _attrResourceName = a })+attrResourceName = lens _attrResourceName (\ s a -> s{_attrResourceName = a}); -- | A list of cost allocation tags to be added to this resource. A tag is a -- key-value pair. A tag key must be accompanied by a tag value. attrTags :: Lens' AddTagsToResource [Tag]-attrTags = lens _attrTags (\s a -> s { _attrTags = a }) . _List--newtype AddTagsToResourceResponse = AddTagsToResourceResponse- { _attrrTagList :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList AddTagsToResourceResponse where- type Item AddTagsToResourceResponse = Tag-- fromList = AddTagsToResourceResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _attrrTagList+attrTags = lens _attrTags (\ s a -> s{_attrTags = a}) . _Coerce; --- | 'AddTagsToResourceResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'attrrTagList' @::@ ['Tag']----addTagsToResourceResponse :: AddTagsToResourceResponse-addTagsToResourceResponse = AddTagsToResourceResponse- { _attrrTagList = mempty- }+instance AWSRequest AddTagsToResource where+ type Sv AddTagsToResource = ElastiCache+ type Rs AddTagsToResource = TagListMessage+ request = postQuery+ response+ = receiveXMLWrapper "AddTagsToResourceResult"+ (\ s h x -> parseXML x) --- | A list of cost allocation tags as key-value pairs.-attrrTagList :: Lens' AddTagsToResourceResponse [Tag]-attrrTagList = lens _attrrTagList (\s a -> s { _attrrTagList = a }) . _List+instance ToHeaders AddTagsToResource where+ toHeaders = const mempty instance ToPath AddTagsToResource where- toPath = const "/"+ toPath = const "/" instance ToQuery AddTagsToResource where- toQuery AddTagsToResource{..} = mconcat- [ "ResourceName" =? _attrResourceName- , "Tags" =? _attrTags- ]--instance ToHeaders AddTagsToResource--instance AWSRequest AddTagsToResource where- type Sv AddTagsToResource = ElastiCache- type Rs AddTagsToResource = AddTagsToResourceResponse-- request = post "AddTagsToResource"- response = xmlResponse--instance FromXML AddTagsToResourceResponse where- parseXML = withElement "AddTagsToResourceResult" $ \x -> AddTagsToResourceResponse- <$> x .@? "TagList" .!@ mempty+ toQuery AddTagsToResource'{..}+ = mconcat+ ["Action" =: ("AddTagsToResource" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "ResourceName" =: _attrResourceName,+ "Tags" =: toQueryList "Tag" _attrTags]
gen/Network/AWS/ElastiCache/AuthorizeCacheSecurityGroupIngress.hs view
@@ -1,146 +1,162 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /AuthorizeCacheSecurityGroupIngress/ action allows network ingress to a--- cache security group. Applications using ElastiCache must be running on--- Amazon EC2, and Amazon EC2 security groups are used as the authorization--- mechanism.+-- The /AuthorizeCacheSecurityGroupIngress/ action allows network ingress+-- to a cache security group. Applications using ElastiCache must be+-- running on Amazon EC2, and Amazon EC2 security groups are used as the+-- authorization mechanism. ----- You cannot authorize ingress from an Amazon EC2 security group in one region--- to an ElastiCache cluster in another region.+-- You cannot authorize ingress from an Amazon EC2 security group in one+-- region to an ElastiCache cluster in another region. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AuthorizeCacheSecurityGroupIngress.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AuthorizeCacheSecurityGroupIngress.html AWS API Reference> for AuthorizeCacheSecurityGroupIngress. module Network.AWS.ElastiCache.AuthorizeCacheSecurityGroupIngress (- -- * Request- AuthorizeCacheSecurityGroupIngress- -- ** Request constructor- , authorizeCacheSecurityGroupIngress- -- ** Request lenses+ -- * Creating a Request+ authorizeCacheSecurityGroupIngress+ , AuthorizeCacheSecurityGroupIngress+ -- * Request Lenses , acsgiCacheSecurityGroupName , acsgiEC2SecurityGroupName , acsgiEC2SecurityGroupOwnerId - -- * Response- , AuthorizeCacheSecurityGroupIngressResponse- -- ** Response constructor+ -- * Destructuring the Response , authorizeCacheSecurityGroupIngressResponse- -- ** Response lenses- , acsgirCacheSecurityGroup+ , AuthorizeCacheSecurityGroupIngressResponse+ -- * Response Lenses+ , acsgirsCacheSecurityGroup+ , acsgirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data AuthorizeCacheSecurityGroupIngress = AuthorizeCacheSecurityGroupIngress- { _acsgiCacheSecurityGroupName :: Text- , _acsgiEC2SecurityGroupName :: Text- , _acsgiEC2SecurityGroupOwnerId :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'AuthorizeCacheSecurityGroupIngress' constructor.+-- | Represents the input of an /AuthorizeCacheSecurityGroupIngress/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'authorizeCacheSecurityGroupIngress' smart constructor.+data AuthorizeCacheSecurityGroupIngress = AuthorizeCacheSecurityGroupIngress'+ { _acsgiCacheSecurityGroupName :: !Text+ , _acsgiEC2SecurityGroupName :: !Text+ , _acsgiEC2SecurityGroupOwnerId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AuthorizeCacheSecurityGroupIngress' with the minimum fields required to make a request. ----- * 'acsgiCacheSecurityGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'acsgiEC2SecurityGroupName' @::@ 'Text'+-- * 'acsgiCacheSecurityGroupName' ----- * 'acsgiEC2SecurityGroupOwnerId' @::@ 'Text'+-- * 'acsgiEC2SecurityGroupName' ---authorizeCacheSecurityGroupIngress :: Text -- ^ 'acsgiCacheSecurityGroupName'- -> Text -- ^ 'acsgiEC2SecurityGroupName'- -> Text -- ^ 'acsgiEC2SecurityGroupOwnerId'- -> AuthorizeCacheSecurityGroupIngress-authorizeCacheSecurityGroupIngress p1 p2 p3 = AuthorizeCacheSecurityGroupIngress- { _acsgiCacheSecurityGroupName = p1- , _acsgiEC2SecurityGroupName = p2- , _acsgiEC2SecurityGroupOwnerId = p3+-- * 'acsgiEC2SecurityGroupOwnerId'+authorizeCacheSecurityGroupIngress+ :: Text -- ^ 'acsgiCacheSecurityGroupName'+ -> Text -- ^ 'acsgiEC2SecurityGroupName'+ -> Text -- ^ 'acsgiEC2SecurityGroupOwnerId'+ -> AuthorizeCacheSecurityGroupIngress+authorizeCacheSecurityGroupIngress pCacheSecurityGroupName_ pEC2SecurityGroupName_ pEC2SecurityGroupOwnerId_ =+ AuthorizeCacheSecurityGroupIngress'+ { _acsgiCacheSecurityGroupName = pCacheSecurityGroupName_+ , _acsgiEC2SecurityGroupName = pEC2SecurityGroupName_+ , _acsgiEC2SecurityGroupOwnerId = pEC2SecurityGroupOwnerId_ } -- | The cache security group which will allow network ingress. acsgiCacheSecurityGroupName :: Lens' AuthorizeCacheSecurityGroupIngress Text-acsgiCacheSecurityGroupName =- lens _acsgiCacheSecurityGroupName- (\s a -> s { _acsgiCacheSecurityGroupName = a })+acsgiCacheSecurityGroupName = lens _acsgiCacheSecurityGroupName (\ s a -> s{_acsgiCacheSecurityGroupName = a}); -- | The Amazon EC2 security group to be authorized for ingress to the cache -- security group. acsgiEC2SecurityGroupName :: Lens' AuthorizeCacheSecurityGroupIngress Text-acsgiEC2SecurityGroupName =- lens _acsgiEC2SecurityGroupName- (\s a -> s { _acsgiEC2SecurityGroupName = a })+acsgiEC2SecurityGroupName = lens _acsgiEC2SecurityGroupName (\ s a -> s{_acsgiEC2SecurityGroupName = a}); --- | The AWS account number of the Amazon EC2 security group owner. Note that this--- is not the same thing as an AWS access key ID - you must provide a valid AWS--- account number for this parameter.+-- | The AWS account number of the Amazon EC2 security group owner. Note that+-- this is not the same thing as an AWS access key ID - you must provide a+-- valid AWS account number for this parameter. acsgiEC2SecurityGroupOwnerId :: Lens' AuthorizeCacheSecurityGroupIngress Text-acsgiEC2SecurityGroupOwnerId =- lens _acsgiEC2SecurityGroupOwnerId- (\s a -> s { _acsgiEC2SecurityGroupOwnerId = a })--newtype AuthorizeCacheSecurityGroupIngressResponse = AuthorizeCacheSecurityGroupIngressResponse- { _acsgirCacheSecurityGroup :: Maybe CacheSecurityGroup- } deriving (Eq, Read, Show)+acsgiEC2SecurityGroupOwnerId = lens _acsgiEC2SecurityGroupOwnerId (\ s a -> s{_acsgiEC2SecurityGroupOwnerId = a}); --- | 'AuthorizeCacheSecurityGroupIngressResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'acsgirCacheSecurityGroup' @::@ 'Maybe' 'CacheSecurityGroup'----authorizeCacheSecurityGroupIngressResponse :: AuthorizeCacheSecurityGroupIngressResponse-authorizeCacheSecurityGroupIngressResponse = AuthorizeCacheSecurityGroupIngressResponse- { _acsgirCacheSecurityGroup = Nothing- }+instance AWSRequest+ AuthorizeCacheSecurityGroupIngress where+ type Sv AuthorizeCacheSecurityGroupIngress =+ ElastiCache+ type Rs AuthorizeCacheSecurityGroupIngress =+ AuthorizeCacheSecurityGroupIngressResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "AuthorizeCacheSecurityGroupIngressResult"+ (\ s h x ->+ AuthorizeCacheSecurityGroupIngressResponse' <$>+ (x .@? "CacheSecurityGroup") <*> (pure (fromEnum s))) -acsgirCacheSecurityGroup :: Lens' AuthorizeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)-acsgirCacheSecurityGroup =- lens _acsgirCacheSecurityGroup- (\s a -> s { _acsgirCacheSecurityGroup = a })+instance ToHeaders AuthorizeCacheSecurityGroupIngress+ where+ toHeaders = const mempty -instance ToPath AuthorizeCacheSecurityGroupIngress where- toPath = const "/"+instance ToPath AuthorizeCacheSecurityGroupIngress+ where+ toPath = const "/" -instance ToQuery AuthorizeCacheSecurityGroupIngress where- toQuery AuthorizeCacheSecurityGroupIngress{..} = mconcat- [ "CacheSecurityGroupName" =? _acsgiCacheSecurityGroupName- , "EC2SecurityGroupName" =? _acsgiEC2SecurityGroupName- , "EC2SecurityGroupOwnerId" =? _acsgiEC2SecurityGroupOwnerId- ]+instance ToQuery AuthorizeCacheSecurityGroupIngress+ where+ toQuery AuthorizeCacheSecurityGroupIngress'{..}+ = mconcat+ ["Action" =:+ ("AuthorizeCacheSecurityGroupIngress" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSecurityGroupName" =:+ _acsgiCacheSecurityGroupName,+ "EC2SecurityGroupName" =: _acsgiEC2SecurityGroupName,+ "EC2SecurityGroupOwnerId" =:+ _acsgiEC2SecurityGroupOwnerId] -instance ToHeaders AuthorizeCacheSecurityGroupIngress+-- | /See:/ 'authorizeCacheSecurityGroupIngressResponse' smart constructor.+data AuthorizeCacheSecurityGroupIngressResponse = AuthorizeCacheSecurityGroupIngressResponse'+ { _acsgirsCacheSecurityGroup :: !(Maybe CacheSecurityGroup)+ , _acsgirsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest AuthorizeCacheSecurityGroupIngress where- type Sv AuthorizeCacheSecurityGroupIngress = ElastiCache- type Rs AuthorizeCacheSecurityGroupIngress = AuthorizeCacheSecurityGroupIngressResponse+-- | Creates a value of 'AuthorizeCacheSecurityGroupIngressResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acsgirsCacheSecurityGroup'+--+-- * 'acsgirsStatus'+authorizeCacheSecurityGroupIngressResponse+ :: Int -- ^ 'acsgirsStatus'+ -> AuthorizeCacheSecurityGroupIngressResponse+authorizeCacheSecurityGroupIngressResponse pStatus_ =+ AuthorizeCacheSecurityGroupIngressResponse'+ { _acsgirsCacheSecurityGroup = Nothing+ , _acsgirsStatus = pStatus_+ } - request = post "AuthorizeCacheSecurityGroupIngress"- response = xmlResponse+-- | Undocumented member.+acsgirsCacheSecurityGroup :: Lens' AuthorizeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)+acsgirsCacheSecurityGroup = lens _acsgirsCacheSecurityGroup (\ s a -> s{_acsgirsCacheSecurityGroup = a}); -instance FromXML AuthorizeCacheSecurityGroupIngressResponse where- parseXML = withElement "AuthorizeCacheSecurityGroupIngressResult" $ \x -> AuthorizeCacheSecurityGroupIngressResponse- <$> x .@? "CacheSecurityGroup"+-- | The response status code.+acsgirsStatus :: Lens' AuthorizeCacheSecurityGroupIngressResponse Int+acsgirsStatus = lens _acsgirsStatus (\ s a -> s{_acsgirsStatus = a});
gen/Network/AWS/ElastiCache/CopySnapshot.hs view
@@ -1,120 +1,132 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CopySnapshot--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CopySnapshot/ action makes a copy of an existing snapshot.+-- The /CopySnapshot/ action makes a copy of an existing snapshot. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CopySnapshot.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CopySnapshot.html AWS API Reference> for CopySnapshot. module Network.AWS.ElastiCache.CopySnapshot (- -- * Request- CopySnapshot- -- ** Request constructor- , copySnapshot- -- ** Request lenses+ -- * Creating a Request+ copySnapshot+ , CopySnapshot+ -- * Request Lenses , csSourceSnapshotName , csTargetSnapshotName - -- * Response- , CopySnapshotResponse- -- ** Response constructor+ -- * Destructuring the Response , copySnapshotResponse- -- ** Response lenses- , csrSnapshot+ , CopySnapshotResponse+ -- * Response Lenses+ , csrsSnapshot+ , csrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CopySnapshot = CopySnapshot- { _csSourceSnapshotName :: Text- , _csTargetSnapshotName :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CopySnapshot' constructor.+-- | Represents the input of a /CopySnapshotMessage/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'copySnapshot' smart constructor.+data CopySnapshot = CopySnapshot'+ { _csSourceSnapshotName :: !Text+ , _csTargetSnapshotName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CopySnapshot' with the minimum fields required to make a request. ----- * 'csSourceSnapshotName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'csTargetSnapshotName' @::@ 'Text'+-- * 'csSourceSnapshotName' ---copySnapshot :: Text -- ^ 'csSourceSnapshotName'- -> Text -- ^ 'csTargetSnapshotName'- -> CopySnapshot-copySnapshot p1 p2 = CopySnapshot- { _csSourceSnapshotName = p1- , _csTargetSnapshotName = p2+-- * 'csTargetSnapshotName'+copySnapshot+ :: Text -- ^ 'csSourceSnapshotName'+ -> Text -- ^ 'csTargetSnapshotName'+ -> CopySnapshot+copySnapshot pSourceSnapshotName_ pTargetSnapshotName_ =+ CopySnapshot'+ { _csSourceSnapshotName = pSourceSnapshotName_+ , _csTargetSnapshotName = pTargetSnapshotName_ } -- | The name of an existing snapshot from which to copy. csSourceSnapshotName :: Lens' CopySnapshot Text-csSourceSnapshotName =- lens _csSourceSnapshotName (\s a -> s { _csSourceSnapshotName = a })+csSourceSnapshotName = lens _csSourceSnapshotName (\ s a -> s{_csSourceSnapshotName = a}); -- | A name for the copied snapshot. csTargetSnapshotName :: Lens' CopySnapshot Text-csTargetSnapshotName =- lens _csTargetSnapshotName (\s a -> s { _csTargetSnapshotName = a })--newtype CopySnapshotResponse = CopySnapshotResponse- { _csrSnapshot :: Maybe Snapshot- } deriving (Eq, Read, Show)+csTargetSnapshotName = lens _csTargetSnapshotName (\ s a -> s{_csTargetSnapshotName = a}); --- | 'CopySnapshotResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'csrSnapshot' @::@ 'Maybe' 'Snapshot'----copySnapshotResponse :: CopySnapshotResponse-copySnapshotResponse = CopySnapshotResponse- { _csrSnapshot = Nothing- }+instance AWSRequest CopySnapshot where+ type Sv CopySnapshot = ElastiCache+ type Rs CopySnapshot = CopySnapshotResponse+ request = postQuery+ response+ = receiveXMLWrapper "CopySnapshotResult"+ (\ s h x ->+ CopySnapshotResponse' <$>+ (x .@? "Snapshot") <*> (pure (fromEnum s))) -csrSnapshot :: Lens' CopySnapshotResponse (Maybe Snapshot)-csrSnapshot = lens _csrSnapshot (\s a -> s { _csrSnapshot = a })+instance ToHeaders CopySnapshot where+ toHeaders = const mempty instance ToPath CopySnapshot where- toPath = const "/"+ toPath = const "/" instance ToQuery CopySnapshot where- toQuery CopySnapshot{..} = mconcat- [ "SourceSnapshotName" =? _csSourceSnapshotName- , "TargetSnapshotName" =? _csTargetSnapshotName- ]+ toQuery CopySnapshot'{..}+ = mconcat+ ["Action" =: ("CopySnapshot" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "SourceSnapshotName" =: _csSourceSnapshotName,+ "TargetSnapshotName" =: _csTargetSnapshotName] -instance ToHeaders CopySnapshot+-- | /See:/ 'copySnapshotResponse' smart constructor.+data CopySnapshotResponse = CopySnapshotResponse'+ { _csrsSnapshot :: !(Maybe Snapshot)+ , _csrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CopySnapshot where- type Sv CopySnapshot = ElastiCache- type Rs CopySnapshot = CopySnapshotResponse+-- | Creates a value of 'CopySnapshotResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csrsSnapshot'+--+-- * 'csrsStatus'+copySnapshotResponse+ :: Int -- ^ 'csrsStatus'+ -> CopySnapshotResponse+copySnapshotResponse pStatus_ =+ CopySnapshotResponse'+ { _csrsSnapshot = Nothing+ , _csrsStatus = pStatus_+ } - request = post "CopySnapshot"- response = xmlResponse+-- | Undocumented member.+csrsSnapshot :: Lens' CopySnapshotResponse (Maybe Snapshot)+csrsSnapshot = lens _csrsSnapshot (\ s a -> s{_csrsSnapshot = a}); -instance FromXML CopySnapshotResponse where- parseXML = withElement "CopySnapshotResult" $ \x -> CopySnapshotResponse- <$> x .@? "Snapshot"+-- | The response status code.+csrsStatus :: Lens' CopySnapshotResponse Int+csrsStatus = lens _csrsStatus (\ s a -> s{_csrsStatus = a});
gen/Network/AWS/ElastiCache/CreateCacheCluster.hs view
@@ -1,457 +1,508 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateCacheCluster--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateCacheCluster/ action creates a cache cluster. All nodes in the cache--- cluster run the same protocol-compliant cache engine software, either--- Memcached or Redis.+-- The /CreateCacheCluster/ action creates a cache cluster. All nodes in+-- the cache cluster run the same protocol-compliant cache engine software,+-- either Memcached or Redis. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheCluster.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheCluster.html AWS API Reference> for CreateCacheCluster. module Network.AWS.ElastiCache.CreateCacheCluster (- -- * Request- CreateCacheCluster- -- ** Request constructor- , createCacheCluster- -- ** Request lenses- , cccAZMode- , cccAutoMinorVersionUpgrade- , cccCacheClusterId+ -- * Creating a Request+ createCacheCluster+ , CreateCacheCluster+ -- * Request Lenses , cccCacheNodeType+ , cccEngineVersion+ , cccSecurityGroupIds+ , cccAutoMinorVersionUpgrade+ , cccSnapshotARNs , cccCacheParameterGroupName- , cccCacheSecurityGroupNames- , cccCacheSubnetGroupName+ , cccSnapshotWindow , cccEngine- , cccEngineVersion- , cccNotificationTopicArn- , cccNumCacheNodes- , cccPort- , cccPreferredAvailabilityZone , cccPreferredAvailabilityZones , cccPreferredMaintenanceWindow- , cccReplicationGroupId- , cccSecurityGroupIds- , cccSnapshotArns- , cccSnapshotName+ , cccCacheSubnetGroupName+ , cccPreferredAvailabilityZone , cccSnapshotRetentionLimit- , cccSnapshotWindow+ , cccAZMode+ , cccSnapshotName+ , cccReplicationGroupId+ , cccNotificationTopicARN , cccTags+ , cccNumCacheNodes+ , cccCacheSecurityGroupNames+ , cccPort+ , cccCacheClusterId - -- * Response- , CreateCacheClusterResponse- -- ** Response constructor+ -- * Destructuring the Response , createCacheClusterResponse- -- ** Response lenses- , cccrCacheCluster+ , CreateCacheClusterResponse+ -- * Response Lenses+ , cccrsCacheCluster+ , cccrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateCacheCluster = CreateCacheCluster- { _cccAZMode :: Maybe AZMode- , _cccAutoMinorVersionUpgrade :: Maybe Bool- , _cccCacheClusterId :: Text- , _cccCacheNodeType :: Maybe Text- , _cccCacheParameterGroupName :: Maybe Text- , _cccCacheSecurityGroupNames :: List "member" Text- , _cccCacheSubnetGroupName :: Maybe Text- , _cccEngine :: Maybe Text- , _cccEngineVersion :: Maybe Text- , _cccNotificationTopicArn :: Maybe Text- , _cccNumCacheNodes :: Maybe Int- , _cccPort :: Maybe Int- , _cccPreferredAvailabilityZone :: Maybe Text- , _cccPreferredAvailabilityZones :: List "member" Text- , _cccPreferredMaintenanceWindow :: Maybe Text- , _cccReplicationGroupId :: Maybe Text- , _cccSecurityGroupIds :: List "member" Text- , _cccSnapshotArns :: List "member" Text- , _cccSnapshotName :: Maybe Text- , _cccSnapshotRetentionLimit :: Maybe Int- , _cccSnapshotWindow :: Maybe Text- , _cccTags :: List "member" Tag- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateCacheCluster' constructor.+-- | Represents the input of a /CreateCacheCluster/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createCacheCluster' smart constructor.+data CreateCacheCluster = CreateCacheCluster'+ { _cccCacheNodeType :: !(Maybe Text)+ , _cccEngineVersion :: !(Maybe Text)+ , _cccSecurityGroupIds :: !(Maybe [Text])+ , _cccAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _cccSnapshotARNs :: !(Maybe [Text])+ , _cccCacheParameterGroupName :: !(Maybe Text)+ , _cccSnapshotWindow :: !(Maybe Text)+ , _cccEngine :: !(Maybe Text)+ , _cccPreferredAvailabilityZones :: !(Maybe [Text])+ , _cccPreferredMaintenanceWindow :: !(Maybe Text)+ , _cccCacheSubnetGroupName :: !(Maybe Text)+ , _cccPreferredAvailabilityZone :: !(Maybe Text)+ , _cccSnapshotRetentionLimit :: !(Maybe Int)+ , _cccAZMode :: !(Maybe AZMode)+ , _cccSnapshotName :: !(Maybe Text)+ , _cccReplicationGroupId :: !(Maybe Text)+ , _cccNotificationTopicARN :: !(Maybe Text)+ , _cccTags :: !(Maybe [Tag])+ , _cccNumCacheNodes :: !(Maybe Int)+ , _cccCacheSecurityGroupNames :: !(Maybe [Text])+ , _cccPort :: !(Maybe Int)+ , _cccCacheClusterId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateCacheCluster' with the minimum fields required to make a request. ----- * 'cccAZMode' @::@ 'Maybe' 'AZMode'+-- Use one of the following lenses to modify other fields as desired: ----- * 'cccAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'+-- * 'cccCacheNodeType' ----- * 'cccCacheClusterId' @::@ 'Text'+-- * 'cccEngineVersion' ----- * 'cccCacheNodeType' @::@ 'Maybe' 'Text'+-- * 'cccSecurityGroupIds' ----- * 'cccCacheParameterGroupName' @::@ 'Maybe' 'Text'+-- * 'cccAutoMinorVersionUpgrade' ----- * 'cccCacheSecurityGroupNames' @::@ ['Text']+-- * 'cccSnapshotARNs' ----- * 'cccCacheSubnetGroupName' @::@ 'Maybe' 'Text'+-- * 'cccCacheParameterGroupName' ----- * 'cccEngine' @::@ 'Maybe' 'Text'+-- * 'cccSnapshotWindow' ----- * 'cccEngineVersion' @::@ 'Maybe' 'Text'+-- * 'cccEngine' ----- * 'cccNotificationTopicArn' @::@ 'Maybe' 'Text'+-- * 'cccPreferredAvailabilityZones' ----- * 'cccNumCacheNodes' @::@ 'Maybe' 'Int'+-- * 'cccPreferredMaintenanceWindow' ----- * 'cccPort' @::@ 'Maybe' 'Int'+-- * 'cccCacheSubnetGroupName' ----- * 'cccPreferredAvailabilityZone' @::@ 'Maybe' 'Text'+-- * 'cccPreferredAvailabilityZone' ----- * 'cccPreferredAvailabilityZones' @::@ ['Text']+-- * 'cccSnapshotRetentionLimit' ----- * 'cccPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'+-- * 'cccAZMode' ----- * 'cccReplicationGroupId' @::@ 'Maybe' 'Text'+-- * 'cccSnapshotName' ----- * 'cccSecurityGroupIds' @::@ ['Text']+-- * 'cccReplicationGroupId' ----- * 'cccSnapshotArns' @::@ ['Text']+-- * 'cccNotificationTopicARN' ----- * 'cccSnapshotName' @::@ 'Maybe' 'Text'+-- * 'cccTags' ----- * 'cccSnapshotRetentionLimit' @::@ 'Maybe' 'Int'+-- * 'cccNumCacheNodes' ----- * 'cccSnapshotWindow' @::@ 'Maybe' 'Text'+-- * 'cccCacheSecurityGroupNames' ----- * 'cccTags' @::@ ['Tag']+-- * 'cccPort' ---createCacheCluster :: Text -- ^ 'cccCacheClusterId'- -> CreateCacheCluster-createCacheCluster p1 = CreateCacheCluster- { _cccCacheClusterId = p1- , _cccReplicationGroupId = Nothing- , _cccAZMode = Nothing- , _cccPreferredAvailabilityZone = Nothing- , _cccPreferredAvailabilityZones = mempty- , _cccNumCacheNodes = Nothing- , _cccCacheNodeType = Nothing- , _cccEngine = Nothing- , _cccEngineVersion = Nothing- , _cccCacheParameterGroupName = Nothing- , _cccCacheSubnetGroupName = Nothing- , _cccCacheSecurityGroupNames = mempty- , _cccSecurityGroupIds = mempty- , _cccTags = mempty- , _cccSnapshotArns = mempty- , _cccSnapshotName = Nothing+-- * 'cccCacheClusterId'+createCacheCluster+ :: Text -- ^ 'cccCacheClusterId'+ -> CreateCacheCluster+createCacheCluster pCacheClusterId_ =+ CreateCacheCluster'+ { _cccCacheNodeType = Nothing+ , _cccEngineVersion = Nothing+ , _cccSecurityGroupIds = Nothing+ , _cccAutoMinorVersionUpgrade = Nothing+ , _cccSnapshotARNs = Nothing+ , _cccCacheParameterGroupName = Nothing+ , _cccSnapshotWindow = Nothing+ , _cccEngine = Nothing+ , _cccPreferredAvailabilityZones = Nothing , _cccPreferredMaintenanceWindow = Nothing- , _cccPort = Nothing- , _cccNotificationTopicArn = Nothing- , _cccAutoMinorVersionUpgrade = Nothing- , _cccSnapshotRetentionLimit = Nothing- , _cccSnapshotWindow = Nothing+ , _cccCacheSubnetGroupName = Nothing+ , _cccPreferredAvailabilityZone = Nothing+ , _cccSnapshotRetentionLimit = Nothing+ , _cccAZMode = Nothing+ , _cccSnapshotName = Nothing+ , _cccReplicationGroupId = Nothing+ , _cccNotificationTopicARN = Nothing+ , _cccTags = Nothing+ , _cccNumCacheNodes = Nothing+ , _cccCacheSecurityGroupNames = Nothing+ , _cccPort = Nothing+ , _cccCacheClusterId = pCacheClusterId_ } --- | Specifies whether the nodes in this Memcached node group are created in a--- single Availability Zone or created across multiple Availability Zones in the--- cluster's region.------ This parameter is only supported for Memcached cache clusters.------ If the 'AZMode' and 'PreferredAvailabilityZones' are not specified, ElastiCache--- assumes 'single-az' mode.-cccAZMode :: Lens' CreateCacheCluster (Maybe AZMode)-cccAZMode = lens _cccAZMode (\s a -> s { _cccAZMode = a })---- | This parameter is currently disabled.-cccAutoMinorVersionUpgrade :: Lens' CreateCacheCluster (Maybe Bool)-cccAutoMinorVersionUpgrade =- lens _cccAutoMinorVersionUpgrade- (\s a -> s { _cccAutoMinorVersionUpgrade = a })---- | The node group identifier. This parameter is stored as a lowercase string.------ Constraints:------ A name must contain from 1 to 20 alphanumeric characters or hyphens. The--- first character must be a letter. A name cannot end with a hyphen or contain--- two consecutive hyphens.-cccCacheClusterId :: Lens' CreateCacheCluster Text-cccCacheClusterId =- lens _cccCacheClusterId (\s a -> s { _cccCacheClusterId = a })- -- | The compute and memory capacity of the nodes in the node group. -- -- Valid node types are as follows: ----- General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge' ----- All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>. cccCacheNodeType :: Lens' CreateCacheCluster (Maybe Text)-cccCacheNodeType = lens _cccCacheNodeType (\s a -> s { _cccCacheNodeType = a })+cccCacheNodeType = lens _cccCacheNodeType (\ s a -> s{_cccCacheNodeType = a}); --- | The name of the parameter group to associate with this cache cluster. If this--- argument is omitted, the default parameter group for the specified engine is--- used.-cccCacheParameterGroupName :: Lens' CreateCacheCluster (Maybe Text)-cccCacheParameterGroupName =- lens _cccCacheParameterGroupName- (\s a -> s { _cccCacheParameterGroupName = a })+-- | The version number of the cache engine to be used for this cache+-- cluster. To view the supported cache engine versions, use the+-- /DescribeCacheEngineVersions/ action.+cccEngineVersion :: Lens' CreateCacheCluster (Maybe Text)+cccEngineVersion = lens _cccEngineVersion (\ s a -> s{_cccEngineVersion = a}); --- | A list of security group names to associate with this cache cluster.+-- | One or more VPC security groups associated with the cache cluster. ----- Use this parameter only when you are creating a cache cluster outside of an+-- Use this parameter only when you are creating a cache cluster in an -- Amazon Virtual Private Cloud (VPC).-cccCacheSecurityGroupNames :: Lens' CreateCacheCluster [Text]-cccCacheSecurityGroupNames =- lens _cccCacheSecurityGroupNames- (\s a -> s { _cccCacheSecurityGroupNames = a })- . _List+cccSecurityGroupIds :: Lens' CreateCacheCluster [Text]+cccSecurityGroupIds = lens _cccSecurityGroupIds (\ s a -> s{_cccSecurityGroupIds = a}) . _Default . _Coerce; --- | The name of the subnet group to be used for the cache cluster.------ Use this parameter only when you are creating a cache cluster in an Amazon--- Virtual Private Cloud (VPC).-cccCacheSubnetGroupName :: Lens' CreateCacheCluster (Maybe Text)-cccCacheSubnetGroupName =- lens _cccCacheSubnetGroupName (\s a -> s { _cccCacheSubnetGroupName = a })+-- | This parameter is currently disabled.+cccAutoMinorVersionUpgrade :: Lens' CreateCacheCluster (Maybe Bool)+cccAutoMinorVersionUpgrade = lens _cccAutoMinorVersionUpgrade (\ s a -> s{_cccAutoMinorVersionUpgrade = a}); --- | The name of the cache engine to be used for this cache cluster.+-- | A single-element string list containing an Amazon Resource Name (ARN)+-- that uniquely identifies a Redis RDB snapshot file stored in Amazon S3.+-- The snapshot file will be used to populate the node group. The Amazon S3+-- object name in the ARN cannot contain any commas. ----- Valid values for this parameter are:+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'. ----- 'memcached' | 'redis'-cccEngine :: Lens' CreateCacheCluster (Maybe Text)-cccEngine = lens _cccEngine (\s a -> s { _cccEngine = a })+-- Example of an Amazon S3 ARN: 'arn:aws:s3:::my_bucket\/snapshot1.rdb'+cccSnapshotARNs :: Lens' CreateCacheCluster [Text]+cccSnapshotARNs = lens _cccSnapshotARNs (\ s a -> s{_cccSnapshotARNs = a}) . _Default . _Coerce; --- | The version number of the cache engine to be used for this cache cluster. To--- view the supported cache engine versions, use the /DescribeCacheEngineVersions/--- action.-cccEngineVersion :: Lens' CreateCacheCluster (Maybe Text)-cccEngineVersion = lens _cccEngineVersion (\s a -> s { _cccEngineVersion = a })+-- | The name of the parameter group to associate with this cache cluster. If+-- this argument is omitted, the default parameter group for the specified+-- engine is used.+cccCacheParameterGroupName :: Lens' CreateCacheCluster (Maybe Text)+cccCacheParameterGroupName = lens _cccCacheParameterGroupName (\ s a -> s{_cccCacheParameterGroupName = a}); --- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service--- (SNS) topic to which notifications will be sent.+-- | The daily time range (in UTC) during which ElastiCache will begin taking+-- a daily snapshot of your node group. ----- The Amazon SNS topic owner must be the same as the cache cluster owner.-cccNotificationTopicArn :: Lens' CreateCacheCluster (Maybe Text)-cccNotificationTopicArn =- lens _cccNotificationTopicArn (\s a -> s { _cccNotificationTopicArn = a })---- | The initial number of cache nodes that the cache cluster will have.+-- Example: '05:00-09:00' ----- For clusters running Redis, this value must be 1. For clusters running--- Memcached, this value must be between 1 and 20.+-- If you do not specify this parameter, then ElastiCache will+-- automatically choose an appropriate time range. ----- If you need more than 20 nodes for your Memcached cluster, please fill out--- the ElastiCache Limit Increase Request form at <http://aws.amazon.com/contact-us/elasticache-node-limit-request/ http://aws.amazon.com/contact-us/elasticache-node-limit-request/>.-cccNumCacheNodes :: Lens' CreateCacheCluster (Maybe Int)-cccNumCacheNodes = lens _cccNumCacheNodes (\s a -> s { _cccNumCacheNodes = a })---- | The port number on which each of the cache nodes will accept connections.-cccPort :: Lens' CreateCacheCluster (Maybe Int)-cccPort = lens _cccPort (\s a -> s { _cccPort = a })+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'.+cccSnapshotWindow :: Lens' CreateCacheCluster (Maybe Text)+cccSnapshotWindow = lens _cccSnapshotWindow (\ s a -> s{_cccSnapshotWindow = a}); --- | The EC2 Availability Zone in which the cache cluster will be created.+-- | The name of the cache engine to be used for this cache cluster. ----- All nodes belonging to this Memcached cache cluster are placed in the--- preferred Availability Zone. If you want to create your nodes across multiple--- Availability Zones, use 'PreferredAvailabilityZones'.+-- Valid values for this parameter are: ----- Default: System chosen Availability Zone.-cccPreferredAvailabilityZone :: Lens' CreateCacheCluster (Maybe Text)-cccPreferredAvailabilityZone =- lens _cccPreferredAvailabilityZone- (\s a -> s { _cccPreferredAvailabilityZone = a })+-- 'memcached' | 'redis'+cccEngine :: Lens' CreateCacheCluster (Maybe Text)+cccEngine = lens _cccEngine (\ s a -> s{_cccEngine = a}); --- | A list of the Availability Zones in which cache nodes will be created. The--- order of the zones in the list is not important.+-- | A list of the Availability Zones in which cache nodes will be created.+-- The order of the zones in the list is not important. -- -- This option is only supported on Memcached. ----- If you are creating your cache cluster in an Amazon VPC (recommended) you--- can only locate nodes in Availability Zones that are associated with the--- subnets in the selected subnet group.+-- If you are creating your cache cluster in an Amazon VPC (recommended)+-- you can only locate nodes in Availability Zones that are associated with+-- the subnets in the selected subnet group. ----- The number of Availability Zones listed must equal the value of 'NumCacheNodes'--- .+-- The number of Availability Zones listed must equal the value of+-- 'NumCacheNodes'. ----- If you want all the nodes in the same Availability Zone, use 'PreferredAvailabilityZone' instead, or repeat the Availability Zone multiple times in the list.+-- If you want all the nodes in the same Availability Zone, use+-- 'PreferredAvailabilityZone' instead, or repeat the Availability Zone+-- multiple times in the list. -- -- Default: System chosen Availability Zones. ----- Example: One Memcached node in each of three different Availability Zones: 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2b&PreferredAvailabilityZones.member.3=us-west-2c'+-- Example: One Memcached node in each of three different Availability+-- Zones:+-- 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2b&PreferredAvailabilityZones.member.3=us-west-2c' ----- Example: All three Memcached nodes in one Availability Zone: 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2a&PreferredAvailabilityZones.member.3=us-west-2a'+-- Example: All three Memcached nodes in one Availability Zone:+-- 'PreferredAvailabilityZones.member.1=us-west-2a&PreferredAvailabilityZones.member.2=us-west-2a&PreferredAvailabilityZones.member.3=us-west-2a' cccPreferredAvailabilityZones :: Lens' CreateCacheCluster [Text]-cccPreferredAvailabilityZones =- lens _cccPreferredAvailabilityZones- (\s a -> s { _cccPreferredAvailabilityZones = a })- . _List+cccPreferredAvailabilityZones = lens _cccPreferredAvailabilityZones (\ s a -> s{_cccPreferredAvailabilityZones = a}) . _Default . _Coerce; --- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:+-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are: ----- 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat'+--+-- Example: 'sun:05:00-sun:09:00' cccPreferredMaintenanceWindow :: Lens' CreateCacheCluster (Maybe Text)-cccPreferredMaintenanceWindow =- lens _cccPreferredMaintenanceWindow- (\s a -> s { _cccPreferredMaintenanceWindow = a })+cccPreferredMaintenanceWindow = lens _cccPreferredMaintenanceWindow (\ s a -> s{_cccPreferredMaintenanceWindow = a}); --- | The ID of the replication group to which this cache cluster should belong. If--- this parameter is specified, the cache cluster will be added to the specified--- replication group as a read replica; otherwise, the cache cluster will be a--- standalone primary that is not part of any replication group.+-- | The name of the subnet group to be used for the cache cluster. ----- If the specified replication group is Multi-AZ enabled and the availability--- zone is not specified, the cache cluster will be created in availability--- zones that provide the best spread of read replicas across availability zones.+-- Use this parameter only when you are creating a cache cluster in an+-- Amazon Virtual Private Cloud (VPC).+cccCacheSubnetGroupName :: Lens' CreateCacheCluster (Maybe Text)+cccCacheSubnetGroupName = lens _cccCacheSubnetGroupName (\ s a -> s{_cccCacheSubnetGroupName = a});++-- | The EC2 Availability Zone in which the cache cluster will be created. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.-cccReplicationGroupId :: Lens' CreateCacheCluster (Maybe Text)-cccReplicationGroupId =- lens _cccReplicationGroupId (\s a -> s { _cccReplicationGroupId = a })+-- All nodes belonging to this Memcached cache cluster are placed in the+-- preferred Availability Zone. If you want to create your nodes across+-- multiple Availability Zones, use 'PreferredAvailabilityZones'.+--+-- Default: System chosen Availability Zone.+cccPreferredAvailabilityZone :: Lens' CreateCacheCluster (Maybe Text)+cccPreferredAvailabilityZone = lens _cccPreferredAvailabilityZone (\ s a -> s{_cccPreferredAvailabilityZone = a}); --- | One or more VPC security groups associated with the cache cluster.+-- | The number of days for which ElastiCache will retain automatic snapshots+-- before deleting them. For example, if you set 'SnapshotRetentionLimit'+-- to 5, then a snapshot that was taken today will be retained for 5 days+-- before being deleted. ----- Use this parameter only when you are creating a cache cluster in an Amazon--- Virtual Private Cloud (VPC).-cccSecurityGroupIds :: Lens' CreateCacheCluster [Text]-cccSecurityGroupIds =- lens _cccSecurityGroupIds (\s a -> s { _cccSecurityGroupIds = a })- . _List+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'.+--+-- Default: 0 (i.e., automatic backups are disabled for this cache+-- cluster).+cccSnapshotRetentionLimit :: Lens' CreateCacheCluster (Maybe Int)+cccSnapshotRetentionLimit = lens _cccSnapshotRetentionLimit (\ s a -> s{_cccSnapshotRetentionLimit = a}); --- | A single-element string list containing an Amazon Resource Name (ARN) that--- uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The--- snapshot file will be used to populate the node group. The Amazon S3 object--- name in the ARN cannot contain any commas.+-- | Specifies whether the nodes in this Memcached node group are created in+-- a single Availability Zone or created across multiple Availability Zones+-- in the cluster\'s region. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- This parameter is only supported for Memcached cache clusters. ----- Example of an Amazon S3 ARN: 'arn:aws:s3:::my_bucket/snapshot1.rdb'-cccSnapshotArns :: Lens' CreateCacheCluster [Text]-cccSnapshotArns = lens _cccSnapshotArns (\s a -> s { _cccSnapshotArns = a }) . _List+-- If the 'AZMode' and 'PreferredAvailabilityZones' are not specified,+-- ElastiCache assumes 'single-az' mode.+cccAZMode :: Lens' CreateCacheCluster (Maybe AZMode)+cccAZMode = lens _cccAZMode (\ s a -> s{_cccAZMode = a}); --- | The name of a snapshot from which to restore data into the new node group.--- The snapshot status changes to 'restoring' while the new node group is being--- created.+-- | The name of a snapshot from which to restore data into the new node+-- group. The snapshot status changes to 'restoring' while the new node+-- group is being created. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'. cccSnapshotName :: Lens' CreateCacheCluster (Maybe Text)-cccSnapshotName = lens _cccSnapshotName (\s a -> s { _cccSnapshotName = a })+cccSnapshotName = lens _cccSnapshotName (\ s a -> s{_cccSnapshotName = a}); --- | The number of days for which ElastiCache will retain automatic snapshots--- before deleting them. For example, if you set 'SnapshotRetentionLimit' to 5,--- then a snapshot that was taken today will be retained for 5 days before being--- deleted.+-- | The ID of the replication group to which this cache cluster should+-- belong. If this parameter is specified, the cache cluster will be added+-- to the specified replication group as a read replica; otherwise, the+-- cache cluster will be a standalone primary that is not part of any+-- replication group. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- If the specified replication group is Multi-AZ enabled and the+-- availability zone is not specified, the cache cluster will be created in+-- availability zones that provide the best spread of read replicas across+-- availability zones. ----- Default: 0 (i.e., automatic backups are disabled for this cache cluster).-cccSnapshotRetentionLimit :: Lens' CreateCacheCluster (Maybe Int)-cccSnapshotRetentionLimit =- lens _cccSnapshotRetentionLimit- (\s a -> s { _cccSnapshotRetentionLimit = a })+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'.+cccReplicationGroupId :: Lens' CreateCacheCluster (Maybe Text)+cccReplicationGroupId = lens _cccReplicationGroupId (\ s a -> s{_cccReplicationGroupId = a}); --- | The daily time range (in UTC) during which ElastiCache will begin taking a--- daily snapshot of your node group.------ Example: '05:00-09:00'------ If you do not specify this parameter, then ElastiCache will automatically--- choose an appropriate time range.+-- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service+-- (SNS) topic to which notifications will be sent. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.-cccSnapshotWindow :: Lens' CreateCacheCluster (Maybe Text)-cccSnapshotWindow =- lens _cccSnapshotWindow (\s a -> s { _cccSnapshotWindow = a })+-- The Amazon SNS topic owner must be the same as the cache cluster owner.+cccNotificationTopicARN :: Lens' CreateCacheCluster (Maybe Text)+cccNotificationTopicARN = lens _cccNotificationTopicARN (\ s a -> s{_cccNotificationTopicARN = a}); -- | A list of cost allocation tags to be added to this resource. A tag is a -- key-value pair. A tag key must be accompanied by a tag value. cccTags :: Lens' CreateCacheCluster [Tag]-cccTags = lens _cccTags (\s a -> s { _cccTags = a }) . _List+cccTags = lens _cccTags (\ s a -> s{_cccTags = a}) . _Default . _Coerce; -newtype CreateCacheClusterResponse = CreateCacheClusterResponse- { _cccrCacheCluster :: Maybe CacheCluster- } deriving (Eq, Read, Show)+-- | The initial number of cache nodes that the cache cluster will have.+--+-- For clusters running Redis, this value must be 1. For clusters running+-- Memcached, this value must be between 1 and 20.+--+-- If you need more than 20 nodes for your Memcached cluster, please fill+-- out the ElastiCache Limit Increase Request form at+-- <http://aws.amazon.com/contact-us/elasticache-node-limit-request/>.+cccNumCacheNodes :: Lens' CreateCacheCluster (Maybe Int)+cccNumCacheNodes = lens _cccNumCacheNodes (\ s a -> s{_cccNumCacheNodes = a}); --- | 'CreateCacheClusterResponse' constructor.+-- | A list of security group names to associate with this cache cluster. ----- The fields accessible through corresponding lenses are:+-- Use this parameter only when you are creating a cache cluster outside of+-- an Amazon Virtual Private Cloud (VPC).+cccCacheSecurityGroupNames :: Lens' CreateCacheCluster [Text]+cccCacheSecurityGroupNames = lens _cccCacheSecurityGroupNames (\ s a -> s{_cccCacheSecurityGroupNames = a}) . _Default . _Coerce;++-- | The port number on which each of the cache nodes will accept+-- connections.+cccPort :: Lens' CreateCacheCluster (Maybe Int)+cccPort = lens _cccPort (\ s a -> s{_cccPort = a});++-- | The node group identifier. This parameter is stored as a lowercase+-- string. ----- * 'cccrCacheCluster' @::@ 'Maybe' 'CacheCluster'+-- Constraints: ---createCacheClusterResponse :: CreateCacheClusterResponse-createCacheClusterResponse = CreateCacheClusterResponse- { _cccrCacheCluster = Nothing- }+-- - A name must contain from 1 to 20 alphanumeric characters or hyphens.+-- - The first character must be a letter.+-- - A name cannot end with a hyphen or contain two consecutive hyphens.+cccCacheClusterId :: Lens' CreateCacheCluster Text+cccCacheClusterId = lens _cccCacheClusterId (\ s a -> s{_cccCacheClusterId = a}); -cccrCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster)-cccrCacheCluster = lens _cccrCacheCluster (\s a -> s { _cccrCacheCluster = a })+instance AWSRequest CreateCacheCluster where+ type Sv CreateCacheCluster = ElastiCache+ type Rs CreateCacheCluster =+ CreateCacheClusterResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateCacheClusterResult"+ (\ s h x ->+ CreateCacheClusterResponse' <$>+ (x .@? "CacheCluster") <*> (pure (fromEnum s))) +instance ToHeaders CreateCacheCluster where+ toHeaders = const mempty+ instance ToPath CreateCacheCluster where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateCacheCluster where- toQuery CreateCacheCluster{..} = mconcat- [ "AZMode" =? _cccAZMode- , "AutoMinorVersionUpgrade" =? _cccAutoMinorVersionUpgrade- , "CacheClusterId" =? _cccCacheClusterId- , "CacheNodeType" =? _cccCacheNodeType- , "CacheParameterGroupName" =? _cccCacheParameterGroupName- , "CacheSecurityGroupNames" =? _cccCacheSecurityGroupNames- , "CacheSubnetGroupName" =? _cccCacheSubnetGroupName- , "Engine" =? _cccEngine- , "EngineVersion" =? _cccEngineVersion- , "NotificationTopicArn" =? _cccNotificationTopicArn- , "NumCacheNodes" =? _cccNumCacheNodes- , "Port" =? _cccPort- , "PreferredAvailabilityZone" =? _cccPreferredAvailabilityZone- , "PreferredAvailabilityZones" =? _cccPreferredAvailabilityZones- , "PreferredMaintenanceWindow" =? _cccPreferredMaintenanceWindow- , "ReplicationGroupId" =? _cccReplicationGroupId- , "SecurityGroupIds" =? _cccSecurityGroupIds- , "SnapshotArns" =? _cccSnapshotArns- , "SnapshotName" =? _cccSnapshotName- , "SnapshotRetentionLimit" =? _cccSnapshotRetentionLimit- , "SnapshotWindow" =? _cccSnapshotWindow- , "Tags" =? _cccTags- ]+ toQuery CreateCacheCluster'{..}+ = mconcat+ ["Action" =: ("CreateCacheCluster" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheNodeType" =: _cccCacheNodeType,+ "EngineVersion" =: _cccEngineVersion,+ "SecurityGroupIds" =:+ toQuery+ (toQueryList "SecurityGroupId" <$>+ _cccSecurityGroupIds),+ "AutoMinorVersionUpgrade" =:+ _cccAutoMinorVersionUpgrade,+ "SnapshotArns" =:+ toQuery+ (toQueryList "SnapshotArn" <$> _cccSnapshotARNs),+ "CacheParameterGroupName" =:+ _cccCacheParameterGroupName,+ "SnapshotWindow" =: _cccSnapshotWindow,+ "Engine" =: _cccEngine,+ "PreferredAvailabilityZones" =:+ toQuery+ (toQueryList "PreferredAvailabilityZone" <$>+ _cccPreferredAvailabilityZones),+ "PreferredMaintenanceWindow" =:+ _cccPreferredMaintenanceWindow,+ "CacheSubnetGroupName" =: _cccCacheSubnetGroupName,+ "PreferredAvailabilityZone" =:+ _cccPreferredAvailabilityZone,+ "SnapshotRetentionLimit" =:+ _cccSnapshotRetentionLimit,+ "AZMode" =: _cccAZMode,+ "SnapshotName" =: _cccSnapshotName,+ "ReplicationGroupId" =: _cccReplicationGroupId,+ "NotificationTopicArn" =: _cccNotificationTopicARN,+ "Tags" =: toQuery (toQueryList "Tag" <$> _cccTags),+ "NumCacheNodes" =: _cccNumCacheNodes,+ "CacheSecurityGroupNames" =:+ toQuery+ (toQueryList "CacheSecurityGroupName" <$>+ _cccCacheSecurityGroupNames),+ "Port" =: _cccPort,+ "CacheClusterId" =: _cccCacheClusterId] -instance ToHeaders CreateCacheCluster+-- | /See:/ 'createCacheClusterResponse' smart constructor.+data CreateCacheClusterResponse = CreateCacheClusterResponse'+ { _cccrsCacheCluster :: !(Maybe CacheCluster)+ , _cccrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateCacheCluster where- type Sv CreateCacheCluster = ElastiCache- type Rs CreateCacheCluster = CreateCacheClusterResponse+-- | Creates a value of 'CreateCacheClusterResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cccrsCacheCluster'+--+-- * 'cccrsStatus'+createCacheClusterResponse+ :: Int -- ^ 'cccrsStatus'+ -> CreateCacheClusterResponse+createCacheClusterResponse pStatus_ =+ CreateCacheClusterResponse'+ { _cccrsCacheCluster = Nothing+ , _cccrsStatus = pStatus_+ } - request = post "CreateCacheCluster"- response = xmlResponse+-- | Undocumented member.+cccrsCacheCluster :: Lens' CreateCacheClusterResponse (Maybe CacheCluster)+cccrsCacheCluster = lens _cccrsCacheCluster (\ s a -> s{_cccrsCacheCluster = a}); -instance FromXML CreateCacheClusterResponse where- parseXML = withElement "CreateCacheClusterResult" $ \x -> CreateCacheClusterResponse- <$> x .@? "CacheCluster"+-- | The response status code.+cccrsStatus :: Lens' CreateCacheClusterResponse Int+cccrsStatus = lens _cccrsStatus (\ s a -> s{_cccrsStatus = a});
gen/Network/AWS/ElastiCache/CreateCacheParameterGroup.hs view
@@ -1,140 +1,153 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateCacheParameterGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateCacheParameterGroup/ action creates a new cache parameter group. A--- cache parameter group is a collection of parameters that you apply to all of--- the nodes in a cache cluster.+-- The /CreateCacheParameterGroup/ action creates a new cache parameter+-- group. A cache parameter group is a collection of parameters that you+-- apply to all of the nodes in a cache cluster. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheParameterGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheParameterGroup.html AWS API Reference> for CreateCacheParameterGroup. module Network.AWS.ElastiCache.CreateCacheParameterGroup (- -- * Request- CreateCacheParameterGroup- -- ** Request constructor- , createCacheParameterGroup- -- ** Request lenses- , ccpgCacheParameterGroupFamily+ -- * Creating a Request+ createCacheParameterGroup+ , CreateCacheParameterGroup+ -- * Request Lenses , ccpgCacheParameterGroupName+ , ccpgCacheParameterGroupFamily , ccpgDescription - -- * Response- , CreateCacheParameterGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , createCacheParameterGroupResponse- -- ** Response lenses- , ccpgrCacheParameterGroup+ , CreateCacheParameterGroupResponse+ -- * Response Lenses+ , ccpgrsCacheParameterGroup+ , ccpgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateCacheParameterGroup = CreateCacheParameterGroup- { _ccpgCacheParameterGroupFamily :: Text- , _ccpgCacheParameterGroupName :: Text- , _ccpgDescription :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateCacheParameterGroup' constructor.+-- | Represents the input of a /CreateCacheParameterGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createCacheParameterGroup' smart constructor.+data CreateCacheParameterGroup = CreateCacheParameterGroup'+ { _ccpgCacheParameterGroupName :: !Text+ , _ccpgCacheParameterGroupFamily :: !Text+ , _ccpgDescription :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateCacheParameterGroup' with the minimum fields required to make a request. ----- * 'ccpgCacheParameterGroupFamily' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'ccpgCacheParameterGroupName' @::@ 'Text'+-- * 'ccpgCacheParameterGroupName' ----- * 'ccpgDescription' @::@ 'Text'+-- * 'ccpgCacheParameterGroupFamily' ---createCacheParameterGroup :: Text -- ^ 'ccpgCacheParameterGroupName'- -> Text -- ^ 'ccpgCacheParameterGroupFamily'- -> Text -- ^ 'ccpgDescription'- -> CreateCacheParameterGroup-createCacheParameterGroup p1 p2 p3 = CreateCacheParameterGroup- { _ccpgCacheParameterGroupName = p1- , _ccpgCacheParameterGroupFamily = p2- , _ccpgDescription = p3+-- * 'ccpgDescription'+createCacheParameterGroup+ :: Text -- ^ 'ccpgCacheParameterGroupName'+ -> Text -- ^ 'ccpgCacheParameterGroupFamily'+ -> Text -- ^ 'ccpgDescription'+ -> CreateCacheParameterGroup+createCacheParameterGroup pCacheParameterGroupName_ pCacheParameterGroupFamily_ pDescription_ =+ CreateCacheParameterGroup'+ { _ccpgCacheParameterGroupName = pCacheParameterGroupName_+ , _ccpgCacheParameterGroupFamily = pCacheParameterGroupFamily_+ , _ccpgDescription = pDescription_ } --- | The name of the cache parameter group family the cache parameter group can be--- used with.+-- | A user-specified name for the cache parameter group.+ccpgCacheParameterGroupName :: Lens' CreateCacheParameterGroup Text+ccpgCacheParameterGroupName = lens _ccpgCacheParameterGroupName (\ s a -> s{_ccpgCacheParameterGroupName = a});++-- | The name of the cache parameter group family the cache parameter group+-- can be used with. -- -- Valid values are: 'memcached1.4' | 'redis2.6' | 'redis2.8' ccpgCacheParameterGroupFamily :: Lens' CreateCacheParameterGroup Text-ccpgCacheParameterGroupFamily =- lens _ccpgCacheParameterGroupFamily- (\s a -> s { _ccpgCacheParameterGroupFamily = a })---- | A user-specified name for the cache parameter group.-ccpgCacheParameterGroupName :: Lens' CreateCacheParameterGroup Text-ccpgCacheParameterGroupName =- lens _ccpgCacheParameterGroupName- (\s a -> s { _ccpgCacheParameterGroupName = a })+ccpgCacheParameterGroupFamily = lens _ccpgCacheParameterGroupFamily (\ s a -> s{_ccpgCacheParameterGroupFamily = a}); -- | A user-specified description for the cache parameter group. ccpgDescription :: Lens' CreateCacheParameterGroup Text-ccpgDescription = lens _ccpgDescription (\s a -> s { _ccpgDescription = a })--newtype CreateCacheParameterGroupResponse = CreateCacheParameterGroupResponse- { _ccpgrCacheParameterGroup :: Maybe CacheParameterGroup- } deriving (Eq, Read, Show)+ccpgDescription = lens _ccpgDescription (\ s a -> s{_ccpgDescription = a}); --- | 'CreateCacheParameterGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ccpgrCacheParameterGroup' @::@ 'Maybe' 'CacheParameterGroup'----createCacheParameterGroupResponse :: CreateCacheParameterGroupResponse-createCacheParameterGroupResponse = CreateCacheParameterGroupResponse- { _ccpgrCacheParameterGroup = Nothing- }+instance AWSRequest CreateCacheParameterGroup where+ type Sv CreateCacheParameterGroup = ElastiCache+ type Rs CreateCacheParameterGroup =+ CreateCacheParameterGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateCacheParameterGroupResult"+ (\ s h x ->+ CreateCacheParameterGroupResponse' <$>+ (x .@? "CacheParameterGroup") <*>+ (pure (fromEnum s))) -ccpgrCacheParameterGroup :: Lens' CreateCacheParameterGroupResponse (Maybe CacheParameterGroup)-ccpgrCacheParameterGroup =- lens _ccpgrCacheParameterGroup- (\s a -> s { _ccpgrCacheParameterGroup = a })+instance ToHeaders CreateCacheParameterGroup where+ toHeaders = const mempty instance ToPath CreateCacheParameterGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateCacheParameterGroup where- toQuery CreateCacheParameterGroup{..} = mconcat- [ "CacheParameterGroupFamily" =? _ccpgCacheParameterGroupFamily- , "CacheParameterGroupName" =? _ccpgCacheParameterGroupName- , "Description" =? _ccpgDescription- ]+ toQuery CreateCacheParameterGroup'{..}+ = mconcat+ ["Action" =:+ ("CreateCacheParameterGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheParameterGroupName" =:+ _ccpgCacheParameterGroupName,+ "CacheParameterGroupFamily" =:+ _ccpgCacheParameterGroupFamily,+ "Description" =: _ccpgDescription] -instance ToHeaders CreateCacheParameterGroup+-- | /See:/ 'createCacheParameterGroupResponse' smart constructor.+data CreateCacheParameterGroupResponse = CreateCacheParameterGroupResponse'+ { _ccpgrsCacheParameterGroup :: !(Maybe CacheParameterGroup)+ , _ccpgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateCacheParameterGroup where- type Sv CreateCacheParameterGroup = ElastiCache- type Rs CreateCacheParameterGroup = CreateCacheParameterGroupResponse+-- | Creates a value of 'CreateCacheParameterGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccpgrsCacheParameterGroup'+--+-- * 'ccpgrsStatus'+createCacheParameterGroupResponse+ :: Int -- ^ 'ccpgrsStatus'+ -> CreateCacheParameterGroupResponse+createCacheParameterGroupResponse pStatus_ =+ CreateCacheParameterGroupResponse'+ { _ccpgrsCacheParameterGroup = Nothing+ , _ccpgrsStatus = pStatus_+ } - request = post "CreateCacheParameterGroup"- response = xmlResponse+-- | Undocumented member.+ccpgrsCacheParameterGroup :: Lens' CreateCacheParameterGroupResponse (Maybe CacheParameterGroup)+ccpgrsCacheParameterGroup = lens _ccpgrsCacheParameterGroup (\ s a -> s{_ccpgrsCacheParameterGroup = a}); -instance FromXML CreateCacheParameterGroupResponse where- parseXML = withElement "CreateCacheParameterGroupResult" $ \x -> CreateCacheParameterGroupResponse- <$> x .@? "CacheParameterGroup"+-- | The response status code.+ccpgrsStatus :: Lens' CreateCacheParameterGroupResponse Int+ccpgrsStatus = lens _ccpgrsStatus (\ s a -> s{_ccpgrsStatus = a});
gen/Network/AWS/ElastiCache/CreateCacheSecurityGroup.hs view
@@ -1,133 +1,149 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateCacheSecurityGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateCacheSecurityGroup/ action creates a new cache security group. Use a--- cache security group to control access to one or more cache clusters.+-- The /CreateCacheSecurityGroup/ action creates a new cache security+-- group. Use a cache security group to control access to one or more cache+-- clusters. ----- Cache security groups are only used when you are creating a cache cluster--- outside of an Amazon Virtual Private Cloud (VPC). If you are creating a cache--- cluster inside of a VPC, use a cache subnet group instead. For more--- information, see <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSubnetGroup.html CreateCacheSubnetGroup>.+-- Cache security groups are only used when you are creating a cache+-- cluster outside of an Amazon Virtual Private Cloud (VPC). If you are+-- creating a cache cluster inside of a VPC, use a cache subnet group+-- instead. For more information, see+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSubnetGroup.html CreateCacheSubnetGroup>. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSecurityGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSecurityGroup.html AWS API Reference> for CreateCacheSecurityGroup. module Network.AWS.ElastiCache.CreateCacheSecurityGroup (- -- * Request- CreateCacheSecurityGroup- -- ** Request constructor- , createCacheSecurityGroup- -- ** Request lenses+ -- * Creating a Request+ createCacheSecurityGroup+ , CreateCacheSecurityGroup+ -- * Request Lenses , ccsgCacheSecurityGroupName , ccsgDescription - -- * Response- , CreateCacheSecurityGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , createCacheSecurityGroupResponse- -- ** Response lenses- , ccsgrCacheSecurityGroup+ , CreateCacheSecurityGroupResponse+ -- * Response Lenses+ , ccsgrsCacheSecurityGroup+ , ccsgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateCacheSecurityGroup = CreateCacheSecurityGroup- { _ccsgCacheSecurityGroupName :: Text- , _ccsgDescription :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateCacheSecurityGroup' constructor.+-- | Represents the input of a /CreateCacheSecurityGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createCacheSecurityGroup' smart constructor.+data CreateCacheSecurityGroup = CreateCacheSecurityGroup'+ { _ccsgCacheSecurityGroupName :: !Text+ , _ccsgDescription :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateCacheSecurityGroup' with the minimum fields required to make a request. ----- * 'ccsgCacheSecurityGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'ccsgDescription' @::@ 'Text'+-- * 'ccsgCacheSecurityGroupName' ---createCacheSecurityGroup :: Text -- ^ 'ccsgCacheSecurityGroupName'- -> Text -- ^ 'ccsgDescription'- -> CreateCacheSecurityGroup-createCacheSecurityGroup p1 p2 = CreateCacheSecurityGroup- { _ccsgCacheSecurityGroupName = p1- , _ccsgDescription = p2+-- * 'ccsgDescription'+createCacheSecurityGroup+ :: Text -- ^ 'ccsgCacheSecurityGroupName'+ -> Text -- ^ 'ccsgDescription'+ -> CreateCacheSecurityGroup+createCacheSecurityGroup pCacheSecurityGroupName_ pDescription_ =+ CreateCacheSecurityGroup'+ { _ccsgCacheSecurityGroupName = pCacheSecurityGroupName_+ , _ccsgDescription = pDescription_ } -- | A name for the cache security group. This value is stored as a lowercase -- string. ----- Constraints: Must contain no more than 255 alphanumeric characters. Cannot--- be the word "Default".+-- Constraints: Must contain no more than 255 alphanumeric characters.+-- Cannot be the word \"Default\". -- -- Example: 'mysecuritygroup' ccsgCacheSecurityGroupName :: Lens' CreateCacheSecurityGroup Text-ccsgCacheSecurityGroupName =- lens _ccsgCacheSecurityGroupName- (\s a -> s { _ccsgCacheSecurityGroupName = a })+ccsgCacheSecurityGroupName = lens _ccsgCacheSecurityGroupName (\ s a -> s{_ccsgCacheSecurityGroupName = a}); -- | A description for the cache security group. ccsgDescription :: Lens' CreateCacheSecurityGroup Text-ccsgDescription = lens _ccsgDescription (\s a -> s { _ccsgDescription = a })--newtype CreateCacheSecurityGroupResponse = CreateCacheSecurityGroupResponse- { _ccsgrCacheSecurityGroup :: Maybe CacheSecurityGroup- } deriving (Eq, Read, Show)+ccsgDescription = lens _ccsgDescription (\ s a -> s{_ccsgDescription = a}); --- | 'CreateCacheSecurityGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ccsgrCacheSecurityGroup' @::@ 'Maybe' 'CacheSecurityGroup'----createCacheSecurityGroupResponse :: CreateCacheSecurityGroupResponse-createCacheSecurityGroupResponse = CreateCacheSecurityGroupResponse- { _ccsgrCacheSecurityGroup = Nothing- }+instance AWSRequest CreateCacheSecurityGroup where+ type Sv CreateCacheSecurityGroup = ElastiCache+ type Rs CreateCacheSecurityGroup =+ CreateCacheSecurityGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateCacheSecurityGroupResult"+ (\ s h x ->+ CreateCacheSecurityGroupResponse' <$>+ (x .@? "CacheSecurityGroup") <*> (pure (fromEnum s))) -ccsgrCacheSecurityGroup :: Lens' CreateCacheSecurityGroupResponse (Maybe CacheSecurityGroup)-ccsgrCacheSecurityGroup =- lens _ccsgrCacheSecurityGroup (\s a -> s { _ccsgrCacheSecurityGroup = a })+instance ToHeaders CreateCacheSecurityGroup where+ toHeaders = const mempty instance ToPath CreateCacheSecurityGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateCacheSecurityGroup where- toQuery CreateCacheSecurityGroup{..} = mconcat- [ "CacheSecurityGroupName" =? _ccsgCacheSecurityGroupName- , "Description" =? _ccsgDescription- ]+ toQuery CreateCacheSecurityGroup'{..}+ = mconcat+ ["Action" =:+ ("CreateCacheSecurityGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSecurityGroupName" =:+ _ccsgCacheSecurityGroupName,+ "Description" =: _ccsgDescription] -instance ToHeaders CreateCacheSecurityGroup+-- | /See:/ 'createCacheSecurityGroupResponse' smart constructor.+data CreateCacheSecurityGroupResponse = CreateCacheSecurityGroupResponse'+ { _ccsgrsCacheSecurityGroup :: !(Maybe CacheSecurityGroup)+ , _ccsgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateCacheSecurityGroup where- type Sv CreateCacheSecurityGroup = ElastiCache- type Rs CreateCacheSecurityGroup = CreateCacheSecurityGroupResponse+-- | Creates a value of 'CreateCacheSecurityGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccsgrsCacheSecurityGroup'+--+-- * 'ccsgrsStatus'+createCacheSecurityGroupResponse+ :: Int -- ^ 'ccsgrsStatus'+ -> CreateCacheSecurityGroupResponse+createCacheSecurityGroupResponse pStatus_ =+ CreateCacheSecurityGroupResponse'+ { _ccsgrsCacheSecurityGroup = Nothing+ , _ccsgrsStatus = pStatus_+ } - request = post "CreateCacheSecurityGroup"- response = xmlResponse+-- | Undocumented member.+ccsgrsCacheSecurityGroup :: Lens' CreateCacheSecurityGroupResponse (Maybe CacheSecurityGroup)+ccsgrsCacheSecurityGroup = lens _ccsgrsCacheSecurityGroup (\ s a -> s{_ccsgrsCacheSecurityGroup = a}); -instance FromXML CreateCacheSecurityGroupResponse where- parseXML = withElement "CreateCacheSecurityGroupResult" $ \x -> CreateCacheSecurityGroupResponse- <$> x .@? "CacheSecurityGroup"+-- | The response status code.+ccsgrsStatus :: Lens' CreateCacheSecurityGroupResponse Int+ccsgrsStatus = lens _ccsgrsStatus (\ s a -> s{_ccsgrsStatus = a});
gen/Network/AWS/ElastiCache/CreateCacheSubnetGroup.hs view
@@ -1,141 +1,155 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateCacheSubnetGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateCacheSubnetGroup/ action creates a new cache subnet group.+-- The /CreateCacheSubnetGroup/ action creates a new cache subnet group. ----- Use this parameter only when you are creating a cluster in an Amazon Virtual--- Private Cloud (VPC).+-- Use this parameter only when you are creating a cluster in an Amazon+-- Virtual Private Cloud (VPC). ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSubnetGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateCacheSubnetGroup.html AWS API Reference> for CreateCacheSubnetGroup. module Network.AWS.ElastiCache.CreateCacheSubnetGroup (- -- * Request- CreateCacheSubnetGroup- -- ** Request constructor- , createCacheSubnetGroup- -- ** Request lenses- , ccsgCacheSubnetGroupDescription+ -- * Creating a Request+ createCacheSubnetGroup+ , CreateCacheSubnetGroup+ -- * Request Lenses , ccsgCacheSubnetGroupName+ , ccsgCacheSubnetGroupDescription , ccsgSubnetIds - -- * Response- , CreateCacheSubnetGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , createCacheSubnetGroupResponse- -- ** Response lenses- , ccsgrCacheSubnetGroup+ , CreateCacheSubnetGroupResponse+ -- * Response Lenses+ , crsCacheSubnetGroup+ , crsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateCacheSubnetGroup = CreateCacheSubnetGroup- { _ccsgCacheSubnetGroupDescription :: Text- , _ccsgCacheSubnetGroupName :: Text- , _ccsgSubnetIds :: List "member" Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateCacheSubnetGroup' constructor.+-- | Represents the input of a /CreateCacheSubnetGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createCacheSubnetGroup' smart constructor.+data CreateCacheSubnetGroup = CreateCacheSubnetGroup'+ { _ccsgCacheSubnetGroupName :: !Text+ , _ccsgCacheSubnetGroupDescription :: !Text+ , _ccsgSubnetIds :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateCacheSubnetGroup' with the minimum fields required to make a request. ----- * 'ccsgCacheSubnetGroupDescription' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'ccsgCacheSubnetGroupName' @::@ 'Text'+-- * 'ccsgCacheSubnetGroupName' ----- * 'ccsgSubnetIds' @::@ ['Text']+-- * 'ccsgCacheSubnetGroupDescription' ---createCacheSubnetGroup :: Text -- ^ 'ccsgCacheSubnetGroupName'- -> Text -- ^ 'ccsgCacheSubnetGroupDescription'- -> CreateCacheSubnetGroup-createCacheSubnetGroup p1 p2 = CreateCacheSubnetGroup- { _ccsgCacheSubnetGroupName = p1- , _ccsgCacheSubnetGroupDescription = p2- , _ccsgSubnetIds = mempty+-- * 'ccsgSubnetIds'+createCacheSubnetGroup+ :: Text -- ^ 'ccsgCacheSubnetGroupName'+ -> Text -- ^ 'ccsgCacheSubnetGroupDescription'+ -> CreateCacheSubnetGroup+createCacheSubnetGroup pCacheSubnetGroupName_ pCacheSubnetGroupDescription_ =+ CreateCacheSubnetGroup'+ { _ccsgCacheSubnetGroupName = pCacheSubnetGroupName_+ , _ccsgCacheSubnetGroupDescription = pCacheSubnetGroupDescription_+ , _ccsgSubnetIds = mempty } --- | A description for the cache subnet group.-ccsgCacheSubnetGroupDescription :: Lens' CreateCacheSubnetGroup Text-ccsgCacheSubnetGroupDescription =- lens _ccsgCacheSubnetGroupDescription- (\s a -> s { _ccsgCacheSubnetGroupDescription = a })---- | A name for the cache subnet group. This value is stored as a lowercase string.+-- | A name for the cache subnet group. This value is stored as a lowercase+-- string. -- -- Constraints: Must contain no more than 255 alphanumeric characters or -- hyphens. -- -- Example: 'mysubnetgroup' ccsgCacheSubnetGroupName :: Lens' CreateCacheSubnetGroup Text-ccsgCacheSubnetGroupName =- lens _ccsgCacheSubnetGroupName- (\s a -> s { _ccsgCacheSubnetGroupName = a })+ccsgCacheSubnetGroupName = lens _ccsgCacheSubnetGroupName (\ s a -> s{_ccsgCacheSubnetGroupName = a}); +-- | A description for the cache subnet group.+ccsgCacheSubnetGroupDescription :: Lens' CreateCacheSubnetGroup Text+ccsgCacheSubnetGroupDescription = lens _ccsgCacheSubnetGroupDescription (\ s a -> s{_ccsgCacheSubnetGroupDescription = a});+ -- | A list of VPC subnet IDs for the cache subnet group. ccsgSubnetIds :: Lens' CreateCacheSubnetGroup [Text]-ccsgSubnetIds = lens _ccsgSubnetIds (\s a -> s { _ccsgSubnetIds = a }) . _List--newtype CreateCacheSubnetGroupResponse = CreateCacheSubnetGroupResponse- { _ccsgrCacheSubnetGroup :: Maybe CacheSubnetGroup- } deriving (Eq, Read, Show)+ccsgSubnetIds = lens _ccsgSubnetIds (\ s a -> s{_ccsgSubnetIds = a}) . _Coerce; --- | 'CreateCacheSubnetGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ccsgrCacheSubnetGroup' @::@ 'Maybe' 'CacheSubnetGroup'----createCacheSubnetGroupResponse :: CreateCacheSubnetGroupResponse-createCacheSubnetGroupResponse = CreateCacheSubnetGroupResponse- { _ccsgrCacheSubnetGroup = Nothing- }+instance AWSRequest CreateCacheSubnetGroup where+ type Sv CreateCacheSubnetGroup = ElastiCache+ type Rs CreateCacheSubnetGroup =+ CreateCacheSubnetGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateCacheSubnetGroupResult"+ (\ s h x ->+ CreateCacheSubnetGroupResponse' <$>+ (x .@? "CacheSubnetGroup") <*> (pure (fromEnum s))) -ccsgrCacheSubnetGroup :: Lens' CreateCacheSubnetGroupResponse (Maybe CacheSubnetGroup)-ccsgrCacheSubnetGroup =- lens _ccsgrCacheSubnetGroup (\s a -> s { _ccsgrCacheSubnetGroup = a })+instance ToHeaders CreateCacheSubnetGroup where+ toHeaders = const mempty instance ToPath CreateCacheSubnetGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateCacheSubnetGroup where- toQuery CreateCacheSubnetGroup{..} = mconcat- [ "CacheSubnetGroupDescription" =? _ccsgCacheSubnetGroupDescription- , "CacheSubnetGroupName" =? _ccsgCacheSubnetGroupName- , "SubnetIds" =? _ccsgSubnetIds- ]+ toQuery CreateCacheSubnetGroup'{..}+ = mconcat+ ["Action" =:+ ("CreateCacheSubnetGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSubnetGroupName" =: _ccsgCacheSubnetGroupName,+ "CacheSubnetGroupDescription" =:+ _ccsgCacheSubnetGroupDescription,+ "SubnetIds" =:+ toQueryList "SubnetIdentifier" _ccsgSubnetIds] -instance ToHeaders CreateCacheSubnetGroup+-- | /See:/ 'createCacheSubnetGroupResponse' smart constructor.+data CreateCacheSubnetGroupResponse = CreateCacheSubnetGroupResponse'+ { _crsCacheSubnetGroup :: !(Maybe CacheSubnetGroup)+ , _crsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateCacheSubnetGroup where- type Sv CreateCacheSubnetGroup = ElastiCache- type Rs CreateCacheSubnetGroup = CreateCacheSubnetGroupResponse+-- | Creates a value of 'CreateCacheSubnetGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crsCacheSubnetGroup'+--+-- * 'crsStatus'+createCacheSubnetGroupResponse+ :: Int -- ^ 'crsStatus'+ -> CreateCacheSubnetGroupResponse+createCacheSubnetGroupResponse pStatus_ =+ CreateCacheSubnetGroupResponse'+ { _crsCacheSubnetGroup = Nothing+ , _crsStatus = pStatus_+ } - request = post "CreateCacheSubnetGroup"- response = xmlResponse+-- | Undocumented member.+crsCacheSubnetGroup :: Lens' CreateCacheSubnetGroupResponse (Maybe CacheSubnetGroup)+crsCacheSubnetGroup = lens _crsCacheSubnetGroup (\ s a -> s{_crsCacheSubnetGroup = a}); -instance FromXML CreateCacheSubnetGroupResponse where- parseXML = withElement "CreateCacheSubnetGroupResult" $ \x -> CreateCacheSubnetGroupResponse- <$> x .@? "CacheSubnetGroup"+-- | The response status code.+crsStatus :: Lens' CreateCacheSubnetGroupResponse Int+crsStatus = lens _crsStatus (\ s a -> s{_crsStatus = a});
gen/Network/AWS/ElastiCache/CreateReplicationGroup.hs view
@@ -1,451 +1,499 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateReplicationGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateReplicationGroup/ action creates a replication group. A replication--- group is a collection of cache clusters, where one of the cache clusters is a--- read/write primary and the others are read-only replicas. Writes to the--- primary are automatically propagated to the replicas.+-- The /CreateReplicationGroup/ action creates a replication group. A+-- replication group is a collection of cache clusters, where one of the+-- cache clusters is a read\/write primary and the others are read-only+-- replicas. Writes to the primary are automatically propagated to the+-- replicas. -- -- When you create a replication group, you must specify an existing cache -- cluster that is in the primary role. When the replication group has been--- successfully created, you can add one or more read replica replicas to it, up--- to a total of five read replicas.+-- successfully created, you can add one or more read replica replicas to+-- it, up to a total of five read replicas. ----- Note: This action is valid only for Redis.+-- __Note:__ This action is valid only for Redis. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateReplicationGroup.html AWS API Reference> for CreateReplicationGroup. module Network.AWS.ElastiCache.CreateReplicationGroup (- -- * Request- CreateReplicationGroup- -- ** Request constructor- , createReplicationGroup- -- ** Request lenses- , crgAutoMinorVersionUpgrade+ -- * Creating a Request+ createReplicationGroup+ , CreateReplicationGroup+ -- * Request Lenses , crgAutomaticFailoverEnabled , crgCacheNodeType+ , crgEngineVersion+ , crgSecurityGroupIds+ , crgAutoMinorVersionUpgrade+ , crgSnapshotARNs , crgCacheParameterGroupName- , crgCacheSecurityGroupNames- , crgCacheSubnetGroupName+ , crgSnapshotWindow+ , crgPrimaryClusterId , crgEngine- , crgEngineVersion- , crgNotificationTopicArn- , crgNumCacheClusters- , crgPort- , crgPreferredCacheClusterAZs , crgPreferredMaintenanceWindow- , crgPrimaryClusterId- , crgReplicationGroupDescription- , crgReplicationGroupId- , crgSecurityGroupIds- , crgSnapshotArns- , crgSnapshotName+ , crgCacheSubnetGroupName , crgSnapshotRetentionLimit- , crgSnapshotWindow+ , crgSnapshotName+ , crgPreferredCacheClusterAZs+ , crgNumCacheClusters+ , crgNotificationTopicARN , crgTags+ , crgCacheSecurityGroupNames+ , crgPort+ , crgReplicationGroupId+ , crgReplicationGroupDescription - -- * Response- , CreateReplicationGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , createReplicationGroupResponse- -- ** Response lenses- , crgrReplicationGroup+ , CreateReplicationGroupResponse+ -- * Response Lenses+ , crgrsReplicationGroup+ , crgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateReplicationGroup = CreateReplicationGroup- { _crgAutoMinorVersionUpgrade :: Maybe Bool- , _crgAutomaticFailoverEnabled :: Maybe Bool- , _crgCacheNodeType :: Maybe Text- , _crgCacheParameterGroupName :: Maybe Text- , _crgCacheSecurityGroupNames :: List "member" Text- , _crgCacheSubnetGroupName :: Maybe Text- , _crgEngine :: Maybe Text- , _crgEngineVersion :: Maybe Text- , _crgNotificationTopicArn :: Maybe Text- , _crgNumCacheClusters :: Maybe Int- , _crgPort :: Maybe Int- , _crgPreferredCacheClusterAZs :: List "member" Text- , _crgPreferredMaintenanceWindow :: Maybe Text- , _crgPrimaryClusterId :: Maybe Text- , _crgReplicationGroupDescription :: Text- , _crgReplicationGroupId :: Text- , _crgSecurityGroupIds :: List "member" Text- , _crgSnapshotArns :: List "member" Text- , _crgSnapshotName :: Maybe Text- , _crgSnapshotRetentionLimit :: Maybe Int- , _crgSnapshotWindow :: Maybe Text- , _crgTags :: List "member" Tag- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateReplicationGroup' constructor.+-- | Represents the input of a /CreateReplicationGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createReplicationGroup' smart constructor.+data CreateReplicationGroup = CreateReplicationGroup'+ { _crgAutomaticFailoverEnabled :: !(Maybe Bool)+ , _crgCacheNodeType :: !(Maybe Text)+ , _crgEngineVersion :: !(Maybe Text)+ , _crgSecurityGroupIds :: !(Maybe [Text])+ , _crgAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _crgSnapshotARNs :: !(Maybe [Text])+ , _crgCacheParameterGroupName :: !(Maybe Text)+ , _crgSnapshotWindow :: !(Maybe Text)+ , _crgPrimaryClusterId :: !(Maybe Text)+ , _crgEngine :: !(Maybe Text)+ , _crgPreferredMaintenanceWindow :: !(Maybe Text)+ , _crgCacheSubnetGroupName :: !(Maybe Text)+ , _crgSnapshotRetentionLimit :: !(Maybe Int)+ , _crgSnapshotName :: !(Maybe Text)+ , _crgPreferredCacheClusterAZs :: !(Maybe [Text])+ , _crgNumCacheClusters :: !(Maybe Int)+ , _crgNotificationTopicARN :: !(Maybe Text)+ , _crgTags :: !(Maybe [Tag])+ , _crgCacheSecurityGroupNames :: !(Maybe [Text])+ , _crgPort :: !(Maybe Int)+ , _crgReplicationGroupId :: !Text+ , _crgReplicationGroupDescription :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateReplicationGroup' with the minimum fields required to make a request. ----- * 'crgAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'+-- Use one of the following lenses to modify other fields as desired: ----- * 'crgAutomaticFailoverEnabled' @::@ 'Maybe' 'Bool'+-- * 'crgAutomaticFailoverEnabled' ----- * 'crgCacheNodeType' @::@ 'Maybe' 'Text'+-- * 'crgCacheNodeType' ----- * 'crgCacheParameterGroupName' @::@ 'Maybe' 'Text'+-- * 'crgEngineVersion' ----- * 'crgCacheSecurityGroupNames' @::@ ['Text']+-- * 'crgSecurityGroupIds' ----- * 'crgCacheSubnetGroupName' @::@ 'Maybe' 'Text'+-- * 'crgAutoMinorVersionUpgrade' ----- * 'crgEngine' @::@ 'Maybe' 'Text'+-- * 'crgSnapshotARNs' ----- * 'crgEngineVersion' @::@ 'Maybe' 'Text'+-- * 'crgCacheParameterGroupName' ----- * 'crgNotificationTopicArn' @::@ 'Maybe' 'Text'+-- * 'crgSnapshotWindow' ----- * 'crgNumCacheClusters' @::@ 'Maybe' 'Int'+-- * 'crgPrimaryClusterId' ----- * 'crgPort' @::@ 'Maybe' 'Int'+-- * 'crgEngine' ----- * 'crgPreferredCacheClusterAZs' @::@ ['Text']+-- * 'crgPreferredMaintenanceWindow' ----- * 'crgPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'+-- * 'crgCacheSubnetGroupName' ----- * 'crgPrimaryClusterId' @::@ 'Maybe' 'Text'+-- * 'crgSnapshotRetentionLimit' ----- * 'crgReplicationGroupDescription' @::@ 'Text'+-- * 'crgSnapshotName' ----- * 'crgReplicationGroupId' @::@ 'Text'+-- * 'crgPreferredCacheClusterAZs' ----- * 'crgSecurityGroupIds' @::@ ['Text']+-- * 'crgNumCacheClusters' ----- * 'crgSnapshotArns' @::@ ['Text']+-- * 'crgNotificationTopicARN' ----- * 'crgSnapshotName' @::@ 'Maybe' 'Text'+-- * 'crgTags' ----- * 'crgSnapshotRetentionLimit' @::@ 'Maybe' 'Int'+-- * 'crgCacheSecurityGroupNames' ----- * 'crgSnapshotWindow' @::@ 'Maybe' 'Text'+-- * 'crgPort' ----- * 'crgTags' @::@ ['Tag']+-- * 'crgReplicationGroupId' ---createReplicationGroup :: Text -- ^ 'crgReplicationGroupId'- -> Text -- ^ 'crgReplicationGroupDescription'- -> CreateReplicationGroup-createReplicationGroup p1 p2 = CreateReplicationGroup- { _crgReplicationGroupId = p1- , _crgReplicationGroupDescription = p2- , _crgPrimaryClusterId = Nothing- , _crgAutomaticFailoverEnabled = Nothing- , _crgNumCacheClusters = Nothing- , _crgPreferredCacheClusterAZs = mempty- , _crgCacheNodeType = Nothing- , _crgEngine = Nothing- , _crgEngineVersion = Nothing- , _crgCacheParameterGroupName = Nothing- , _crgCacheSubnetGroupName = Nothing- , _crgCacheSecurityGroupNames = mempty- , _crgSecurityGroupIds = mempty- , _crgTags = mempty- , _crgSnapshotArns = mempty- , _crgSnapshotName = Nothing- , _crgPreferredMaintenanceWindow = Nothing- , _crgPort = Nothing- , _crgNotificationTopicArn = Nothing- , _crgAutoMinorVersionUpgrade = Nothing- , _crgSnapshotRetentionLimit = Nothing- , _crgSnapshotWindow = Nothing+-- * 'crgReplicationGroupDescription'+createReplicationGroup+ :: Text -- ^ 'crgReplicationGroupId'+ -> Text -- ^ 'crgReplicationGroupDescription'+ -> CreateReplicationGroup+createReplicationGroup pReplicationGroupId_ pReplicationGroupDescription_ =+ CreateReplicationGroup'+ { _crgAutomaticFailoverEnabled = Nothing+ , _crgCacheNodeType = Nothing+ , _crgEngineVersion = Nothing+ , _crgSecurityGroupIds = Nothing+ , _crgAutoMinorVersionUpgrade = Nothing+ , _crgSnapshotARNs = Nothing+ , _crgCacheParameterGroupName = Nothing+ , _crgSnapshotWindow = Nothing+ , _crgPrimaryClusterId = Nothing+ , _crgEngine = Nothing+ , _crgPreferredMaintenanceWindow = Nothing+ , _crgCacheSubnetGroupName = Nothing+ , _crgSnapshotRetentionLimit = Nothing+ , _crgSnapshotName = Nothing+ , _crgPreferredCacheClusterAZs = Nothing+ , _crgNumCacheClusters = Nothing+ , _crgNotificationTopicARN = Nothing+ , _crgTags = Nothing+ , _crgCacheSecurityGroupNames = Nothing+ , _crgPort = Nothing+ , _crgReplicationGroupId = pReplicationGroupId_+ , _crgReplicationGroupDescription = pReplicationGroupDescription_ } --- | This parameter is currently disabled.-crgAutoMinorVersionUpgrade :: Lens' CreateReplicationGroup (Maybe Bool)-crgAutoMinorVersionUpgrade =- lens _crgAutoMinorVersionUpgrade- (\s a -> s { _crgAutoMinorVersionUpgrade = a })- -- | Specifies whether a read-only replica will be automatically promoted to--- read/write primary if the existing primary fails.+-- read\/write primary if the existing primary fails. ----- If 'true', Multi-AZ is enabled for this replication group. If 'false', Multi-AZ--- is disabled for this replication group.+-- If 'true', Multi-AZ is enabled for this replication group. If 'false',+-- Multi-AZ is disabled for this replication group. -- -- Default: false -- -- ElastiCache Multi-AZ replication groups is not supported on: ----- Redis versions earlier than 2.8.6. T1 and T2 cache node types.+-- - Redis versions earlier than 2.8.6.+-- - T1 and T2 cache node types. crgAutomaticFailoverEnabled :: Lens' CreateReplicationGroup (Maybe Bool)-crgAutomaticFailoverEnabled =- lens _crgAutomaticFailoverEnabled- (\s a -> s { _crgAutomaticFailoverEnabled = a })+crgAutomaticFailoverEnabled = lens _crgAutomaticFailoverEnabled (\ s a -> s{_crgAutomaticFailoverEnabled = a}); -- | The compute and memory capacity of the nodes in the node group. -- -- Valid node types are as follows: ----- General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge' ----- All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-crgCacheNodeType :: Lens' CreateReplicationGroup (Maybe Text)-crgCacheNodeType = lens _crgCacheNodeType (\s a -> s { _crgCacheNodeType = a })---- | The name of the parameter group to associate with this replication group. If--- this argument is omitted, the default cache parameter group for the specified--- engine is used.-crgCacheParameterGroupName :: Lens' CreateReplicationGroup (Maybe Text)-crgCacheParameterGroupName =- lens _crgCacheParameterGroupName- (\s a -> s { _crgCacheParameterGroupName = a })---- | A list of cache security group names to associate with this replication group.-crgCacheSecurityGroupNames :: Lens' CreateReplicationGroup [Text]-crgCacheSecurityGroupNames =- lens _crgCacheSecurityGroupNames- (\s a -> s { _crgCacheSecurityGroupNames = a })- . _List---- | The name of the cache subnet group to be used for the replication group.-crgCacheSubnetGroupName :: Lens' CreateReplicationGroup (Maybe Text)-crgCacheSubnetGroupName =- lens _crgCacheSubnetGroupName (\s a -> s { _crgCacheSubnetGroupName = a })---- | The name of the cache engine to be used for the cache clusters in this--- replication group.+-- __Notes:__ ----- Default: redis-crgEngine :: Lens' CreateReplicationGroup (Maybe Text)-crgEngine = lens _crgEngine (\s a -> s { _crgEngine = a })+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+crgCacheNodeType :: Lens' CreateReplicationGroup (Maybe Text)+crgCacheNodeType = lens _crgCacheNodeType (\ s a -> s{_crgCacheNodeType = a}); --- | The version number of the cache engine to be used for the cache clusters in--- this replication group. To view the supported cache engine versions, use the /DescribeCacheEngineVersions/ action.+-- | The version number of the cache engine to be used for the cache clusters+-- in this replication group. To view the supported cache engine versions,+-- use the /DescribeCacheEngineVersions/ action. crgEngineVersion :: Lens' CreateReplicationGroup (Maybe Text)-crgEngineVersion = lens _crgEngineVersion (\s a -> s { _crgEngineVersion = a })+crgEngineVersion = lens _crgEngineVersion (\ s a -> s{_crgEngineVersion = a}); --- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service--- (SNS) topic to which notifications will be sent.+-- | One or more Amazon VPC security groups associated with this replication+-- group. ----- The Amazon SNS topic owner must be the same as the cache cluster owner.-crgNotificationTopicArn :: Lens' CreateReplicationGroup (Maybe Text)-crgNotificationTopicArn =- lens _crgNotificationTopicArn (\s a -> s { _crgNotificationTopicArn = a })+-- Use this parameter only when you are creating a replication group in an+-- Amazon Virtual Private Cloud (VPC).+crgSecurityGroupIds :: Lens' CreateReplicationGroup [Text]+crgSecurityGroupIds = lens _crgSecurityGroupIds (\ s a -> s{_crgSecurityGroupIds = a}) . _Default . _Coerce; --- | The number of cache clusters this replication group will initially have.+-- | This parameter is currently disabled.+crgAutoMinorVersionUpgrade :: Lens' CreateReplicationGroup (Maybe Bool)+crgAutoMinorVersionUpgrade = lens _crgAutoMinorVersionUpgrade (\ s a -> s{_crgAutoMinorVersionUpgrade = a});++-- | A single-element string list containing an Amazon Resource Name (ARN)+-- that uniquely identifies a Redis RDB snapshot file stored in Amazon S3.+-- The snapshot file will be used to populate the node group. The Amazon S3+-- object name in the ARN cannot contain any commas. ----- If /Multi-AZ/ is 'enabled', the value of this parameter must be at least 2.+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'. ----- The maximum permitted value for /NumCacheClusters/ is 6 (primary plus 5--- replicas). If you need to exceed this limit, please fill out the ElastiCache--- Limit Increase Request form at <http://aws.amazon.com/contact-us/elasticache-node-limit-request http://aws.amazon.com/contact-us/elasticache-node-limit-request>.-crgNumCacheClusters :: Lens' CreateReplicationGroup (Maybe Int)-crgNumCacheClusters =- lens _crgNumCacheClusters (\s a -> s { _crgNumCacheClusters = a })+-- Example of an Amazon S3 ARN: 'arn:aws:s3:::my_bucket\/snapshot1.rdb'+crgSnapshotARNs :: Lens' CreateReplicationGroup [Text]+crgSnapshotARNs = lens _crgSnapshotARNs (\ s a -> s{_crgSnapshotARNs = a}) . _Default . _Coerce; --- | The port number on which each member of the replication group will accept--- connections.-crgPort :: Lens' CreateReplicationGroup (Maybe Int)-crgPort = lens _crgPort (\s a -> s { _crgPort = a })+-- | The name of the parameter group to associate with this replication+-- group. If this argument is omitted, the default cache parameter group+-- for the specified engine is used.+crgCacheParameterGroupName :: Lens' CreateReplicationGroup (Maybe Text)+crgCacheParameterGroupName = lens _crgCacheParameterGroupName (\ s a -> s{_crgCacheParameterGroupName = a}); --- | A list of EC2 availability zones in which the replication group's cache--- clusters will be created. The order of the availability zones in the list is--- not important.------ If you are creating your replication group in an Amazon VPC (recommended),--- you can only locate cache clusters in availability zones associated with the--- subnets in the selected subnet group. The number of availability zones listed--- must equal the value of /NumCacheClusters/.+-- | The daily time range (in UTC) during which ElastiCache will begin taking+-- a daily snapshot of your node group. ----- Default: system chosen availability zones.+-- Example: '05:00-09:00' ----- Example: One Redis cache cluster in each of three availability zones.--- PreferredAvailabilityZones.member.1=us-west-2a--- PreferredAvailabilityZones.member.2=us-west-2c--- PreferredAvailabilityZones.member.3=us-west-2c-crgPreferredCacheClusterAZs :: Lens' CreateReplicationGroup [Text]-crgPreferredCacheClusterAZs =- lens _crgPreferredCacheClusterAZs- (\s a -> s { _crgPreferredCacheClusterAZs = a })- . _List---- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:+-- If you do not specify this parameter, then ElastiCache will+-- automatically choose an appropriate time range. ----- 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'-crgPreferredMaintenanceWindow :: Lens' CreateReplicationGroup (Maybe Text)-crgPreferredMaintenanceWindow =- lens _crgPreferredMaintenanceWindow- (\s a -> s { _crgPreferredMaintenanceWindow = a })+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'.+crgSnapshotWindow :: Lens' CreateReplicationGroup (Maybe Text)+crgSnapshotWindow = lens _crgSnapshotWindow (\ s a -> s{_crgSnapshotWindow = a}); --- | The identifier of the cache cluster that will serve as the primary for this--- replication group. This cache cluster must already exist and have a status of /available/.+-- | The identifier of the cache cluster that will serve as the primary for+-- this replication group. This cache cluster must already exist and have a+-- status of /available/. -- -- This parameter is not required if /NumCacheClusters/ is specified. crgPrimaryClusterId :: Lens' CreateReplicationGroup (Maybe Text)-crgPrimaryClusterId =- lens _crgPrimaryClusterId (\s a -> s { _crgPrimaryClusterId = a })+crgPrimaryClusterId = lens _crgPrimaryClusterId (\ s a -> s{_crgPrimaryClusterId = a}); --- | A user-created description for the replication group.-crgReplicationGroupDescription :: Lens' CreateReplicationGroup Text-crgReplicationGroupDescription =- lens _crgReplicationGroupDescription- (\s a -> s { _crgReplicationGroupDescription = a })+-- | The name of the cache engine to be used for the cache clusters in this+-- replication group.+--+-- Default: redis+crgEngine :: Lens' CreateReplicationGroup (Maybe Text)+crgEngine = lens _crgEngine (\ s a -> s{_crgEngine = a}); --- | The replication group identifier. This parameter is stored as a lowercase--- string.+-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are: ----- Constraints:+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat' ----- A name must contain from 1 to 20 alphanumeric characters or hyphens. The--- first character must be a letter. A name cannot end with a hyphen or contain--- two consecutive hyphens.-crgReplicationGroupId :: Lens' CreateReplicationGroup Text-crgReplicationGroupId =- lens _crgReplicationGroupId (\s a -> s { _crgReplicationGroupId = a })+-- Example: 'sun:05:00-sun:09:00'+crgPreferredMaintenanceWindow :: Lens' CreateReplicationGroup (Maybe Text)+crgPreferredMaintenanceWindow = lens _crgPreferredMaintenanceWindow (\ s a -> s{_crgPreferredMaintenanceWindow = a}); --- | One or more Amazon VPC security groups associated with this replication group.------ Use this parameter only when you are creating a replication group in an--- Amazon Virtual Private Cloud (VPC).-crgSecurityGroupIds :: Lens' CreateReplicationGroup [Text]-crgSecurityGroupIds =- lens _crgSecurityGroupIds (\s a -> s { _crgSecurityGroupIds = a })- . _List+-- | The name of the cache subnet group to be used for the replication group.+crgCacheSubnetGroupName :: Lens' CreateReplicationGroup (Maybe Text)+crgCacheSubnetGroupName = lens _crgCacheSubnetGroupName (\ s a -> s{_crgCacheSubnetGroupName = a}); --- | A single-element string list containing an Amazon Resource Name (ARN) that--- uniquely identifies a Redis RDB snapshot file stored in Amazon S3. The--- snapshot file will be used to populate the node group. The Amazon S3 object--- name in the ARN cannot contain any commas.+-- | The number of days for which ElastiCache will retain automatic snapshots+-- before deleting them. For example, if you set 'SnapshotRetentionLimit'+-- to 5, then a snapshot that was taken today will be retained for 5 days+-- before being deleted. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'. ----- Example of an Amazon S3 ARN: 'arn:aws:s3:::my_bucket/snapshot1.rdb'-crgSnapshotArns :: Lens' CreateReplicationGroup [Text]-crgSnapshotArns = lens _crgSnapshotArns (\s a -> s { _crgSnapshotArns = a }) . _List+-- Default: 0 (i.e., automatic backups are disabled for this cache+-- cluster).+crgSnapshotRetentionLimit :: Lens' CreateReplicationGroup (Maybe Int)+crgSnapshotRetentionLimit = lens _crgSnapshotRetentionLimit (\ s a -> s{_crgSnapshotRetentionLimit = a}); --- | The name of a snapshot from which to restore data into the new node group.--- The snapshot status changes to 'restoring' while the new node group is being--- created.+-- | The name of a snapshot from which to restore data into the new node+-- group. The snapshot status changes to 'restoring' while the new node+-- group is being created. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- __Note:__ This parameter is only valid if the 'Engine' parameter is+-- 'redis'. crgSnapshotName :: Lens' CreateReplicationGroup (Maybe Text)-crgSnapshotName = lens _crgSnapshotName (\s a -> s { _crgSnapshotName = a })+crgSnapshotName = lens _crgSnapshotName (\ s a -> s{_crgSnapshotName = a}); --- | The number of days for which ElastiCache will retain automatic snapshots--- before deleting them. For example, if you set 'SnapshotRetentionLimit' to 5,--- then a snapshot that was taken today will be retained for 5 days before being--- deleted.+-- | A list of EC2 availability zones in which the replication group\'s cache+-- clusters will be created. The order of the availability zones in the+-- list is not important. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.+-- If you are creating your replication group in an Amazon VPC+-- (recommended), you can only locate cache clusters in availability zones+-- associated with the subnets in the selected subnet group. ----- Default: 0 (i.e., automatic backups are disabled for this cache cluster).-crgSnapshotRetentionLimit :: Lens' CreateReplicationGroup (Maybe Int)-crgSnapshotRetentionLimit =- lens _crgSnapshotRetentionLimit- (\s a -> s { _crgSnapshotRetentionLimit = a })+-- The number of availability zones listed must equal the value of+-- /NumCacheClusters/.+--+-- Default: system chosen availability zones.+--+-- Example: One Redis cache cluster in each of three availability zones.+-- PreferredAvailabilityZones.member.1=us-west-2a+-- PreferredAvailabilityZones.member.2=us-west-2c+-- PreferredAvailabilityZones.member.3=us-west-2c+crgPreferredCacheClusterAZs :: Lens' CreateReplicationGroup [Text]+crgPreferredCacheClusterAZs = lens _crgPreferredCacheClusterAZs (\ s a -> s{_crgPreferredCacheClusterAZs = a}) . _Default . _Coerce; --- | The daily time range (in UTC) during which ElastiCache will begin taking a--- daily snapshot of your node group.+-- | The number of cache clusters this replication group will initially have. ----- Example: '05:00-09:00'+-- If /Multi-AZ/ is 'enabled', the value of this parameter must be at least+-- 2. ----- If you do not specify this parameter, then ElastiCache will automatically--- choose an appropriate time range.+-- The maximum permitted value for /NumCacheClusters/ is 6 (primary plus 5+-- replicas). If you need to exceed this limit, please fill out the+-- ElastiCache Limit Increase Request form at+-- <http://aws.amazon.com/contact-us/elasticache-node-limit-request>.+crgNumCacheClusters :: Lens' CreateReplicationGroup (Maybe Int)+crgNumCacheClusters = lens _crgNumCacheClusters (\ s a -> s{_crgNumCacheClusters = a});++-- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service+-- (SNS) topic to which notifications will be sent. ----- Note: This parameter is only valid if the 'Engine' parameter is 'redis'.-crgSnapshotWindow :: Lens' CreateReplicationGroup (Maybe Text)-crgSnapshotWindow =- lens _crgSnapshotWindow (\s a -> s { _crgSnapshotWindow = a })+-- The Amazon SNS topic owner must be the same as the cache cluster owner.+crgNotificationTopicARN :: Lens' CreateReplicationGroup (Maybe Text)+crgNotificationTopicARN = lens _crgNotificationTopicARN (\ s a -> s{_crgNotificationTopicARN = a}); -- | A list of cost allocation tags to be added to this resource. A tag is a -- key-value pair. A tag key must be accompanied by a tag value. crgTags :: Lens' CreateReplicationGroup [Tag]-crgTags = lens _crgTags (\s a -> s { _crgTags = a }) . _List+crgTags = lens _crgTags (\ s a -> s{_crgTags = a}) . _Default . _Coerce; -newtype CreateReplicationGroupResponse = CreateReplicationGroupResponse- { _crgrReplicationGroup :: Maybe ReplicationGroup- } deriving (Eq, Read, Show)+-- | A list of cache security group names to associate with this replication+-- group.+crgCacheSecurityGroupNames :: Lens' CreateReplicationGroup [Text]+crgCacheSecurityGroupNames = lens _crgCacheSecurityGroupNames (\ s a -> s{_crgCacheSecurityGroupNames = a}) . _Default . _Coerce; --- | 'CreateReplicationGroupResponse' constructor.------ The fields accessible through corresponding lenses are:+-- | The port number on which each member of the replication group will+-- accept connections.+crgPort :: Lens' CreateReplicationGroup (Maybe Int)+crgPort = lens _crgPort (\ s a -> s{_crgPort = a});++-- | The replication group identifier. This parameter is stored as a+-- lowercase string. ----- * 'crgrReplicationGroup' @::@ 'Maybe' 'ReplicationGroup'+-- Constraints: ---createReplicationGroupResponse :: CreateReplicationGroupResponse-createReplicationGroupResponse = CreateReplicationGroupResponse- { _crgrReplicationGroup = Nothing- }+-- - A name must contain from 1 to 20 alphanumeric characters or hyphens.+-- - The first character must be a letter.+-- - A name cannot end with a hyphen or contain two consecutive hyphens.+crgReplicationGroupId :: Lens' CreateReplicationGroup Text+crgReplicationGroupId = lens _crgReplicationGroupId (\ s a -> s{_crgReplicationGroupId = a}); -crgrReplicationGroup :: Lens' CreateReplicationGroupResponse (Maybe ReplicationGroup)-crgrReplicationGroup =- lens _crgrReplicationGroup (\s a -> s { _crgrReplicationGroup = a })+-- | A user-created description for the replication group.+crgReplicationGroupDescription :: Lens' CreateReplicationGroup Text+crgReplicationGroupDescription = lens _crgReplicationGroupDescription (\ s a -> s{_crgReplicationGroupDescription = a}); +instance AWSRequest CreateReplicationGroup where+ type Sv CreateReplicationGroup = ElastiCache+ type Rs CreateReplicationGroup =+ CreateReplicationGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateReplicationGroupResult"+ (\ s h x ->+ CreateReplicationGroupResponse' <$>+ (x .@? "ReplicationGroup") <*> (pure (fromEnum s)))++instance ToHeaders CreateReplicationGroup where+ toHeaders = const mempty+ instance ToPath CreateReplicationGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateReplicationGroup where- toQuery CreateReplicationGroup{..} = mconcat- [ "AutoMinorVersionUpgrade" =? _crgAutoMinorVersionUpgrade- , "AutomaticFailoverEnabled" =? _crgAutomaticFailoverEnabled- , "CacheNodeType" =? _crgCacheNodeType- , "CacheParameterGroupName" =? _crgCacheParameterGroupName- , "CacheSecurityGroupNames" =? _crgCacheSecurityGroupNames- , "CacheSubnetGroupName" =? _crgCacheSubnetGroupName- , "Engine" =? _crgEngine- , "EngineVersion" =? _crgEngineVersion- , "NotificationTopicArn" =? _crgNotificationTopicArn- , "NumCacheClusters" =? _crgNumCacheClusters- , "Port" =? _crgPort- , "PreferredCacheClusterAZs" =? _crgPreferredCacheClusterAZs- , "PreferredMaintenanceWindow" =? _crgPreferredMaintenanceWindow- , "PrimaryClusterId" =? _crgPrimaryClusterId- , "ReplicationGroupDescription" =? _crgReplicationGroupDescription- , "ReplicationGroupId" =? _crgReplicationGroupId- , "SecurityGroupIds" =? _crgSecurityGroupIds- , "SnapshotArns" =? _crgSnapshotArns- , "SnapshotName" =? _crgSnapshotName- , "SnapshotRetentionLimit" =? _crgSnapshotRetentionLimit- , "SnapshotWindow" =? _crgSnapshotWindow- , "Tags" =? _crgTags- ]+ toQuery CreateReplicationGroup'{..}+ = mconcat+ ["Action" =:+ ("CreateReplicationGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "AutomaticFailoverEnabled" =:+ _crgAutomaticFailoverEnabled,+ "CacheNodeType" =: _crgCacheNodeType,+ "EngineVersion" =: _crgEngineVersion,+ "SecurityGroupIds" =:+ toQuery+ (toQueryList "SecurityGroupId" <$>+ _crgSecurityGroupIds),+ "AutoMinorVersionUpgrade" =:+ _crgAutoMinorVersionUpgrade,+ "SnapshotArns" =:+ toQuery+ (toQueryList "SnapshotArn" <$> _crgSnapshotARNs),+ "CacheParameterGroupName" =:+ _crgCacheParameterGroupName,+ "SnapshotWindow" =: _crgSnapshotWindow,+ "PrimaryClusterId" =: _crgPrimaryClusterId,+ "Engine" =: _crgEngine,+ "PreferredMaintenanceWindow" =:+ _crgPreferredMaintenanceWindow,+ "CacheSubnetGroupName" =: _crgCacheSubnetGroupName,+ "SnapshotRetentionLimit" =:+ _crgSnapshotRetentionLimit,+ "SnapshotName" =: _crgSnapshotName,+ "PreferredCacheClusterAZs" =:+ toQuery+ (toQueryList "AvailabilityZone" <$>+ _crgPreferredCacheClusterAZs),+ "NumCacheClusters" =: _crgNumCacheClusters,+ "NotificationTopicArn" =: _crgNotificationTopicARN,+ "Tags" =: toQuery (toQueryList "Tag" <$> _crgTags),+ "CacheSecurityGroupNames" =:+ toQuery+ (toQueryList "CacheSecurityGroupName" <$>+ _crgCacheSecurityGroupNames),+ "Port" =: _crgPort,+ "ReplicationGroupId" =: _crgReplicationGroupId,+ "ReplicationGroupDescription" =:+ _crgReplicationGroupDescription] -instance ToHeaders CreateReplicationGroup+-- | /See:/ 'createReplicationGroupResponse' smart constructor.+data CreateReplicationGroupResponse = CreateReplicationGroupResponse'+ { _crgrsReplicationGroup :: !(Maybe ReplicationGroup)+ , _crgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateReplicationGroup where- type Sv CreateReplicationGroup = ElastiCache- type Rs CreateReplicationGroup = CreateReplicationGroupResponse+-- | Creates a value of 'CreateReplicationGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crgrsReplicationGroup'+--+-- * 'crgrsStatus'+createReplicationGroupResponse+ :: Int -- ^ 'crgrsStatus'+ -> CreateReplicationGroupResponse+createReplicationGroupResponse pStatus_ =+ CreateReplicationGroupResponse'+ { _crgrsReplicationGroup = Nothing+ , _crgrsStatus = pStatus_+ } - request = post "CreateReplicationGroup"- response = xmlResponse+-- | Undocumented member.+crgrsReplicationGroup :: Lens' CreateReplicationGroupResponse (Maybe ReplicationGroup)+crgrsReplicationGroup = lens _crgrsReplicationGroup (\ s a -> s{_crgrsReplicationGroup = a}); -instance FromXML CreateReplicationGroupResponse where- parseXML = withElement "CreateReplicationGroupResult" $ \x -> CreateReplicationGroupResponse- <$> x .@? "ReplicationGroup"+-- | The response status code.+crgrsStatus :: Lens' CreateReplicationGroupResponse Int+crgrsStatus = lens _crgrsStatus (\ s a -> s{_crgrsStatus = a});
gen/Network/AWS/ElastiCache/CreateSnapshot.hs view
@@ -1,120 +1,134 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.CreateSnapshot--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /CreateSnapshot/ action creates a copy of an entire cache cluster at a--- specific moment in time.+-- The /CreateSnapshot/ action creates a copy of an entire cache cluster at+-- a specific moment in time. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateSnapshot.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_CreateSnapshot.html AWS API Reference> for CreateSnapshot. module Network.AWS.ElastiCache.CreateSnapshot (- -- * Request- CreateSnapshot- -- ** Request constructor- , createSnapshot- -- ** Request lenses+ -- * Creating a Request+ createSnapshot+ , CreateSnapshot+ -- * Request Lenses , csCacheClusterId , csSnapshotName - -- * Response- , CreateSnapshotResponse- -- ** Response constructor+ -- * Destructuring the Response , createSnapshotResponse- -- ** Response lenses- , csr1Snapshot+ , CreateSnapshotResponse+ -- * Response Lenses+ , crersSnapshot+ , crersStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data CreateSnapshot = CreateSnapshot- { _csCacheClusterId :: Text- , _csSnapshotName :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'CreateSnapshot' constructor.+-- | Represents the input of a /CreateSnapshot/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'createSnapshot' smart constructor.+data CreateSnapshot = CreateSnapshot'+ { _csCacheClusterId :: !Text+ , _csSnapshotName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CreateSnapshot' with the minimum fields required to make a request. ----- * 'csCacheClusterId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'csSnapshotName' @::@ 'Text'+-- * 'csCacheClusterId' ---createSnapshot :: Text -- ^ 'csCacheClusterId'- -> Text -- ^ 'csSnapshotName'- -> CreateSnapshot-createSnapshot p1 p2 = CreateSnapshot- { _csCacheClusterId = p1- , _csSnapshotName = p2+-- * 'csSnapshotName'+createSnapshot+ :: Text -- ^ 'csCacheClusterId'+ -> Text -- ^ 'csSnapshotName'+ -> CreateSnapshot+createSnapshot pCacheClusterId_ pSnapshotName_ =+ CreateSnapshot'+ { _csCacheClusterId = pCacheClusterId_+ , _csSnapshotName = pSnapshotName_ } --- | The identifier of an existing cache cluster. The snapshot will be created--- from this cache cluster.+-- | The identifier of an existing cache cluster. The snapshot will be+-- created from this cache cluster. csCacheClusterId :: Lens' CreateSnapshot Text-csCacheClusterId = lens _csCacheClusterId (\s a -> s { _csCacheClusterId = a })+csCacheClusterId = lens _csCacheClusterId (\ s a -> s{_csCacheClusterId = a}); -- | A name for the snapshot being created. csSnapshotName :: Lens' CreateSnapshot Text-csSnapshotName = lens _csSnapshotName (\s a -> s { _csSnapshotName = a })--newtype CreateSnapshotResponse = CreateSnapshotResponse- { _csr1Snapshot :: Maybe Snapshot- } deriving (Eq, Read, Show)+csSnapshotName = lens _csSnapshotName (\ s a -> s{_csSnapshotName = a}); --- | 'CreateSnapshotResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'csr1Snapshot' @::@ 'Maybe' 'Snapshot'----createSnapshotResponse :: CreateSnapshotResponse-createSnapshotResponse = CreateSnapshotResponse- { _csr1Snapshot = Nothing- }+instance AWSRequest CreateSnapshot where+ type Sv CreateSnapshot = ElastiCache+ type Rs CreateSnapshot = CreateSnapshotResponse+ request = postQuery+ response+ = receiveXMLWrapper "CreateSnapshotResult"+ (\ s h x ->+ CreateSnapshotResponse' <$>+ (x .@? "Snapshot") <*> (pure (fromEnum s))) -csr1Snapshot :: Lens' CreateSnapshotResponse (Maybe Snapshot)-csr1Snapshot = lens _csr1Snapshot (\s a -> s { _csr1Snapshot = a })+instance ToHeaders CreateSnapshot where+ toHeaders = const mempty instance ToPath CreateSnapshot where- toPath = const "/"+ toPath = const "/" instance ToQuery CreateSnapshot where- toQuery CreateSnapshot{..} = mconcat- [ "CacheClusterId" =? _csCacheClusterId- , "SnapshotName" =? _csSnapshotName- ]+ toQuery CreateSnapshot'{..}+ = mconcat+ ["Action" =: ("CreateSnapshot" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheClusterId" =: _csCacheClusterId,+ "SnapshotName" =: _csSnapshotName] -instance ToHeaders CreateSnapshot+-- | /See:/ 'createSnapshotResponse' smart constructor.+data CreateSnapshotResponse = CreateSnapshotResponse'+ { _crersSnapshot :: !(Maybe Snapshot)+ , _crersStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest CreateSnapshot where- type Sv CreateSnapshot = ElastiCache- type Rs CreateSnapshot = CreateSnapshotResponse+-- | Creates a value of 'CreateSnapshotResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crersSnapshot'+--+-- * 'crersStatus'+createSnapshotResponse+ :: Int -- ^ 'crersStatus'+ -> CreateSnapshotResponse+createSnapshotResponse pStatus_ =+ CreateSnapshotResponse'+ { _crersSnapshot = Nothing+ , _crersStatus = pStatus_+ } - request = post "CreateSnapshot"- response = xmlResponse+-- | Undocumented member.+crersSnapshot :: Lens' CreateSnapshotResponse (Maybe Snapshot)+crersSnapshot = lens _crersSnapshot (\ s a -> s{_crersSnapshot = a}); -instance FromXML CreateSnapshotResponse where- parseXML = withElement "CreateSnapshotResult" $ \x -> CreateSnapshotResponse- <$> x .@? "Snapshot"+-- | The response status code.+crersStatus :: Lens' CreateSnapshotResponse Int+crersStatus = lens _crersStatus (\ s a -> s{_crersStatus = a});
gen/Network/AWS/ElastiCache/DeleteCacheCluster.hs view
@@ -1,129 +1,143 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteCacheCluster--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteCacheCluster/ action deletes a previously provisioned cache cluster. /DeleteCacheCluster/ deletes all associated cache nodes, node endpoints and the--- cache cluster itself. When you receive a successful response from this--- action, Amazon ElastiCache immediately begins deleting the cache cluster; you--- cannot cancel or revert this action.+-- The /DeleteCacheCluster/ action deletes a previously provisioned cache+-- cluster. /DeleteCacheCluster/ deletes all associated cache nodes, node+-- endpoints and the cache cluster itself. When you receive a successful+-- response from this action, Amazon ElastiCache immediately begins+-- deleting the cache cluster; you cannot cancel or revert this action. -- -- This API cannot be used to delete a cache cluster that is the last read -- replica of a replication group that has Multi-AZ mode enabled. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheCluster.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheCluster.html AWS API Reference> for DeleteCacheCluster. module Network.AWS.ElastiCache.DeleteCacheCluster (- -- * Request- DeleteCacheCluster- -- ** Request constructor- , deleteCacheCluster- -- ** Request lenses- , dccCacheClusterId+ -- * Creating a Request+ deleteCacheCluster+ , DeleteCacheCluster+ -- * Request Lenses , dccFinalSnapshotIdentifier+ , dccCacheClusterId - -- * Response- , DeleteCacheClusterResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteCacheClusterResponse- -- ** Response lenses- , dccrCacheCluster+ , DeleteCacheClusterResponse+ -- * Response Lenses+ , dccrsCacheCluster+ , dccrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DeleteCacheCluster = DeleteCacheCluster- { _dccCacheClusterId :: Text- , _dccFinalSnapshotIdentifier :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeleteCacheCluster' constructor.+-- | Represents the input of a /DeleteCacheCluster/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteCacheCluster' smart constructor.+data DeleteCacheCluster = DeleteCacheCluster'+ { _dccFinalSnapshotIdentifier :: !(Maybe Text)+ , _dccCacheClusterId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteCacheCluster' with the minimum fields required to make a request. ----- * 'dccCacheClusterId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dccFinalSnapshotIdentifier' @::@ 'Maybe' 'Text'+-- * 'dccFinalSnapshotIdentifier' ---deleteCacheCluster :: Text -- ^ 'dccCacheClusterId'- -> DeleteCacheCluster-deleteCacheCluster p1 = DeleteCacheCluster- { _dccCacheClusterId = p1- , _dccFinalSnapshotIdentifier = Nothing+-- * 'dccCacheClusterId'+deleteCacheCluster+ :: Text -- ^ 'dccCacheClusterId'+ -> DeleteCacheCluster+deleteCacheCluster pCacheClusterId_ =+ DeleteCacheCluster'+ { _dccFinalSnapshotIdentifier = Nothing+ , _dccCacheClusterId = pCacheClusterId_ } --- | The cache cluster identifier for the cluster to be deleted. This parameter is--- not case sensitive.-dccCacheClusterId :: Lens' DeleteCacheCluster Text-dccCacheClusterId =- lens _dccCacheClusterId (\s a -> s { _dccCacheClusterId = a })---- | The user-supplied name of a final cache cluster snapshot. This is the unique--- name that identifies the snapshot. ElastiCache creates the snapshot, and then--- deletes the cache cluster immediately afterward.+-- | The user-supplied name of a final cache cluster snapshot. This is the+-- unique name that identifies the snapshot. ElastiCache creates the+-- snapshot, and then deletes the cache cluster immediately afterward. dccFinalSnapshotIdentifier :: Lens' DeleteCacheCluster (Maybe Text)-dccFinalSnapshotIdentifier =- lens _dccFinalSnapshotIdentifier- (\s a -> s { _dccFinalSnapshotIdentifier = a })+dccFinalSnapshotIdentifier = lens _dccFinalSnapshotIdentifier (\ s a -> s{_dccFinalSnapshotIdentifier = a}); -newtype DeleteCacheClusterResponse = DeleteCacheClusterResponse- { _dccrCacheCluster :: Maybe CacheCluster- } deriving (Eq, Read, Show)+-- | The cache cluster identifier for the cluster to be deleted. This+-- parameter is not case sensitive.+dccCacheClusterId :: Lens' DeleteCacheCluster Text+dccCacheClusterId = lens _dccCacheClusterId (\ s a -> s{_dccCacheClusterId = a}); --- | 'DeleteCacheClusterResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dccrCacheCluster' @::@ 'Maybe' 'CacheCluster'----deleteCacheClusterResponse :: DeleteCacheClusterResponse-deleteCacheClusterResponse = DeleteCacheClusterResponse- { _dccrCacheCluster = Nothing- }+instance AWSRequest DeleteCacheCluster where+ type Sv DeleteCacheCluster = ElastiCache+ type Rs DeleteCacheCluster =+ DeleteCacheClusterResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteCacheClusterResult"+ (\ s h x ->+ DeleteCacheClusterResponse' <$>+ (x .@? "CacheCluster") <*> (pure (fromEnum s))) -dccrCacheCluster :: Lens' DeleteCacheClusterResponse (Maybe CacheCluster)-dccrCacheCluster = lens _dccrCacheCluster (\s a -> s { _dccrCacheCluster = a })+instance ToHeaders DeleteCacheCluster where+ toHeaders = const mempty instance ToPath DeleteCacheCluster where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteCacheCluster where- toQuery DeleteCacheCluster{..} = mconcat- [ "CacheClusterId" =? _dccCacheClusterId- , "FinalSnapshotIdentifier" =? _dccFinalSnapshotIdentifier- ]+ toQuery DeleteCacheCluster'{..}+ = mconcat+ ["Action" =: ("DeleteCacheCluster" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "FinalSnapshotIdentifier" =:+ _dccFinalSnapshotIdentifier,+ "CacheClusterId" =: _dccCacheClusterId] -instance ToHeaders DeleteCacheCluster+-- | /See:/ 'deleteCacheClusterResponse' smart constructor.+data DeleteCacheClusterResponse = DeleteCacheClusterResponse'+ { _dccrsCacheCluster :: !(Maybe CacheCluster)+ , _dccrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteCacheCluster where- type Sv DeleteCacheCluster = ElastiCache- type Rs DeleteCacheCluster = DeleteCacheClusterResponse+-- | Creates a value of 'DeleteCacheClusterResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dccrsCacheCluster'+--+-- * 'dccrsStatus'+deleteCacheClusterResponse+ :: Int -- ^ 'dccrsStatus'+ -> DeleteCacheClusterResponse+deleteCacheClusterResponse pStatus_ =+ DeleteCacheClusterResponse'+ { _dccrsCacheCluster = Nothing+ , _dccrsStatus = pStatus_+ } - request = post "DeleteCacheCluster"- response = xmlResponse+-- | Undocumented member.+dccrsCacheCluster :: Lens' DeleteCacheClusterResponse (Maybe CacheCluster)+dccrsCacheCluster = lens _dccrsCacheCluster (\ s a -> s{_dccrsCacheCluster = a}); -instance FromXML DeleteCacheClusterResponse where- parseXML = withElement "DeleteCacheClusterResult" $ \x -> DeleteCacheClusterResponse- <$> x .@? "CacheCluster"+-- | The response status code.+dccrsStatus :: Lens' DeleteCacheClusterResponse Int+dccrsStatus = lens _dccrsStatus (\ s a -> s{_dccrsStatus = a});
gen/Network/AWS/ElastiCache/DeleteCacheParameterGroup.hs view
@@ -1,97 +1,104 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteCacheParameterGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteCacheParameterGroup/ action deletes the specified cache parameter--- group. You cannot delete a cache parameter group if it is associated with any--- cache clusters.+-- The /DeleteCacheParameterGroup/ action deletes the specified cache+-- parameter group. You cannot delete a cache parameter group if it is+-- associated with any cache clusters. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheParameterGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheParameterGroup.html AWS API Reference> for DeleteCacheParameterGroup. module Network.AWS.ElastiCache.DeleteCacheParameterGroup (- -- * Request- DeleteCacheParameterGroup- -- ** Request constructor- , deleteCacheParameterGroup- -- ** Request lenses- , dcpg1CacheParameterGroupName+ -- * Creating a Request+ deleteCacheParameterGroup+ , DeleteCacheParameterGroup+ -- * Request Lenses+ , dCacheParameterGroupName - -- * Response- , DeleteCacheParameterGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteCacheParameterGroupResponse+ , DeleteCacheParameterGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--newtype DeleteCacheParameterGroup = DeleteCacheParameterGroup- { _dcpg1CacheParameterGroupName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeleteCacheParameterGroup' constructor.+-- | Represents the input of a /DeleteCacheParameterGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteCacheParameterGroup' smart constructor.+newtype DeleteCacheParameterGroup = DeleteCacheParameterGroup'+ { _dCacheParameterGroupName :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteCacheParameterGroup' with the minimum fields required to make a request. ----- * 'dcpg1CacheParameterGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteCacheParameterGroup :: Text -- ^ 'dcpg1CacheParameterGroupName'- -> DeleteCacheParameterGroup-deleteCacheParameterGroup p1 = DeleteCacheParameterGroup- { _dcpg1CacheParameterGroupName = p1+-- * 'dCacheParameterGroupName'+deleteCacheParameterGroup+ :: Text -- ^ 'dCacheParameterGroupName'+ -> DeleteCacheParameterGroup+deleteCacheParameterGroup pCacheParameterGroupName_ =+ DeleteCacheParameterGroup'+ { _dCacheParameterGroupName = pCacheParameterGroupName_ } -- | The name of the cache parameter group to delete. -- -- The specified cache security group must not be associated with any cache -- clusters.-dcpg1CacheParameterGroupName :: Lens' DeleteCacheParameterGroup Text-dcpg1CacheParameterGroupName =- lens _dcpg1CacheParameterGroupName- (\s a -> s { _dcpg1CacheParameterGroupName = a })+dCacheParameterGroupName :: Lens' DeleteCacheParameterGroup Text+dCacheParameterGroupName = lens _dCacheParameterGroupName (\ s a -> s{_dCacheParameterGroupName = a}); -data DeleteCacheParameterGroupResponse = DeleteCacheParameterGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteCacheParameterGroup where+ type Sv DeleteCacheParameterGroup = ElastiCache+ type Rs DeleteCacheParameterGroup =+ DeleteCacheParameterGroupResponse+ request = postQuery+ response+ = receiveNull DeleteCacheParameterGroupResponse' --- | 'DeleteCacheParameterGroupResponse' constructor.-deleteCacheParameterGroupResponse :: DeleteCacheParameterGroupResponse-deleteCacheParameterGroupResponse = DeleteCacheParameterGroupResponse+instance ToHeaders DeleteCacheParameterGroup where+ toHeaders = const mempty instance ToPath DeleteCacheParameterGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteCacheParameterGroup where- toQuery DeleteCacheParameterGroup{..} = mconcat- [ "CacheParameterGroupName" =? _dcpg1CacheParameterGroupName- ]--instance ToHeaders DeleteCacheParameterGroup+ toQuery DeleteCacheParameterGroup'{..}+ = mconcat+ ["Action" =:+ ("DeleteCacheParameterGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheParameterGroupName" =:+ _dCacheParameterGroupName] -instance AWSRequest DeleteCacheParameterGroup where- type Sv DeleteCacheParameterGroup = ElastiCache- type Rs DeleteCacheParameterGroup = DeleteCacheParameterGroupResponse+-- | /See:/ 'deleteCacheParameterGroupResponse' smart constructor.+data DeleteCacheParameterGroupResponse =+ DeleteCacheParameterGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteCacheParameterGroup"- response = nullResponse DeleteCacheParameterGroupResponse+-- | Creates a value of 'DeleteCacheParameterGroupResponse' with the minimum fields required to make a request.+--+deleteCacheParameterGroupResponse+ :: DeleteCacheParameterGroupResponse+deleteCacheParameterGroupResponse = DeleteCacheParameterGroupResponse'
gen/Network/AWS/ElastiCache/DeleteCacheSecurityGroup.hs view
@@ -1,97 +1,104 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteCacheSecurityGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteCacheSecurityGroup/ action deletes a cache security group.+-- The /DeleteCacheSecurityGroup/ action deletes a cache security group. ----- You cannot delete a cache security group if it is associated with any cache--- clusters.+-- You cannot delete a cache security group if it is associated with any+-- cache clusters. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheSecurityGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheSecurityGroup.html AWS API Reference> for DeleteCacheSecurityGroup. module Network.AWS.ElastiCache.DeleteCacheSecurityGroup (- -- * Request- DeleteCacheSecurityGroup- -- ** Request constructor- , deleteCacheSecurityGroup- -- ** Request lenses+ -- * Creating a Request+ deleteCacheSecurityGroup+ , DeleteCacheSecurityGroup+ -- * Request Lenses , dcsgCacheSecurityGroupName - -- * Response- , DeleteCacheSecurityGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteCacheSecurityGroupResponse+ , DeleteCacheSecurityGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -newtype DeleteCacheSecurityGroup = DeleteCacheSecurityGroup+-- | Represents the input of a /DeleteCacheSecurityGroup/ action.+--+-- /See:/ 'deleteCacheSecurityGroup' smart constructor.+newtype DeleteCacheSecurityGroup = DeleteCacheSecurityGroup' { _dcsgCacheSecurityGroupName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteCacheSecurityGroup' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteCacheSecurityGroup' with the minimum fields required to make a request. ----- * 'dcsgCacheSecurityGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteCacheSecurityGroup :: Text -- ^ 'dcsgCacheSecurityGroupName'- -> DeleteCacheSecurityGroup-deleteCacheSecurityGroup p1 = DeleteCacheSecurityGroup- { _dcsgCacheSecurityGroupName = p1+-- * 'dcsgCacheSecurityGroupName'+deleteCacheSecurityGroup+ :: Text -- ^ 'dcsgCacheSecurityGroupName'+ -> DeleteCacheSecurityGroup+deleteCacheSecurityGroup pCacheSecurityGroupName_ =+ DeleteCacheSecurityGroup'+ { _dcsgCacheSecurityGroupName = pCacheSecurityGroupName_ } -- | The name of the cache security group to delete. -- -- You cannot delete the default security group. dcsgCacheSecurityGroupName :: Lens' DeleteCacheSecurityGroup Text-dcsgCacheSecurityGroupName =- lens _dcsgCacheSecurityGroupName- (\s a -> s { _dcsgCacheSecurityGroupName = a })+dcsgCacheSecurityGroupName = lens _dcsgCacheSecurityGroupName (\ s a -> s{_dcsgCacheSecurityGroupName = a}); -data DeleteCacheSecurityGroupResponse = DeleteCacheSecurityGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteCacheSecurityGroup where+ type Sv DeleteCacheSecurityGroup = ElastiCache+ type Rs DeleteCacheSecurityGroup =+ DeleteCacheSecurityGroupResponse+ request = postQuery+ response+ = receiveNull DeleteCacheSecurityGroupResponse' --- | 'DeleteCacheSecurityGroupResponse' constructor.-deleteCacheSecurityGroupResponse :: DeleteCacheSecurityGroupResponse-deleteCacheSecurityGroupResponse = DeleteCacheSecurityGroupResponse+instance ToHeaders DeleteCacheSecurityGroup where+ toHeaders = const mempty instance ToPath DeleteCacheSecurityGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteCacheSecurityGroup where- toQuery DeleteCacheSecurityGroup{..} = mconcat- [ "CacheSecurityGroupName" =? _dcsgCacheSecurityGroupName- ]--instance ToHeaders DeleteCacheSecurityGroup+ toQuery DeleteCacheSecurityGroup'{..}+ = mconcat+ ["Action" =:+ ("DeleteCacheSecurityGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSecurityGroupName" =:+ _dcsgCacheSecurityGroupName] -instance AWSRequest DeleteCacheSecurityGroup where- type Sv DeleteCacheSecurityGroup = ElastiCache- type Rs DeleteCacheSecurityGroup = DeleteCacheSecurityGroupResponse+-- | /See:/ 'deleteCacheSecurityGroupResponse' smart constructor.+data DeleteCacheSecurityGroupResponse =+ DeleteCacheSecurityGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteCacheSecurityGroup"- response = nullResponse DeleteCacheSecurityGroupResponse+-- | Creates a value of 'DeleteCacheSecurityGroupResponse' with the minimum fields required to make a request.+--+deleteCacheSecurityGroupResponse+ :: DeleteCacheSecurityGroupResponse+deleteCacheSecurityGroupResponse = DeleteCacheSecurityGroupResponse'
gen/Network/AWS/ElastiCache/DeleteCacheSubnetGroup.hs view
@@ -1,98 +1,104 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteCacheSubnetGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteCacheSubnetGroup/ action deletes a cache subnet group.+-- The /DeleteCacheSubnetGroup/ action deletes a cache subnet group. ----- You cannot delete a cache subnet group if it is associated with any cache--- clusters.+-- You cannot delete a cache subnet group if it is associated with any+-- cache clusters. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheSubnetGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteCacheSubnetGroup.html AWS API Reference> for DeleteCacheSubnetGroup. module Network.AWS.ElastiCache.DeleteCacheSubnetGroup (- -- * Request- DeleteCacheSubnetGroup- -- ** Request constructor- , deleteCacheSubnetGroup- -- ** Request lenses- , dcsg1CacheSubnetGroupName+ -- * Creating a Request+ deleteCacheSubnetGroup+ , DeleteCacheSubnetGroup+ -- * Request Lenses+ , dCacheSubnetGroupName - -- * Response- , DeleteCacheSubnetGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteCacheSubnetGroupResponse+ , DeleteCacheSubnetGroupResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--newtype DeleteCacheSubnetGroup = DeleteCacheSubnetGroup- { _dcsg1CacheSubnetGroupName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeleteCacheSubnetGroup' constructor.+-- | Represents the input of a /DeleteCacheSubnetGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteCacheSubnetGroup' smart constructor.+newtype DeleteCacheSubnetGroup = DeleteCacheSubnetGroup'+ { _dCacheSubnetGroupName :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteCacheSubnetGroup' with the minimum fields required to make a request. ----- * 'dcsg1CacheSubnetGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteCacheSubnetGroup :: Text -- ^ 'dcsg1CacheSubnetGroupName'- -> DeleteCacheSubnetGroup-deleteCacheSubnetGroup p1 = DeleteCacheSubnetGroup- { _dcsg1CacheSubnetGroupName = p1+-- * 'dCacheSubnetGroupName'+deleteCacheSubnetGroup+ :: Text -- ^ 'dCacheSubnetGroupName'+ -> DeleteCacheSubnetGroup+deleteCacheSubnetGroup pCacheSubnetGroupName_ =+ DeleteCacheSubnetGroup'+ { _dCacheSubnetGroupName = pCacheSubnetGroupName_ } -- | The name of the cache subnet group to delete. -- -- Constraints: Must contain no more than 255 alphanumeric characters or -- hyphens.-dcsg1CacheSubnetGroupName :: Lens' DeleteCacheSubnetGroup Text-dcsg1CacheSubnetGroupName =- lens _dcsg1CacheSubnetGroupName- (\s a -> s { _dcsg1CacheSubnetGroupName = a })+dCacheSubnetGroupName :: Lens' DeleteCacheSubnetGroup Text+dCacheSubnetGroupName = lens _dCacheSubnetGroupName (\ s a -> s{_dCacheSubnetGroupName = a}); -data DeleteCacheSubnetGroupResponse = DeleteCacheSubnetGroupResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteCacheSubnetGroup where+ type Sv DeleteCacheSubnetGroup = ElastiCache+ type Rs DeleteCacheSubnetGroup =+ DeleteCacheSubnetGroupResponse+ request = postQuery+ response+ = receiveNull DeleteCacheSubnetGroupResponse' --- | 'DeleteCacheSubnetGroupResponse' constructor.-deleteCacheSubnetGroupResponse :: DeleteCacheSubnetGroupResponse-deleteCacheSubnetGroupResponse = DeleteCacheSubnetGroupResponse+instance ToHeaders DeleteCacheSubnetGroup where+ toHeaders = const mempty instance ToPath DeleteCacheSubnetGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteCacheSubnetGroup where- toQuery DeleteCacheSubnetGroup{..} = mconcat- [ "CacheSubnetGroupName" =? _dcsg1CacheSubnetGroupName- ]--instance ToHeaders DeleteCacheSubnetGroup+ toQuery DeleteCacheSubnetGroup'{..}+ = mconcat+ ["Action" =:+ ("DeleteCacheSubnetGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSubnetGroupName" =: _dCacheSubnetGroupName] -instance AWSRequest DeleteCacheSubnetGroup where- type Sv DeleteCacheSubnetGroup = ElastiCache- type Rs DeleteCacheSubnetGroup = DeleteCacheSubnetGroupResponse+-- | /See:/ 'deleteCacheSubnetGroupResponse' smart constructor.+data DeleteCacheSubnetGroupResponse =+ DeleteCacheSubnetGroupResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteCacheSubnetGroup"- response = nullResponse DeleteCacheSubnetGroupResponse+-- | Creates a value of 'DeleteCacheSubnetGroupResponse' with the minimum fields required to make a request.+--+deleteCacheSubnetGroupResponse+ :: DeleteCacheSubnetGroupResponse+deleteCacheSubnetGroupResponse = DeleteCacheSubnetGroupResponse'
gen/Network/AWS/ElastiCache/DeleteReplicationGroup.hs view
@@ -1,144 +1,157 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteReplicationGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteReplicationGroup/ action deletes an existing replication group. By--- default, this action deletes the entire replication group, including the--- primary cluster and all of the read replicas. You can optionally delete only--- the read replicas, while retaining the primary cluster.+-- The /DeleteReplicationGroup/ action deletes an existing replication+-- group. By default, this action deletes the entire replication group,+-- including the primary cluster and all of the read replicas. You can+-- optionally delete only the read replicas, while retaining the primary+-- cluster. ----- When you receive a successful response from this action, Amazon ElastiCache--- immediately begins deleting the selected resources; you cannot cancel or--- revert this action.+-- When you receive a successful response from this action, Amazon+-- ElastiCache immediately begins deleting the selected resources; you+-- cannot cancel or revert this action. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteReplicationGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteReplicationGroup.html AWS API Reference> for DeleteReplicationGroup. module Network.AWS.ElastiCache.DeleteReplicationGroup (- -- * Request- DeleteReplicationGroup- -- ** Request constructor- , deleteReplicationGroup- -- ** Request lenses+ -- * Creating a Request+ deleteReplicationGroup+ , DeleteReplicationGroup+ -- * Request Lenses , drgFinalSnapshotIdentifier- , drgReplicationGroupId , drgRetainPrimaryCluster+ , drgReplicationGroupId - -- * Response- , DeleteReplicationGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteReplicationGroupResponse- -- ** Response lenses- , drgrReplicationGroup+ , DeleteReplicationGroupResponse+ -- * Response Lenses+ , delrsReplicationGroup+ , delrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DeleteReplicationGroup = DeleteReplicationGroup- { _drgFinalSnapshotIdentifier :: Maybe Text- , _drgReplicationGroupId :: Text- , _drgRetainPrimaryCluster :: Maybe Bool- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeleteReplicationGroup' constructor.+-- | Represents the input of a /DeleteReplicationGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteReplicationGroup' smart constructor.+data DeleteReplicationGroup = DeleteReplicationGroup'+ { _drgFinalSnapshotIdentifier :: !(Maybe Text)+ , _drgRetainPrimaryCluster :: !(Maybe Bool)+ , _drgReplicationGroupId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteReplicationGroup' with the minimum fields required to make a request. ----- * 'drgFinalSnapshotIdentifier' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drgReplicationGroupId' @::@ 'Text'+-- * 'drgFinalSnapshotIdentifier' ----- * 'drgRetainPrimaryCluster' @::@ 'Maybe' 'Bool'+-- * 'drgRetainPrimaryCluster' ---deleteReplicationGroup :: Text -- ^ 'drgReplicationGroupId'- -> DeleteReplicationGroup-deleteReplicationGroup p1 = DeleteReplicationGroup- { _drgReplicationGroupId = p1- , _drgRetainPrimaryCluster = Nothing- , _drgFinalSnapshotIdentifier = Nothing+-- * 'drgReplicationGroupId'+deleteReplicationGroup+ :: Text -- ^ 'drgReplicationGroupId'+ -> DeleteReplicationGroup+deleteReplicationGroup pReplicationGroupId_ =+ DeleteReplicationGroup'+ { _drgFinalSnapshotIdentifier = Nothing+ , _drgRetainPrimaryCluster = Nothing+ , _drgReplicationGroupId = pReplicationGroupId_ } --- | The name of a final node group snapshot. ElastiCache creates the snapshot--- from the primary node in the cluster, rather than one of the replicas; this--- is to ensure that it captures the freshest data. After the final snapshot is--- taken, the cluster is immediately deleted.+-- | The name of a final node group snapshot. ElastiCache creates the+-- snapshot from the primary node in the cluster, rather than one of the+-- replicas; this is to ensure that it captures the freshest data. After+-- the final snapshot is taken, the cluster is immediately deleted. drgFinalSnapshotIdentifier :: Lens' DeleteReplicationGroup (Maybe Text)-drgFinalSnapshotIdentifier =- lens _drgFinalSnapshotIdentifier- (\s a -> s { _drgFinalSnapshotIdentifier = a })+drgFinalSnapshotIdentifier = lens _drgFinalSnapshotIdentifier (\ s a -> s{_drgFinalSnapshotIdentifier = a}); +-- | If set to /true/, all of the read replicas will be deleted, but the+-- primary node will be retained.+drgRetainPrimaryCluster :: Lens' DeleteReplicationGroup (Maybe Bool)+drgRetainPrimaryCluster = lens _drgRetainPrimaryCluster (\ s a -> s{_drgRetainPrimaryCluster = a});+ -- | The identifier for the cluster to be deleted. This parameter is not case -- sensitive. drgReplicationGroupId :: Lens' DeleteReplicationGroup Text-drgReplicationGroupId =- lens _drgReplicationGroupId (\s a -> s { _drgReplicationGroupId = a })---- | If set to /true/, all of the read replicas will be deleted, but the primary--- node will be retained.-drgRetainPrimaryCluster :: Lens' DeleteReplicationGroup (Maybe Bool)-drgRetainPrimaryCluster =- lens _drgRetainPrimaryCluster (\s a -> s { _drgRetainPrimaryCluster = a })--newtype DeleteReplicationGroupResponse = DeleteReplicationGroupResponse- { _drgrReplicationGroup :: Maybe ReplicationGroup- } deriving (Eq, Read, Show)+drgReplicationGroupId = lens _drgReplicationGroupId (\ s a -> s{_drgReplicationGroupId = a}); --- | 'DeleteReplicationGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'drgrReplicationGroup' @::@ 'Maybe' 'ReplicationGroup'----deleteReplicationGroupResponse :: DeleteReplicationGroupResponse-deleteReplicationGroupResponse = DeleteReplicationGroupResponse- { _drgrReplicationGroup = Nothing- }+instance AWSRequest DeleteReplicationGroup where+ type Sv DeleteReplicationGroup = ElastiCache+ type Rs DeleteReplicationGroup =+ DeleteReplicationGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteReplicationGroupResult"+ (\ s h x ->+ DeleteReplicationGroupResponse' <$>+ (x .@? "ReplicationGroup") <*> (pure (fromEnum s))) -drgrReplicationGroup :: Lens' DeleteReplicationGroupResponse (Maybe ReplicationGroup)-drgrReplicationGroup =- lens _drgrReplicationGroup (\s a -> s { _drgrReplicationGroup = a })+instance ToHeaders DeleteReplicationGroup where+ toHeaders = const mempty instance ToPath DeleteReplicationGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteReplicationGroup where- toQuery DeleteReplicationGroup{..} = mconcat- [ "FinalSnapshotIdentifier" =? _drgFinalSnapshotIdentifier- , "ReplicationGroupId" =? _drgReplicationGroupId- , "RetainPrimaryCluster" =? _drgRetainPrimaryCluster- ]+ toQuery DeleteReplicationGroup'{..}+ = mconcat+ ["Action" =:+ ("DeleteReplicationGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "FinalSnapshotIdentifier" =:+ _drgFinalSnapshotIdentifier,+ "RetainPrimaryCluster" =: _drgRetainPrimaryCluster,+ "ReplicationGroupId" =: _drgReplicationGroupId] -instance ToHeaders DeleteReplicationGroup+-- | /See:/ 'deleteReplicationGroupResponse' smart constructor.+data DeleteReplicationGroupResponse = DeleteReplicationGroupResponse'+ { _delrsReplicationGroup :: !(Maybe ReplicationGroup)+ , _delrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteReplicationGroup where- type Sv DeleteReplicationGroup = ElastiCache- type Rs DeleteReplicationGroup = DeleteReplicationGroupResponse+-- | Creates a value of 'DeleteReplicationGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'delrsReplicationGroup'+--+-- * 'delrsStatus'+deleteReplicationGroupResponse+ :: Int -- ^ 'delrsStatus'+ -> DeleteReplicationGroupResponse+deleteReplicationGroupResponse pStatus_ =+ DeleteReplicationGroupResponse'+ { _delrsReplicationGroup = Nothing+ , _delrsStatus = pStatus_+ } - request = post "DeleteReplicationGroup"- response = xmlResponse+-- | Undocumented member.+delrsReplicationGroup :: Lens' DeleteReplicationGroupResponse (Maybe ReplicationGroup)+delrsReplicationGroup = lens _delrsReplicationGroup (\ s a -> s{_delrsReplicationGroup = a}); -instance FromXML DeleteReplicationGroupResponse where- parseXML = withElement "DeleteReplicationGroupResult" $ \x -> DeleteReplicationGroupResponse- <$> x .@? "ReplicationGroup"+-- | The response status code.+delrsStatus :: Lens' DeleteReplicationGroupResponse Int+delrsStatus = lens _delrsStatus (\ s a -> s{_delrsStatus = a});
gen/Network/AWS/ElastiCache/DeleteSnapshot.hs view
@@ -1,109 +1,123 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DeleteSnapshot--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DeleteSnapshot/ action deletes an existing snapshot. When you receive a--- successful response from this action, ElastiCache immediately begins deleting--- the snapshot; you cannot cancel or revert this action.+-- The /DeleteSnapshot/ action deletes an existing snapshot. When you+-- receive a successful response from this action, ElastiCache immediately+-- begins deleting the snapshot; you cannot cancel or revert this action. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteSnapshot.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DeleteSnapshot.html AWS API Reference> for DeleteSnapshot. module Network.AWS.ElastiCache.DeleteSnapshot (- -- * Request- DeleteSnapshot- -- ** Request constructor- , deleteSnapshot- -- ** Request lenses- , ds1SnapshotName+ -- * Creating a Request+ deleteSnapshot+ , DeleteSnapshot+ -- * Request Lenses+ , dSnapshotName - -- * Response- , DeleteSnapshotResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteSnapshotResponse- -- ** Response lenses- , dsrSnapshot+ , DeleteSnapshotResponse+ -- * Response Lenses+ , dsrsSnapshot+ , dsrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--newtype DeleteSnapshot = DeleteSnapshot- { _ds1SnapshotName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DeleteSnapshot' constructor.+-- | Represents the input of a /DeleteSnapshot/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'deleteSnapshot' smart constructor.+newtype DeleteSnapshot = DeleteSnapshot'+ { _dSnapshotName :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteSnapshot' with the minimum fields required to make a request. ----- * 'ds1SnapshotName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteSnapshot :: Text -- ^ 'ds1SnapshotName'- -> DeleteSnapshot-deleteSnapshot p1 = DeleteSnapshot- { _ds1SnapshotName = p1+-- * 'dSnapshotName'+deleteSnapshot+ :: Text -- ^ 'dSnapshotName'+ -> DeleteSnapshot+deleteSnapshot pSnapshotName_ =+ DeleteSnapshot'+ { _dSnapshotName = pSnapshotName_ } -- | The name of the snapshot to be deleted.-ds1SnapshotName :: Lens' DeleteSnapshot Text-ds1SnapshotName = lens _ds1SnapshotName (\s a -> s { _ds1SnapshotName = a })--newtype DeleteSnapshotResponse = DeleteSnapshotResponse- { _dsrSnapshot :: Maybe Snapshot- } deriving (Eq, Read, Show)+dSnapshotName :: Lens' DeleteSnapshot Text+dSnapshotName = lens _dSnapshotName (\ s a -> s{_dSnapshotName = a}); --- | 'DeleteSnapshotResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dsrSnapshot' @::@ 'Maybe' 'Snapshot'----deleteSnapshotResponse :: DeleteSnapshotResponse-deleteSnapshotResponse = DeleteSnapshotResponse- { _dsrSnapshot = Nothing- }+instance AWSRequest DeleteSnapshot where+ type Sv DeleteSnapshot = ElastiCache+ type Rs DeleteSnapshot = DeleteSnapshotResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteSnapshotResult"+ (\ s h x ->+ DeleteSnapshotResponse' <$>+ (x .@? "Snapshot") <*> (pure (fromEnum s))) -dsrSnapshot :: Lens' DeleteSnapshotResponse (Maybe Snapshot)-dsrSnapshot = lens _dsrSnapshot (\s a -> s { _dsrSnapshot = a })+instance ToHeaders DeleteSnapshot where+ toHeaders = const mempty instance ToPath DeleteSnapshot where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteSnapshot where- toQuery DeleteSnapshot{..} = mconcat- [ "SnapshotName" =? _ds1SnapshotName- ]+ toQuery DeleteSnapshot'{..}+ = mconcat+ ["Action" =: ("DeleteSnapshot" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "SnapshotName" =: _dSnapshotName] -instance ToHeaders DeleteSnapshot+-- | /See:/ 'deleteSnapshotResponse' smart constructor.+data DeleteSnapshotResponse = DeleteSnapshotResponse'+ { _dsrsSnapshot :: !(Maybe Snapshot)+ , _dsrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteSnapshot where- type Sv DeleteSnapshot = ElastiCache- type Rs DeleteSnapshot = DeleteSnapshotResponse+-- | Creates a value of 'DeleteSnapshotResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dsrsSnapshot'+--+-- * 'dsrsStatus'+deleteSnapshotResponse+ :: Int -- ^ 'dsrsStatus'+ -> DeleteSnapshotResponse+deleteSnapshotResponse pStatus_ =+ DeleteSnapshotResponse'+ { _dsrsSnapshot = Nothing+ , _dsrsStatus = pStatus_+ } - request = post "DeleteSnapshot"- response = xmlResponse+-- | Undocumented member.+dsrsSnapshot :: Lens' DeleteSnapshotResponse (Maybe Snapshot)+dsrsSnapshot = lens _dsrsSnapshot (\ s a -> s{_dsrsSnapshot = a}); -instance FromXML DeleteSnapshotResponse where- parseXML = withElement "DeleteSnapshotResult" $ \x -> DeleteSnapshotResponse- <$> x .@? "Snapshot"+-- | The response status code.+dsrsStatus :: Lens' DeleteSnapshotResponse Int+dsrsStatus = lens _dsrsStatus (\ s a -> s{_dsrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheClusters.hs view
@@ -1,190 +1,209 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheClusters--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheClusters/ action returns information about all provisioned--- cache clusters if no cache cluster identifier is specified, or about a--- specific cache cluster if a cache cluster identifier is supplied.+-- The /DescribeCacheClusters/ action returns information about all+-- provisioned cache clusters if no cache cluster identifier is specified,+-- or about a specific cache cluster if a cache cluster identifier is+-- supplied. -- -- By default, abbreviated information about the cache clusters(s) will be--- returned. You can use the optional /ShowDetails/ flag to retrieve detailed--- information about the cache nodes associated with the cache clusters. These--- details include the DNS address and port for the cache node endpoint.+-- returned. You can use the optional /ShowDetails/ flag to retrieve+-- detailed information about the cache nodes associated with the cache+-- clusters. These details include the DNS address and port for the cache+-- node endpoint. ----- If the cluster is in the CREATING state, only cluster level information will--- be displayed until all of the nodes are successfully provisioned.+-- If the cluster is in the CREATING state, only cluster level information+-- will be displayed until all of the nodes are successfully provisioned. ----- If the cluster is in the DELETING state, only cluster level information will--- be displayed.+-- If the cluster is in the DELETING state, only cluster level information+-- will be displayed. ----- If cache nodes are currently being added to the cache cluster, node endpoint--- information and creation time for the additional nodes will not be displayed--- until they are completely provisioned. When the cache cluster state is /available/, the cluster is ready for use.+-- If cache nodes are currently being added to the cache cluster, node+-- endpoint information and creation time for the additional nodes will not+-- be displayed until they are completely provisioned. When the cache+-- cluster state is /available/, the cluster is ready for use. -- -- If cache nodes are currently being removed from the cache cluster, no -- endpoint information for the removed nodes is displayed. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheClusters.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheClusters.html AWS API Reference> for DescribeCacheClusters.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheClusters (- -- * Request- DescribeCacheClusters- -- ** Request constructor- , describeCacheClusters- -- ** Request lenses- , dcc1CacheClusterId- , dcc1Marker- , dcc1MaxRecords- , dcc1ShowCacheNodeInfo+ -- * Creating a Request+ describeCacheClusters+ , DescribeCacheClusters+ -- * Request Lenses+ , dCacheClusterId+ , dMaxRecords+ , dMarker+ , dShowCacheNodeInfo - -- * Response- , DescribeCacheClustersResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheClustersResponse- -- ** Response lenses- , dccrCacheClusters- , dccrMarker+ , DescribeCacheClustersResponse+ -- * Response Lenses+ , drsCacheClusters+ , drsMarker+ , drsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheClusters = DescribeCacheClusters- { _dcc1CacheClusterId :: Maybe Text- , _dcc1Marker :: Maybe Text- , _dcc1MaxRecords :: Maybe Int- , _dcc1ShowCacheNodeInfo :: Maybe Bool- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheClusters' constructor.+-- | Represents the input of a /DescribeCacheClusters/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheClusters' smart constructor.+data DescribeCacheClusters = DescribeCacheClusters'+ { _dCacheClusterId :: !(Maybe Text)+ , _dMaxRecords :: !(Maybe Int)+ , _dMarker :: !(Maybe Text)+ , _dShowCacheNodeInfo :: !(Maybe Bool)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheClusters' with the minimum fields required to make a request. ----- * 'dcc1CacheClusterId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcc1Marker' @::@ 'Maybe' 'Text'+-- * 'dCacheClusterId' ----- * 'dcc1MaxRecords' @::@ 'Maybe' 'Int'+-- * 'dMaxRecords' ----- * 'dcc1ShowCacheNodeInfo' @::@ 'Maybe' 'Bool'+-- * 'dMarker' ---describeCacheClusters :: DescribeCacheClusters-describeCacheClusters = DescribeCacheClusters- { _dcc1CacheClusterId = Nothing- , _dcc1MaxRecords = Nothing- , _dcc1Marker = Nothing- , _dcc1ShowCacheNodeInfo = Nothing+-- * 'dShowCacheNodeInfo'+describeCacheClusters+ :: DescribeCacheClusters+describeCacheClusters =+ DescribeCacheClusters'+ { _dCacheClusterId = Nothing+ , _dMaxRecords = Nothing+ , _dMarker = Nothing+ , _dShowCacheNodeInfo = Nothing } --- | The user-supplied cluster identifier. If this parameter is specified, only--- information about that specific cache cluster is returned. This parameter--- isn't case sensitive.-dcc1CacheClusterId :: Lens' DescribeCacheClusters (Maybe Text)-dcc1CacheClusterId =- lens _dcc1CacheClusterId (\s a -> s { _dcc1CacheClusterId = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcc1Marker :: Lens' DescribeCacheClusters (Maybe Text)-dcc1Marker = lens _dcc1Marker (\s a -> s { _dcc1Marker = a })+-- | The user-supplied cluster identifier. If this parameter is specified,+-- only information about that specific cache cluster is returned. This+-- parameter isn\'t case sensitive.+dCacheClusterId :: Lens' DescribeCacheClusters (Maybe Text)+dCacheClusterId = lens _dCacheClusterId (\ s a -> s{_dCacheClusterId = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100.-dcc1MaxRecords :: Lens' DescribeCacheClusters (Maybe Int)-dcc1MaxRecords = lens _dcc1MaxRecords (\s a -> s { _dcc1MaxRecords = a })+dMaxRecords :: Lens' DescribeCacheClusters (Maybe Int)+dMaxRecords = lens _dMaxRecords (\ s a -> s{_dMaxRecords = a}); --- | An optional flag that can be included in the DescribeCacheCluster request to--- retrieve information about the individual cache nodes.-dcc1ShowCacheNodeInfo :: Lens' DescribeCacheClusters (Maybe Bool)-dcc1ShowCacheNodeInfo =- lens _dcc1ShowCacheNodeInfo (\s a -> s { _dcc1ShowCacheNodeInfo = a })+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dMarker :: Lens' DescribeCacheClusters (Maybe Text)+dMarker = lens _dMarker (\ s a -> s{_dMarker = a}); -data DescribeCacheClustersResponse = DescribeCacheClustersResponse- { _dccrCacheClusters :: List "member" CacheCluster- , _dccrMarker :: Maybe Text- } deriving (Eq, Read, Show)+-- | An optional flag that can be included in the DescribeCacheCluster+-- request to retrieve information about the individual cache nodes.+dShowCacheNodeInfo :: Lens' DescribeCacheClusters (Maybe Bool)+dShowCacheNodeInfo = lens _dShowCacheNodeInfo (\ s a -> s{_dShowCacheNodeInfo = a}); --- | 'DescribeCacheClustersResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dccrCacheClusters' @::@ ['CacheCluster']------ * 'dccrMarker' @::@ 'Maybe' 'Text'----describeCacheClustersResponse :: DescribeCacheClustersResponse-describeCacheClustersResponse = DescribeCacheClustersResponse- { _dccrMarker = Nothing- , _dccrCacheClusters = mempty- }+instance AWSPager DescribeCacheClusters where+ page rq rs+ | stop (rs ^. drsMarker) = Nothing+ | stop (rs ^. drsCacheClusters) = Nothing+ | otherwise = Just $ rq & dMarker .~ rs ^. drsMarker --- | A list of cache clusters. Each item in the list contains detailed information--- about one cache cluster.-dccrCacheClusters :: Lens' DescribeCacheClustersResponse [CacheCluster]-dccrCacheClusters =- lens _dccrCacheClusters (\s a -> s { _dccrCacheClusters = a })- . _List+instance AWSRequest DescribeCacheClusters where+ type Sv DescribeCacheClusters = ElastiCache+ type Rs DescribeCacheClusters =+ DescribeCacheClustersResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeCacheClustersResult"+ (\ s h x ->+ DescribeCacheClustersResponse' <$>+ (x .@? "CacheClusters" .!@ mempty >>=+ may (parseXMLList "CacheCluster"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | Provides an identifier to allow retrieval of paginated results.-dccrMarker :: Lens' DescribeCacheClustersResponse (Maybe Text)-dccrMarker = lens _dccrMarker (\s a -> s { _dccrMarker = a })+instance ToHeaders DescribeCacheClusters where+ toHeaders = const mempty instance ToPath DescribeCacheClusters where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheClusters where- toQuery DescribeCacheClusters{..} = mconcat- [ "CacheClusterId" =? _dcc1CacheClusterId- , "Marker" =? _dcc1Marker- , "MaxRecords" =? _dcc1MaxRecords- , "ShowCacheNodeInfo" =? _dcc1ShowCacheNodeInfo- ]+ toQuery DescribeCacheClusters'{..}+ = mconcat+ ["Action" =: ("DescribeCacheClusters" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheClusterId" =: _dCacheClusterId,+ "MaxRecords" =: _dMaxRecords, "Marker" =: _dMarker,+ "ShowCacheNodeInfo" =: _dShowCacheNodeInfo] -instance ToHeaders DescribeCacheClusters+-- | Represents the output of a /DescribeCacheClusters/ action.+--+-- /See:/ 'describeCacheClustersResponse' smart constructor.+data DescribeCacheClustersResponse = DescribeCacheClustersResponse'+ { _drsCacheClusters :: !(Maybe [CacheCluster])+ , _drsMarker :: !(Maybe Text)+ , _drsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheClusters where- type Sv DescribeCacheClusters = ElastiCache- type Rs DescribeCacheClusters = DescribeCacheClustersResponse+-- | Creates a value of 'DescribeCacheClustersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drsCacheClusters'+--+-- * 'drsMarker'+--+-- * 'drsStatus'+describeCacheClustersResponse+ :: Int -- ^ 'drsStatus'+ -> DescribeCacheClustersResponse+describeCacheClustersResponse pStatus_ =+ DescribeCacheClustersResponse'+ { _drsCacheClusters = Nothing+ , _drsMarker = Nothing+ , _drsStatus = pStatus_+ } - request = post "DescribeCacheClusters"- response = xmlResponse+-- | A list of cache clusters. Each item in the list contains detailed+-- information about one cache cluster.+drsCacheClusters :: Lens' DescribeCacheClustersResponse [CacheCluster]+drsCacheClusters = lens _drsCacheClusters (\ s a -> s{_drsCacheClusters = a}) . _Default . _Coerce; -instance FromXML DescribeCacheClustersResponse where- parseXML = withElement "DescribeCacheClustersResult" $ \x -> DescribeCacheClustersResponse- <$> x .@? "CacheClusters" .!@ mempty- <*> x .@? "Marker"+-- | Provides an identifier to allow retrieval of paginated results.+drsMarker :: Lens' DescribeCacheClustersResponse (Maybe Text)+drsMarker = lens _drsMarker (\ s a -> s{_drsMarker = a}); -instance AWSPager DescribeCacheClusters where- page rq rs- | stop (rs ^. dccrMarker) = Nothing- | otherwise = (\x -> rq & dcc1Marker ?~ x)- <$> (rs ^. dccrMarker)+-- | The response status code.+drsStatus :: Lens' DescribeCacheClustersResponse Int+drsStatus = lens _drsStatus (\ s a -> s{_drsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheEngineVersions.hs view
@@ -1,198 +1,219 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheEngineVersions--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheEngineVersions/ action returns a list of the available cache--- engines and their versions.+-- The /DescribeCacheEngineVersions/ action returns a list of the available+-- cache engines and their versions. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheEngineVersions.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheEngineVersions.html AWS API Reference> for DescribeCacheEngineVersions.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheEngineVersions (- -- * Request- DescribeCacheEngineVersions- -- ** Request constructor- , describeCacheEngineVersions- -- ** Request lenses+ -- * Creating a Request+ describeCacheEngineVersions+ , DescribeCacheEngineVersions+ -- * Request Lenses , dcevCacheParameterGroupFamily+ , dcevEngineVersion , dcevDefaultOnly , dcevEngine- , dcevEngineVersion- , dcevMarker , dcevMaxRecords+ , dcevMarker - -- * Response- , DescribeCacheEngineVersionsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheEngineVersionsResponse- -- ** Response lenses- , dcevrCacheEngineVersions- , dcevrMarker+ , DescribeCacheEngineVersionsResponse+ -- * Response Lenses+ , dcevrsCacheEngineVersions+ , dcevrsMarker+ , dcevrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheEngineVersions = DescribeCacheEngineVersions- { _dcevCacheParameterGroupFamily :: Maybe Text- , _dcevDefaultOnly :: Maybe Bool- , _dcevEngine :: Maybe Text- , _dcevEngineVersion :: Maybe Text- , _dcevMarker :: Maybe Text- , _dcevMaxRecords :: Maybe Int- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheEngineVersions' constructor.+-- | Represents the input of a /DescribeCacheEngineVersions/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheEngineVersions' smart constructor.+data DescribeCacheEngineVersions = DescribeCacheEngineVersions'+ { _dcevCacheParameterGroupFamily :: !(Maybe Text)+ , _dcevEngineVersion :: !(Maybe Text)+ , _dcevDefaultOnly :: !(Maybe Bool)+ , _dcevEngine :: !(Maybe Text)+ , _dcevMaxRecords :: !(Maybe Int)+ , _dcevMarker :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheEngineVersions' with the minimum fields required to make a request. ----- * 'dcevCacheParameterGroupFamily' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcevDefaultOnly' @::@ 'Maybe' 'Bool'+-- * 'dcevCacheParameterGroupFamily' ----- * 'dcevEngine' @::@ 'Maybe' 'Text'+-- * 'dcevEngineVersion' ----- * 'dcevEngineVersion' @::@ 'Maybe' 'Text'+-- * 'dcevDefaultOnly' ----- * 'dcevMarker' @::@ 'Maybe' 'Text'+-- * 'dcevEngine' ----- * 'dcevMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dcevMaxRecords' ---describeCacheEngineVersions :: DescribeCacheEngineVersions-describeCacheEngineVersions = DescribeCacheEngineVersions- { _dcevEngine = Nothing- , _dcevEngineVersion = Nothing- , _dcevCacheParameterGroupFamily = Nothing- , _dcevMaxRecords = Nothing- , _dcevMarker = Nothing- , _dcevDefaultOnly = Nothing+-- * 'dcevMarker'+describeCacheEngineVersions+ :: DescribeCacheEngineVersions+describeCacheEngineVersions =+ DescribeCacheEngineVersions'+ { _dcevCacheParameterGroupFamily = Nothing+ , _dcevEngineVersion = Nothing+ , _dcevDefaultOnly = Nothing+ , _dcevEngine = Nothing+ , _dcevMaxRecords = Nothing+ , _dcevMarker = Nothing } --- | The name of a specific cache parameter group family to return details for.+-- | The name of a specific cache parameter group family to return details+-- for. -- -- Constraints: ----- Must be 1 to 255 alphanumeric characters First character must be a letter Cannot end with a hyphen or contain two consecutive hyphens---+-- - Must be 1 to 255 alphanumeric characters+-- - First character must be a letter+-- - Cannot end with a hyphen or contain two consecutive hyphens dcevCacheParameterGroupFamily :: Lens' DescribeCacheEngineVersions (Maybe Text)-dcevCacheParameterGroupFamily =- lens _dcevCacheParameterGroupFamily- (\s a -> s { _dcevCacheParameterGroupFamily = a })---- | If /true/, specifies that only the default version of the specified engine or--- engine and major version combination is to be returned.-dcevDefaultOnly :: Lens' DescribeCacheEngineVersions (Maybe Bool)-dcevDefaultOnly = lens _dcevDefaultOnly (\s a -> s { _dcevDefaultOnly = a })---- | The cache engine to return. Valid values: 'memcached' | 'redis'-dcevEngine :: Lens' DescribeCacheEngineVersions (Maybe Text)-dcevEngine = lens _dcevEngine (\s a -> s { _dcevEngine = a })+dcevCacheParameterGroupFamily = lens _dcevCacheParameterGroupFamily (\ s a -> s{_dcevCacheParameterGroupFamily = a}); -- | The cache engine version to return. -- -- Example: '1.4.14' dcevEngineVersion :: Lens' DescribeCacheEngineVersions (Maybe Text)-dcevEngineVersion =- lens _dcevEngineVersion (\s a -> s { _dcevEngineVersion = a })+dcevEngineVersion = lens _dcevEngineVersion (\ s a -> s{_dcevEngineVersion = a}); --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcevMarker :: Lens' DescribeCacheEngineVersions (Maybe Text)-dcevMarker = lens _dcevMarker (\s a -> s { _dcevMarker = a })+-- | If /true/, specifies that only the default version of the specified+-- engine or engine and major version combination is to be returned.+dcevDefaultOnly :: Lens' DescribeCacheEngineVersions (Maybe Bool)+dcevDefaultOnly = lens _dcevDefaultOnly (\ s a -> s{_dcevDefaultOnly = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The cache engine to return. Valid values: 'memcached' | 'redis'+dcevEngine :: Lens' DescribeCacheEngineVersions (Maybe Text)+dcevEngine = lens _dcevEngine (\ s a -> s{_dcevEngine = a});++-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. dcevMaxRecords :: Lens' DescribeCacheEngineVersions (Maybe Int)-dcevMaxRecords = lens _dcevMaxRecords (\s a -> s { _dcevMaxRecords = a })+dcevMaxRecords = lens _dcevMaxRecords (\ s a -> s{_dcevMaxRecords = a}); -data DescribeCacheEngineVersionsResponse = DescribeCacheEngineVersionsResponse- { _dcevrCacheEngineVersions :: List "member" CacheEngineVersion- , _dcevrMarker :: Maybe Text- } deriving (Eq, Read, Show)+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dcevMarker :: Lens' DescribeCacheEngineVersions (Maybe Text)+dcevMarker = lens _dcevMarker (\ s a -> s{_dcevMarker = a}); --- | 'DescribeCacheEngineVersionsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcevrCacheEngineVersions' @::@ ['CacheEngineVersion']------ * 'dcevrMarker' @::@ 'Maybe' 'Text'----describeCacheEngineVersionsResponse :: DescribeCacheEngineVersionsResponse-describeCacheEngineVersionsResponse = DescribeCacheEngineVersionsResponse- { _dcevrMarker = Nothing- , _dcevrCacheEngineVersions = mempty- }+instance AWSPager DescribeCacheEngineVersions where+ page rq rs+ | stop (rs ^. dcevrsMarker) = Nothing+ | stop (rs ^. dcevrsCacheEngineVersions) = Nothing+ | otherwise =+ Just $ rq & dcevMarker .~ rs ^. dcevrsMarker --- | A list of cache engine version details. Each element in the list contains--- detailed information about one cache engine version.-dcevrCacheEngineVersions :: Lens' DescribeCacheEngineVersionsResponse [CacheEngineVersion]-dcevrCacheEngineVersions =- lens _dcevrCacheEngineVersions- (\s a -> s { _dcevrCacheEngineVersions = a })- . _List+instance AWSRequest DescribeCacheEngineVersions where+ type Sv DescribeCacheEngineVersions = ElastiCache+ type Rs DescribeCacheEngineVersions =+ DescribeCacheEngineVersionsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeCacheEngineVersionsResult"+ (\ s h x ->+ DescribeCacheEngineVersionsResponse' <$>+ (x .@? "CacheEngineVersions" .!@ mempty >>=+ may (parseXMLList "CacheEngineVersion"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | Provides an identifier to allow retrieval of paginated results.-dcevrMarker :: Lens' DescribeCacheEngineVersionsResponse (Maybe Text)-dcevrMarker = lens _dcevrMarker (\s a -> s { _dcevrMarker = a })+instance ToHeaders DescribeCacheEngineVersions where+ toHeaders = const mempty instance ToPath DescribeCacheEngineVersions where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheEngineVersions where- toQuery DescribeCacheEngineVersions{..} = mconcat- [ "CacheParameterGroupFamily" =? _dcevCacheParameterGroupFamily- , "DefaultOnly" =? _dcevDefaultOnly- , "Engine" =? _dcevEngine- , "EngineVersion" =? _dcevEngineVersion- , "Marker" =? _dcevMarker- , "MaxRecords" =? _dcevMaxRecords- ]+ toQuery DescribeCacheEngineVersions'{..}+ = mconcat+ ["Action" =:+ ("DescribeCacheEngineVersions" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheParameterGroupFamily" =:+ _dcevCacheParameterGroupFamily,+ "EngineVersion" =: _dcevEngineVersion,+ "DefaultOnly" =: _dcevDefaultOnly,+ "Engine" =: _dcevEngine,+ "MaxRecords" =: _dcevMaxRecords,+ "Marker" =: _dcevMarker] -instance ToHeaders DescribeCacheEngineVersions+-- | Represents the output of a DescribeCacheEngineVersions action.+--+-- /See:/ 'describeCacheEngineVersionsResponse' smart constructor.+data DescribeCacheEngineVersionsResponse = DescribeCacheEngineVersionsResponse'+ { _dcevrsCacheEngineVersions :: !(Maybe [CacheEngineVersion])+ , _dcevrsMarker :: !(Maybe Text)+ , _dcevrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheEngineVersions where- type Sv DescribeCacheEngineVersions = ElastiCache- type Rs DescribeCacheEngineVersions = DescribeCacheEngineVersionsResponse+-- | Creates a value of 'DescribeCacheEngineVersionsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcevrsCacheEngineVersions'+--+-- * 'dcevrsMarker'+--+-- * 'dcevrsStatus'+describeCacheEngineVersionsResponse+ :: Int -- ^ 'dcevrsStatus'+ -> DescribeCacheEngineVersionsResponse+describeCacheEngineVersionsResponse pStatus_ =+ DescribeCacheEngineVersionsResponse'+ { _dcevrsCacheEngineVersions = Nothing+ , _dcevrsMarker = Nothing+ , _dcevrsStatus = pStatus_+ } - request = post "DescribeCacheEngineVersions"- response = xmlResponse+-- | A list of cache engine version details. Each element in the list+-- contains detailed information about one cache engine version.+dcevrsCacheEngineVersions :: Lens' DescribeCacheEngineVersionsResponse [CacheEngineVersion]+dcevrsCacheEngineVersions = lens _dcevrsCacheEngineVersions (\ s a -> s{_dcevrsCacheEngineVersions = a}) . _Default . _Coerce; -instance FromXML DescribeCacheEngineVersionsResponse where- parseXML = withElement "DescribeCacheEngineVersionsResult" $ \x -> DescribeCacheEngineVersionsResponse- <$> x .@? "CacheEngineVersions" .!@ mempty- <*> x .@? "Marker"+-- | Provides an identifier to allow retrieval of paginated results.+dcevrsMarker :: Lens' DescribeCacheEngineVersionsResponse (Maybe Text)+dcevrsMarker = lens _dcevrsMarker (\ s a -> s{_dcevrsMarker = a}); -instance AWSPager DescribeCacheEngineVersions where- page rq rs- | stop (rs ^. dcevrMarker) = Nothing- | otherwise = (\x -> rq & dcevMarker ?~ x)- <$> (rs ^. dcevrMarker)+-- | The response status code.+dcevrsStatus :: Lens' DescribeCacheEngineVersionsResponse Int+dcevrsStatus = lens _dcevrsStatus (\ s a -> s{_dcevrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheParameterGroups.hs view
@@ -1,160 +1,181 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheParameterGroups--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheParameterGroups/ action returns a list of cache parameter--- group descriptions. If a cache parameter group name is specified, the list--- will contain only the descriptions for that group.+-- The /DescribeCacheParameterGroups/ action returns a list of cache+-- parameter group descriptions. If a cache parameter group name is+-- specified, the list will contain only the descriptions for that group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheParameterGroups.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheParameterGroups.html AWS API Reference> for DescribeCacheParameterGroups.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheParameterGroups (- -- * Request- DescribeCacheParameterGroups- -- ** Request constructor- , describeCacheParameterGroups- -- ** Request lenses+ -- * Creating a Request+ describeCacheParameterGroups+ , DescribeCacheParameterGroups+ -- * Request Lenses , dcpgCacheParameterGroupName- , dcpgMarker , dcpgMaxRecords+ , dcpgMarker - -- * Response- , DescribeCacheParameterGroupsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheParameterGroupsResponse- -- ** Response lenses- , dcpgrCacheParameterGroups- , dcpgrMarker+ , DescribeCacheParameterGroupsResponse+ -- * Response Lenses+ , dcpgrsCacheParameterGroups+ , dcpgrsMarker+ , dcpgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheParameterGroups = DescribeCacheParameterGroups- { _dcpgCacheParameterGroupName :: Maybe Text- , _dcpgMarker :: Maybe Text- , _dcpgMaxRecords :: Maybe Int- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheParameterGroups' constructor.+-- | Represents the input of a /DescribeCacheParameterGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheParameterGroups' smart constructor.+data DescribeCacheParameterGroups = DescribeCacheParameterGroups'+ { _dcpgCacheParameterGroupName :: !(Maybe Text)+ , _dcpgMaxRecords :: !(Maybe Int)+ , _dcpgMarker :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheParameterGroups' with the minimum fields required to make a request. ----- * 'dcpgCacheParameterGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcpgMarker' @::@ 'Maybe' 'Text'+-- * 'dcpgCacheParameterGroupName' ----- * 'dcpgMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dcpgMaxRecords' ---describeCacheParameterGroups :: DescribeCacheParameterGroups-describeCacheParameterGroups = DescribeCacheParameterGroups+-- * 'dcpgMarker'+describeCacheParameterGroups+ :: DescribeCacheParameterGroups+describeCacheParameterGroups =+ DescribeCacheParameterGroups' { _dcpgCacheParameterGroupName = Nothing- , _dcpgMaxRecords = Nothing- , _dcpgMarker = Nothing+ , _dcpgMaxRecords = Nothing+ , _dcpgMarker = Nothing } -- | The name of a specific cache parameter group to return details for. dcpgCacheParameterGroupName :: Lens' DescribeCacheParameterGroups (Maybe Text)-dcpgCacheParameterGroupName =- lens _dcpgCacheParameterGroupName- (\s a -> s { _dcpgCacheParameterGroupName = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcpgMarker :: Lens' DescribeCacheParameterGroups (Maybe Text)-dcpgMarker = lens _dcpgMarker (\s a -> s { _dcpgMarker = a })+dcpgCacheParameterGroupName = lens _dcpgCacheParameterGroupName (\ s a -> s{_dcpgCacheParameterGroupName = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. dcpgMaxRecords :: Lens' DescribeCacheParameterGroups (Maybe Int)-dcpgMaxRecords = lens _dcpgMaxRecords (\s a -> s { _dcpgMaxRecords = a })+dcpgMaxRecords = lens _dcpgMaxRecords (\ s a -> s{_dcpgMaxRecords = a}); -data DescribeCacheParameterGroupsResponse = DescribeCacheParameterGroupsResponse- { _dcpgrCacheParameterGroups :: List "member" CacheParameterGroup- , _dcpgrMarker :: Maybe Text- } deriving (Eq, Read, Show)+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dcpgMarker :: Lens' DescribeCacheParameterGroups (Maybe Text)+dcpgMarker = lens _dcpgMarker (\ s a -> s{_dcpgMarker = a}); --- | 'DescribeCacheParameterGroupsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcpgrCacheParameterGroups' @::@ ['CacheParameterGroup']------ * 'dcpgrMarker' @::@ 'Maybe' 'Text'----describeCacheParameterGroupsResponse :: DescribeCacheParameterGroupsResponse-describeCacheParameterGroupsResponse = DescribeCacheParameterGroupsResponse- { _dcpgrMarker = Nothing- , _dcpgrCacheParameterGroups = mempty- }+instance AWSPager DescribeCacheParameterGroups where+ page rq rs+ | stop (rs ^. dcpgrsMarker) = Nothing+ | stop (rs ^. dcpgrsCacheParameterGroups) = Nothing+ | otherwise =+ Just $ rq & dcpgMarker .~ rs ^. dcpgrsMarker --- | A list of cache parameter groups. Each element in the list contains detailed--- information about one cache parameter group.-dcpgrCacheParameterGroups :: Lens' DescribeCacheParameterGroupsResponse [CacheParameterGroup]-dcpgrCacheParameterGroups =- lens _dcpgrCacheParameterGroups- (\s a -> s { _dcpgrCacheParameterGroups = a })- . _List+instance AWSRequest DescribeCacheParameterGroups+ where+ type Sv DescribeCacheParameterGroups = ElastiCache+ type Rs DescribeCacheParameterGroups =+ DescribeCacheParameterGroupsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeCacheParameterGroupsResult"+ (\ s h x ->+ DescribeCacheParameterGroupsResponse' <$>+ (x .@? "CacheParameterGroups" .!@ mempty >>=+ may (parseXMLList "CacheParameterGroup"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | Provides an identifier to allow retrieval of paginated results.-dcpgrMarker :: Lens' DescribeCacheParameterGroupsResponse (Maybe Text)-dcpgrMarker = lens _dcpgrMarker (\s a -> s { _dcpgrMarker = a })+instance ToHeaders DescribeCacheParameterGroups where+ toHeaders = const mempty instance ToPath DescribeCacheParameterGroups where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheParameterGroups where- toQuery DescribeCacheParameterGroups{..} = mconcat- [ "CacheParameterGroupName" =? _dcpgCacheParameterGroupName- , "Marker" =? _dcpgMarker- , "MaxRecords" =? _dcpgMaxRecords- ]+ toQuery DescribeCacheParameterGroups'{..}+ = mconcat+ ["Action" =:+ ("DescribeCacheParameterGroups" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheParameterGroupName" =:+ _dcpgCacheParameterGroupName,+ "MaxRecords" =: _dcpgMaxRecords,+ "Marker" =: _dcpgMarker] -instance ToHeaders DescribeCacheParameterGroups+-- | Represents the output of a /DescribeCacheParameterGroups/ action.+--+-- /See:/ 'describeCacheParameterGroupsResponse' smart constructor.+data DescribeCacheParameterGroupsResponse = DescribeCacheParameterGroupsResponse'+ { _dcpgrsCacheParameterGroups :: !(Maybe [CacheParameterGroup])+ , _dcpgrsMarker :: !(Maybe Text)+ , _dcpgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheParameterGroups where- type Sv DescribeCacheParameterGroups = ElastiCache- type Rs DescribeCacheParameterGroups = DescribeCacheParameterGroupsResponse+-- | Creates a value of 'DescribeCacheParameterGroupsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcpgrsCacheParameterGroups'+--+-- * 'dcpgrsMarker'+--+-- * 'dcpgrsStatus'+describeCacheParameterGroupsResponse+ :: Int -- ^ 'dcpgrsStatus'+ -> DescribeCacheParameterGroupsResponse+describeCacheParameterGroupsResponse pStatus_ =+ DescribeCacheParameterGroupsResponse'+ { _dcpgrsCacheParameterGroups = Nothing+ , _dcpgrsMarker = Nothing+ , _dcpgrsStatus = pStatus_+ } - request = post "DescribeCacheParameterGroups"- response = xmlResponse+-- | A list of cache parameter groups. Each element in the list contains+-- detailed information about one cache parameter group.+dcpgrsCacheParameterGroups :: Lens' DescribeCacheParameterGroupsResponse [CacheParameterGroup]+dcpgrsCacheParameterGroups = lens _dcpgrsCacheParameterGroups (\ s a -> s{_dcpgrsCacheParameterGroups = a}) . _Default . _Coerce; -instance FromXML DescribeCacheParameterGroupsResponse where- parseXML = withElement "DescribeCacheParameterGroupsResult" $ \x -> DescribeCacheParameterGroupsResponse- <$> x .@? "CacheParameterGroups" .!@ mempty- <*> x .@? "Marker"+-- | Provides an identifier to allow retrieval of paginated results.+dcpgrsMarker :: Lens' DescribeCacheParameterGroupsResponse (Maybe Text)+dcpgrsMarker = lens _dcpgrsMarker (\ s a -> s{_dcpgrsMarker = a}); -instance AWSPager DescribeCacheParameterGroups where- page rq rs- | stop (rs ^. dcpgrMarker) = Nothing- | otherwise = (\x -> rq & dcpgMarker ?~ x)- <$> (rs ^. dcpgrMarker)+-- | The response status code.+dcpgrsStatus :: Lens' DescribeCacheParameterGroupsResponse Int+dcpgrsStatus = lens _dcpgrsStatus (\ s a -> s{_dcpgrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheParameters.hs view
@@ -1,182 +1,203 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheParameters--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheParameters/ action returns the detailed parameter list for a--- particular cache parameter group.+-- The /DescribeCacheParameters/ action returns the detailed parameter list+-- for a particular cache parameter group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheParameters.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheParameters.html AWS API Reference> for DescribeCacheParameters.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheParameters (- -- * Request- DescribeCacheParameters- -- ** Request constructor- , describeCacheParameters- -- ** Request lenses- , dcpCacheParameterGroupName- , dcpMarker+ -- * Creating a Request+ describeCacheParameters+ , DescribeCacheParameters+ -- * Request Lenses , dcpMaxRecords+ , dcpMarker , dcpSource+ , dcpCacheParameterGroupName - -- * Response- , DescribeCacheParametersResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheParametersResponse- -- ** Response lenses- , dcprCacheNodeTypeSpecificParameters- , dcprMarker- , dcprParameters+ , DescribeCacheParametersResponse+ -- * Response Lenses+ , dcprsCacheNodeTypeSpecificParameters+ , dcprsParameters+ , dcprsMarker+ , dcprsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheParameters = DescribeCacheParameters- { _dcpCacheParameterGroupName :: Text- , _dcpMarker :: Maybe Text- , _dcpMaxRecords :: Maybe Int- , _dcpSource :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheParameters' constructor.+-- | Represents the input of a /DescribeCacheParameters/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheParameters' smart constructor.+data DescribeCacheParameters = DescribeCacheParameters'+ { _dcpMaxRecords :: !(Maybe Int)+ , _dcpMarker :: !(Maybe Text)+ , _dcpSource :: !(Maybe Text)+ , _dcpCacheParameterGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheParameters' with the minimum fields required to make a request. ----- * 'dcpCacheParameterGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcpMarker' @::@ 'Maybe' 'Text'+-- * 'dcpMaxRecords' ----- * 'dcpMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dcpMarker' ----- * 'dcpSource' @::@ 'Maybe' 'Text'+-- * 'dcpSource' ---describeCacheParameters :: Text -- ^ 'dcpCacheParameterGroupName'- -> DescribeCacheParameters-describeCacheParameters p1 = DescribeCacheParameters- { _dcpCacheParameterGroupName = p1- , _dcpSource = Nothing- , _dcpMaxRecords = Nothing- , _dcpMarker = Nothing+-- * 'dcpCacheParameterGroupName'+describeCacheParameters+ :: Text -- ^ 'dcpCacheParameterGroupName'+ -> DescribeCacheParameters+describeCacheParameters pCacheParameterGroupName_ =+ DescribeCacheParameters'+ { _dcpMaxRecords = Nothing+ , _dcpMarker = Nothing+ , _dcpSource = Nothing+ , _dcpCacheParameterGroupName = pCacheParameterGroupName_ } --- | The name of a specific cache parameter group to return details for.-dcpCacheParameterGroupName :: Lens' DescribeCacheParameters Text-dcpCacheParameterGroupName =- lens _dcpCacheParameterGroupName- (\s a -> s { _dcpCacheParameterGroupName = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcpMarker :: Lens' DescribeCacheParameters (Maybe Text)-dcpMarker = lens _dcpMarker (\s a -> s { _dcpMarker = a })---- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. dcpMaxRecords :: Lens' DescribeCacheParameters (Maybe Int)-dcpMaxRecords = lens _dcpMaxRecords (\s a -> s { _dcpMaxRecords = a })+dcpMaxRecords = lens _dcpMaxRecords (\ s a -> s{_dcpMaxRecords = a}); +-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dcpMarker :: Lens' DescribeCacheParameters (Maybe Text)+dcpMarker = lens _dcpMarker (\ s a -> s{_dcpMarker = a});+ -- | The parameter types to return. -- -- Valid values: 'user' | 'system' | 'engine-default' dcpSource :: Lens' DescribeCacheParameters (Maybe Text)-dcpSource = lens _dcpSource (\s a -> s { _dcpSource = a })--data DescribeCacheParametersResponse = DescribeCacheParametersResponse- { _dcprCacheNodeTypeSpecificParameters :: List "member" CacheNodeTypeSpecificParameter- , _dcprMarker :: Maybe Text- , _dcprParameters :: List "member" Parameter- } deriving (Eq, Read, Show)+dcpSource = lens _dcpSource (\ s a -> s{_dcpSource = a}); --- | 'DescribeCacheParametersResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcprCacheNodeTypeSpecificParameters' @::@ ['CacheNodeTypeSpecificParameter']------ * 'dcprMarker' @::@ 'Maybe' 'Text'------ * 'dcprParameters' @::@ ['Parameter']----describeCacheParametersResponse :: DescribeCacheParametersResponse-describeCacheParametersResponse = DescribeCacheParametersResponse- { _dcprMarker = Nothing- , _dcprParameters = mempty- , _dcprCacheNodeTypeSpecificParameters = mempty- }+-- | The name of a specific cache parameter group to return details for.+dcpCacheParameterGroupName :: Lens' DescribeCacheParameters Text+dcpCacheParameterGroupName = lens _dcpCacheParameterGroupName (\ s a -> s{_dcpCacheParameterGroupName = a}); --- | A list of parameters specific to a particular cache node type. Each element--- in the list contains detailed information about one parameter.-dcprCacheNodeTypeSpecificParameters :: Lens' DescribeCacheParametersResponse [CacheNodeTypeSpecificParameter]-dcprCacheNodeTypeSpecificParameters =- lens _dcprCacheNodeTypeSpecificParameters- (\s a -> s { _dcprCacheNodeTypeSpecificParameters = a })- . _List+instance AWSPager DescribeCacheParameters where+ page rq rs+ | stop (rs ^. dcprsMarker) = Nothing+ | stop (rs ^. dcprsParameters) = Nothing+ | otherwise =+ Just $ rq & dcpMarker .~ rs ^. dcprsMarker --- | Provides an identifier to allow retrieval of paginated results.-dcprMarker :: Lens' DescribeCacheParametersResponse (Maybe Text)-dcprMarker = lens _dcprMarker (\s a -> s { _dcprMarker = a })+instance AWSRequest DescribeCacheParameters where+ type Sv DescribeCacheParameters = ElastiCache+ type Rs DescribeCacheParameters =+ DescribeCacheParametersResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeCacheParametersResult"+ (\ s h x ->+ DescribeCacheParametersResponse' <$>+ (x .@? "CacheNodeTypeSpecificParameters" .!@ mempty+ >>=+ may (parseXMLList "CacheNodeTypeSpecificParameter"))+ <*>+ (x .@? "Parameters" .!@ mempty >>=+ may (parseXMLList "Parameter"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | A list of 'Parameter' instances.-dcprParameters :: Lens' DescribeCacheParametersResponse [Parameter]-dcprParameters = lens _dcprParameters (\s a -> s { _dcprParameters = a }) . _List+instance ToHeaders DescribeCacheParameters where+ toHeaders = const mempty instance ToPath DescribeCacheParameters where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheParameters where- toQuery DescribeCacheParameters{..} = mconcat- [ "CacheParameterGroupName" =? _dcpCacheParameterGroupName- , "Marker" =? _dcpMarker- , "MaxRecords" =? _dcpMaxRecords- , "Source" =? _dcpSource- ]+ toQuery DescribeCacheParameters'{..}+ = mconcat+ ["Action" =:+ ("DescribeCacheParameters" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "MaxRecords" =: _dcpMaxRecords,+ "Marker" =: _dcpMarker, "Source" =: _dcpSource,+ "CacheParameterGroupName" =:+ _dcpCacheParameterGroupName] -instance ToHeaders DescribeCacheParameters+-- | Represents the output of a /DescribeCacheParameters/ action.+--+-- /See:/ 'describeCacheParametersResponse' smart constructor.+data DescribeCacheParametersResponse = DescribeCacheParametersResponse'+ { _dcprsCacheNodeTypeSpecificParameters :: !(Maybe [CacheNodeTypeSpecificParameter])+ , _dcprsParameters :: !(Maybe [Parameter])+ , _dcprsMarker :: !(Maybe Text)+ , _dcprsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheParameters where- type Sv DescribeCacheParameters = ElastiCache- type Rs DescribeCacheParameters = DescribeCacheParametersResponse+-- | Creates a value of 'DescribeCacheParametersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcprsCacheNodeTypeSpecificParameters'+--+-- * 'dcprsParameters'+--+-- * 'dcprsMarker'+--+-- * 'dcprsStatus'+describeCacheParametersResponse+ :: Int -- ^ 'dcprsStatus'+ -> DescribeCacheParametersResponse+describeCacheParametersResponse pStatus_ =+ DescribeCacheParametersResponse'+ { _dcprsCacheNodeTypeSpecificParameters = Nothing+ , _dcprsParameters = Nothing+ , _dcprsMarker = Nothing+ , _dcprsStatus = pStatus_+ } - request = post "DescribeCacheParameters"- response = xmlResponse+-- | A list of parameters specific to a particular cache node type. Each+-- element in the list contains detailed information about one parameter.+dcprsCacheNodeTypeSpecificParameters :: Lens' DescribeCacheParametersResponse [CacheNodeTypeSpecificParameter]+dcprsCacheNodeTypeSpecificParameters = lens _dcprsCacheNodeTypeSpecificParameters (\ s a -> s{_dcprsCacheNodeTypeSpecificParameters = a}) . _Default . _Coerce; -instance FromXML DescribeCacheParametersResponse where- parseXML = withElement "DescribeCacheParametersResult" $ \x -> DescribeCacheParametersResponse- <$> x .@? "CacheNodeTypeSpecificParameters" .!@ mempty- <*> x .@? "Marker"- <*> x .@? "Parameters" .!@ mempty+-- | A list of Parameter instances.+dcprsParameters :: Lens' DescribeCacheParametersResponse [Parameter]+dcprsParameters = lens _dcprsParameters (\ s a -> s{_dcprsParameters = a}) . _Default . _Coerce; -instance AWSPager DescribeCacheParameters where- page rq rs- | stop (rs ^. dcprMarker) = Nothing- | otherwise = (\x -> rq & dcpMarker ?~ x)- <$> (rs ^. dcprMarker)+-- | Provides an identifier to allow retrieval of paginated results.+dcprsMarker :: Lens' DescribeCacheParametersResponse (Maybe Text)+dcprsMarker = lens _dcprsMarker (\ s a -> s{_dcprsMarker = a});++-- | The response status code.+dcprsStatus :: Lens' DescribeCacheParametersResponse Int+dcprsStatus = lens _dcprsStatus (\ s a -> s{_dcprsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheSecurityGroups.hs view
@@ -1,160 +1,180 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheSecurityGroups--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheSecurityGroups/ action returns a list of cache security group--- descriptions. If a cache security group name is specified, the list will--- contain only the description of that group.+-- The /DescribeCacheSecurityGroups/ action returns a list of cache+-- security group descriptions. If a cache security group name is+-- specified, the list will contain only the description of that group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheSecurityGroups.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheSecurityGroups.html AWS API Reference> for DescribeCacheSecurityGroups.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheSecurityGroups (- -- * Request- DescribeCacheSecurityGroups- -- ** Request constructor- , describeCacheSecurityGroups- -- ** Request lenses- , dcsg1CacheSecurityGroupName- , dcsg1Marker- , dcsg1MaxRecords+ -- * Creating a Request+ describeCacheSecurityGroups+ , DescribeCacheSecurityGroups+ -- * Request Lenses+ , dcsgsCacheSecurityGroupName+ , dcsgsMaxRecords+ , dcsgsMarker - -- * Response- , DescribeCacheSecurityGroupsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheSecurityGroupsResponse- -- ** Response lenses- , dcsgr1CacheSecurityGroups- , dcsgr1Marker+ , DescribeCacheSecurityGroupsResponse+ -- * Response Lenses+ , dcsgsrsCacheSecurityGroups+ , dcsgsrsMarker+ , dcsgsrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheSecurityGroups = DescribeCacheSecurityGroups- { _dcsg1CacheSecurityGroupName :: Maybe Text- , _dcsg1Marker :: Maybe Text- , _dcsg1MaxRecords :: Maybe Int- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheSecurityGroups' constructor.+-- | Represents the input of a /DescribeCacheSecurityGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheSecurityGroups' smart constructor.+data DescribeCacheSecurityGroups = DescribeCacheSecurityGroups'+ { _dcsgsCacheSecurityGroupName :: !(Maybe Text)+ , _dcsgsMaxRecords :: !(Maybe Int)+ , _dcsgsMarker :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheSecurityGroups' with the minimum fields required to make a request. ----- * 'dcsg1CacheSecurityGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcsg1Marker' @::@ 'Maybe' 'Text'+-- * 'dcsgsCacheSecurityGroupName' ----- * 'dcsg1MaxRecords' @::@ 'Maybe' 'Int'+-- * 'dcsgsMaxRecords' ---describeCacheSecurityGroups :: DescribeCacheSecurityGroups-describeCacheSecurityGroups = DescribeCacheSecurityGroups- { _dcsg1CacheSecurityGroupName = Nothing- , _dcsg1MaxRecords = Nothing- , _dcsg1Marker = Nothing+-- * 'dcsgsMarker'+describeCacheSecurityGroups+ :: DescribeCacheSecurityGroups+describeCacheSecurityGroups =+ DescribeCacheSecurityGroups'+ { _dcsgsCacheSecurityGroupName = Nothing+ , _dcsgsMaxRecords = Nothing+ , _dcsgsMarker = Nothing } -- | The name of the cache security group to return details for.-dcsg1CacheSecurityGroupName :: Lens' DescribeCacheSecurityGroups (Maybe Text)-dcsg1CacheSecurityGroupName =- lens _dcsg1CacheSecurityGroupName- (\s a -> s { _dcsg1CacheSecurityGroupName = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcsg1Marker :: Lens' DescribeCacheSecurityGroups (Maybe Text)-dcsg1Marker = lens _dcsg1Marker (\s a -> s { _dcsg1Marker = a })+dcsgsCacheSecurityGroupName :: Lens' DescribeCacheSecurityGroups (Maybe Text)+dcsgsCacheSecurityGroupName = lens _dcsgsCacheSecurityGroupName (\ s a -> s{_dcsgsCacheSecurityGroupName = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100.-dcsg1MaxRecords :: Lens' DescribeCacheSecurityGroups (Maybe Int)-dcsg1MaxRecords = lens _dcsg1MaxRecords (\s a -> s { _dcsg1MaxRecords = a })+dcsgsMaxRecords :: Lens' DescribeCacheSecurityGroups (Maybe Int)+dcsgsMaxRecords = lens _dcsgsMaxRecords (\ s a -> s{_dcsgsMaxRecords = a}); -data DescribeCacheSecurityGroupsResponse = DescribeCacheSecurityGroupsResponse- { _dcsgr1CacheSecurityGroups :: List "member" CacheSecurityGroup- , _dcsgr1Marker :: Maybe Text- } deriving (Eq, Read, Show)+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dcsgsMarker :: Lens' DescribeCacheSecurityGroups (Maybe Text)+dcsgsMarker = lens _dcsgsMarker (\ s a -> s{_dcsgsMarker = a}); --- | 'DescribeCacheSecurityGroupsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcsgr1CacheSecurityGroups' @::@ ['CacheSecurityGroup']------ * 'dcsgr1Marker' @::@ 'Maybe' 'Text'----describeCacheSecurityGroupsResponse :: DescribeCacheSecurityGroupsResponse-describeCacheSecurityGroupsResponse = DescribeCacheSecurityGroupsResponse- { _dcsgr1Marker = Nothing- , _dcsgr1CacheSecurityGroups = mempty- }+instance AWSPager DescribeCacheSecurityGroups where+ page rq rs+ | stop (rs ^. dcsgsrsMarker) = Nothing+ | stop (rs ^. dcsgsrsCacheSecurityGroups) = Nothing+ | otherwise =+ Just $ rq & dcsgsMarker .~ rs ^. dcsgsrsMarker --- | A list of cache security groups. Each element in the list contains detailed--- information about one group.-dcsgr1CacheSecurityGroups :: Lens' DescribeCacheSecurityGroupsResponse [CacheSecurityGroup]-dcsgr1CacheSecurityGroups =- lens _dcsgr1CacheSecurityGroups- (\s a -> s { _dcsgr1CacheSecurityGroups = a })- . _List+instance AWSRequest DescribeCacheSecurityGroups where+ type Sv DescribeCacheSecurityGroups = ElastiCache+ type Rs DescribeCacheSecurityGroups =+ DescribeCacheSecurityGroupsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeCacheSecurityGroupsResult"+ (\ s h x ->+ DescribeCacheSecurityGroupsResponse' <$>+ (x .@? "CacheSecurityGroups" .!@ mempty >>=+ may (parseXMLList "CacheSecurityGroup"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | Provides an identifier to allow retrieval of paginated results.-dcsgr1Marker :: Lens' DescribeCacheSecurityGroupsResponse (Maybe Text)-dcsgr1Marker = lens _dcsgr1Marker (\s a -> s { _dcsgr1Marker = a })+instance ToHeaders DescribeCacheSecurityGroups where+ toHeaders = const mempty instance ToPath DescribeCacheSecurityGroups where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheSecurityGroups where- toQuery DescribeCacheSecurityGroups{..} = mconcat- [ "CacheSecurityGroupName" =? _dcsg1CacheSecurityGroupName- , "Marker" =? _dcsg1Marker- , "MaxRecords" =? _dcsg1MaxRecords- ]+ toQuery DescribeCacheSecurityGroups'{..}+ = mconcat+ ["Action" =:+ ("DescribeCacheSecurityGroups" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSecurityGroupName" =:+ _dcsgsCacheSecurityGroupName,+ "MaxRecords" =: _dcsgsMaxRecords,+ "Marker" =: _dcsgsMarker] -instance ToHeaders DescribeCacheSecurityGroups+-- | Represents the output of a /DescribeCacheSecurityGroups/ action.+--+-- /See:/ 'describeCacheSecurityGroupsResponse' smart constructor.+data DescribeCacheSecurityGroupsResponse = DescribeCacheSecurityGroupsResponse'+ { _dcsgsrsCacheSecurityGroups :: !(Maybe [CacheSecurityGroup])+ , _dcsgsrsMarker :: !(Maybe Text)+ , _dcsgsrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheSecurityGroups where- type Sv DescribeCacheSecurityGroups = ElastiCache- type Rs DescribeCacheSecurityGroups = DescribeCacheSecurityGroupsResponse+-- | Creates a value of 'DescribeCacheSecurityGroupsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcsgsrsCacheSecurityGroups'+--+-- * 'dcsgsrsMarker'+--+-- * 'dcsgsrsStatus'+describeCacheSecurityGroupsResponse+ :: Int -- ^ 'dcsgsrsStatus'+ -> DescribeCacheSecurityGroupsResponse+describeCacheSecurityGroupsResponse pStatus_ =+ DescribeCacheSecurityGroupsResponse'+ { _dcsgsrsCacheSecurityGroups = Nothing+ , _dcsgsrsMarker = Nothing+ , _dcsgsrsStatus = pStatus_+ } - request = post "DescribeCacheSecurityGroups"- response = xmlResponse+-- | A list of cache security groups. Each element in the list contains+-- detailed information about one group.+dcsgsrsCacheSecurityGroups :: Lens' DescribeCacheSecurityGroupsResponse [CacheSecurityGroup]+dcsgsrsCacheSecurityGroups = lens _dcsgsrsCacheSecurityGroups (\ s a -> s{_dcsgsrsCacheSecurityGroups = a}) . _Default . _Coerce; -instance FromXML DescribeCacheSecurityGroupsResponse where- parseXML = withElement "DescribeCacheSecurityGroupsResult" $ \x -> DescribeCacheSecurityGroupsResponse- <$> x .@? "CacheSecurityGroups" .!@ mempty- <*> x .@? "Marker"+-- | Provides an identifier to allow retrieval of paginated results.+dcsgsrsMarker :: Lens' DescribeCacheSecurityGroupsResponse (Maybe Text)+dcsgsrsMarker = lens _dcsgsrsMarker (\ s a -> s{_dcsgsrsMarker = a}); -instance AWSPager DescribeCacheSecurityGroups where- page rq rs- | stop (rs ^. dcsgr1Marker) = Nothing- | otherwise = (\x -> rq & dcsg1Marker ?~ x)- <$> (rs ^. dcsgr1Marker)+-- | The response status code.+dcsgsrsStatus :: Lens' DescribeCacheSecurityGroupsResponse Int+dcsgsrsStatus = lens _dcsgsrsStatus (\ s a -> s{_dcsgsrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeCacheSubnetGroups.hs view
@@ -1,159 +1,178 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeCacheSubnetGroups--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeCacheSubnetGroups/ action returns a list of cache subnet group--- descriptions. If a subnet group name is specified, the list will contain only--- the description of that group.+-- The /DescribeCacheSubnetGroups/ action returns a list of cache subnet+-- group descriptions. If a subnet group name is specified, the list will+-- contain only the description of that group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheSubnetGroups.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeCacheSubnetGroups.html AWS API Reference> for DescribeCacheSubnetGroups.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeCacheSubnetGroups (- -- * Request- DescribeCacheSubnetGroups- -- ** Request constructor- , describeCacheSubnetGroups- -- ** Request lenses+ -- * Creating a Request+ describeCacheSubnetGroups+ , DescribeCacheSubnetGroups+ -- * Request Lenses , dcsgCacheSubnetGroupName- , dcsgMarker , dcsgMaxRecords+ , dcsgMarker - -- * Response- , DescribeCacheSubnetGroupsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeCacheSubnetGroupsResponse- -- ** Response lenses- , dcsgrCacheSubnetGroups- , dcsgrMarker+ , DescribeCacheSubnetGroupsResponse+ -- * Response Lenses+ , dcsgrsMarker+ , dcsgrsCacheSubnetGroups+ , dcsgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeCacheSubnetGroups = DescribeCacheSubnetGroups- { _dcsgCacheSubnetGroupName :: Maybe Text- , _dcsgMarker :: Maybe Text- , _dcsgMaxRecords :: Maybe Int- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeCacheSubnetGroups' constructor.+-- | Represents the input of a /DescribeCacheSubnetGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeCacheSubnetGroups' smart constructor.+data DescribeCacheSubnetGroups = DescribeCacheSubnetGroups'+ { _dcsgCacheSubnetGroupName :: !(Maybe Text)+ , _dcsgMaxRecords :: !(Maybe Int)+ , _dcsgMarker :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeCacheSubnetGroups' with the minimum fields required to make a request. ----- * 'dcsgCacheSubnetGroupName' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dcsgMarker' @::@ 'Maybe' 'Text'+-- * 'dcsgCacheSubnetGroupName' ----- * 'dcsgMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dcsgMaxRecords' ---describeCacheSubnetGroups :: DescribeCacheSubnetGroups-describeCacheSubnetGroups = DescribeCacheSubnetGroups+-- * 'dcsgMarker'+describeCacheSubnetGroups+ :: DescribeCacheSubnetGroups+describeCacheSubnetGroups =+ DescribeCacheSubnetGroups' { _dcsgCacheSubnetGroupName = Nothing- , _dcsgMaxRecords = Nothing- , _dcsgMarker = Nothing+ , _dcsgMaxRecords = Nothing+ , _dcsgMarker = Nothing } -- | The name of the cache subnet group to return details for. dcsgCacheSubnetGroupName :: Lens' DescribeCacheSubnetGroups (Maybe Text)-dcsgCacheSubnetGroupName =- lens _dcsgCacheSubnetGroupName- (\s a -> s { _dcsgCacheSubnetGroupName = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dcsgMarker :: Lens' DescribeCacheSubnetGroups (Maybe Text)-dcsgMarker = lens _dcsgMarker (\s a -> s { _dcsgMarker = a })+dcsgCacheSubnetGroupName = lens _dcsgCacheSubnetGroupName (\ s a -> s{_dcsgCacheSubnetGroupName = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. dcsgMaxRecords :: Lens' DescribeCacheSubnetGroups (Maybe Int)-dcsgMaxRecords = lens _dcsgMaxRecords (\s a -> s { _dcsgMaxRecords = a })+dcsgMaxRecords = lens _dcsgMaxRecords (\ s a -> s{_dcsgMaxRecords = a}); -data DescribeCacheSubnetGroupsResponse = DescribeCacheSubnetGroupsResponse- { _dcsgrCacheSubnetGroups :: List "member" CacheSubnetGroup- , _dcsgrMarker :: Maybe Text- } deriving (Eq, Read, Show)+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dcsgMarker :: Lens' DescribeCacheSubnetGroups (Maybe Text)+dcsgMarker = lens _dcsgMarker (\ s a -> s{_dcsgMarker = a}); --- | 'DescribeCacheSubnetGroupsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dcsgrCacheSubnetGroups' @::@ ['CacheSubnetGroup']------ * 'dcsgrMarker' @::@ 'Maybe' 'Text'----describeCacheSubnetGroupsResponse :: DescribeCacheSubnetGroupsResponse-describeCacheSubnetGroupsResponse = DescribeCacheSubnetGroupsResponse- { _dcsgrMarker = Nothing- , _dcsgrCacheSubnetGroups = mempty- }+instance AWSPager DescribeCacheSubnetGroups where+ page rq rs+ | stop (rs ^. dcsgrsMarker) = Nothing+ | stop (rs ^. dcsgrsCacheSubnetGroups) = Nothing+ | otherwise =+ Just $ rq & dcsgMarker .~ rs ^. dcsgrsMarker --- | A list of cache subnet groups. Each element in the list contains detailed--- information about one group.-dcsgrCacheSubnetGroups :: Lens' DescribeCacheSubnetGroupsResponse [CacheSubnetGroup]-dcsgrCacheSubnetGroups =- lens _dcsgrCacheSubnetGroups (\s a -> s { _dcsgrCacheSubnetGroups = a })- . _List+instance AWSRequest DescribeCacheSubnetGroups where+ type Sv DescribeCacheSubnetGroups = ElastiCache+ type Rs DescribeCacheSubnetGroups =+ DescribeCacheSubnetGroupsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeCacheSubnetGroupsResult"+ (\ s h x ->+ DescribeCacheSubnetGroupsResponse' <$>+ (x .@? "Marker") <*>+ (x .@? "CacheSubnetGroups" .!@ mempty >>=+ may (parseXMLList "CacheSubnetGroup"))+ <*> (pure (fromEnum s))) --- | Provides an identifier to allow retrieval of paginated results.-dcsgrMarker :: Lens' DescribeCacheSubnetGroupsResponse (Maybe Text)-dcsgrMarker = lens _dcsgrMarker (\s a -> s { _dcsgrMarker = a })+instance ToHeaders DescribeCacheSubnetGroups where+ toHeaders = const mempty instance ToPath DescribeCacheSubnetGroups where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeCacheSubnetGroups where- toQuery DescribeCacheSubnetGroups{..} = mconcat- [ "CacheSubnetGroupName" =? _dcsgCacheSubnetGroupName- , "Marker" =? _dcsgMarker- , "MaxRecords" =? _dcsgMaxRecords- ]+ toQuery DescribeCacheSubnetGroups'{..}+ = mconcat+ ["Action" =:+ ("DescribeCacheSubnetGroups" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSubnetGroupName" =: _dcsgCacheSubnetGroupName,+ "MaxRecords" =: _dcsgMaxRecords,+ "Marker" =: _dcsgMarker] -instance ToHeaders DescribeCacheSubnetGroups+-- | Represents the output of a /DescribeCacheSubnetGroups/ action.+--+-- /See:/ 'describeCacheSubnetGroupsResponse' smart constructor.+data DescribeCacheSubnetGroupsResponse = DescribeCacheSubnetGroupsResponse'+ { _dcsgrsMarker :: !(Maybe Text)+ , _dcsgrsCacheSubnetGroups :: !(Maybe [CacheSubnetGroup])+ , _dcsgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeCacheSubnetGroups where- type Sv DescribeCacheSubnetGroups = ElastiCache- type Rs DescribeCacheSubnetGroups = DescribeCacheSubnetGroupsResponse+-- | Creates a value of 'DescribeCacheSubnetGroupsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcsgrsMarker'+--+-- * 'dcsgrsCacheSubnetGroups'+--+-- * 'dcsgrsStatus'+describeCacheSubnetGroupsResponse+ :: Int -- ^ 'dcsgrsStatus'+ -> DescribeCacheSubnetGroupsResponse+describeCacheSubnetGroupsResponse pStatus_ =+ DescribeCacheSubnetGroupsResponse'+ { _dcsgrsMarker = Nothing+ , _dcsgrsCacheSubnetGroups = Nothing+ , _dcsgrsStatus = pStatus_+ } - request = post "DescribeCacheSubnetGroups"- response = xmlResponse+-- | Provides an identifier to allow retrieval of paginated results.+dcsgrsMarker :: Lens' DescribeCacheSubnetGroupsResponse (Maybe Text)+dcsgrsMarker = lens _dcsgrsMarker (\ s a -> s{_dcsgrsMarker = a}); -instance FromXML DescribeCacheSubnetGroupsResponse where- parseXML = withElement "DescribeCacheSubnetGroupsResult" $ \x -> DescribeCacheSubnetGroupsResponse- <$> x .@? "CacheSubnetGroups" .!@ mempty- <*> x .@? "Marker"+-- | A list of cache subnet groups. Each element in the list contains+-- detailed information about one group.+dcsgrsCacheSubnetGroups :: Lens' DescribeCacheSubnetGroupsResponse [CacheSubnetGroup]+dcsgrsCacheSubnetGroups = lens _dcsgrsCacheSubnetGroups (\ s a -> s{_dcsgrsCacheSubnetGroups = a}) . _Default . _Coerce; -instance AWSPager DescribeCacheSubnetGroups where- page rq rs- | stop (rs ^. dcsgrMarker) = Nothing- | otherwise = (\x -> rq & dcsgMarker ?~ x)- <$> (rs ^. dcsgrMarker)+-- | The response status code.+dcsgrsStatus :: Lens' DescribeCacheSubnetGroupsResponse Int+dcsgrsStatus = lens _dcsgrsStatus (\ s a -> s{_dcsgrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeEngineDefaultParameters.hs view
@@ -1,148 +1,176 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeEngineDefaultParameters--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeEngineDefaultParameters/ action returns the default engine and--- system parameter information for the specified cache engine.+-- The /DescribeEngineDefaultParameters/ action returns the default engine+-- and system parameter information for the specified cache engine. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEngineDefaultParameters.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEngineDefaultParameters.html AWS API Reference> for DescribeEngineDefaultParameters.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeEngineDefaultParameters (- -- * Request- DescribeEngineDefaultParameters- -- ** Request constructor- , describeEngineDefaultParameters- -- ** Request lenses- , dedpCacheParameterGroupFamily- , dedpMarker+ -- * Creating a Request+ describeEngineDefaultParameters+ , DescribeEngineDefaultParameters+ -- * Request Lenses , dedpMaxRecords+ , dedpMarker+ , dedpCacheParameterGroupFamily - -- * Response- , DescribeEngineDefaultParametersResponse- -- ** Response constructor+ -- * Destructuring the Response , describeEngineDefaultParametersResponse- -- ** Response lenses- , dedprEngineDefaults+ , DescribeEngineDefaultParametersResponse+ -- * Response Lenses+ , dedprsStatus+ , dedprsEngineDefaults ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeEngineDefaultParameters = DescribeEngineDefaultParameters- { _dedpCacheParameterGroupFamily :: Text- , _dedpMarker :: Maybe Text- , _dedpMaxRecords :: Maybe Int- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeEngineDefaultParameters' constructor.+-- | Represents the input of a /DescribeEngineDefaultParameters/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeEngineDefaultParameters' smart constructor.+data DescribeEngineDefaultParameters = DescribeEngineDefaultParameters'+ { _dedpMaxRecords :: !(Maybe Int)+ , _dedpMarker :: !(Maybe Text)+ , _dedpCacheParameterGroupFamily :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeEngineDefaultParameters' with the minimum fields required to make a request. ----- * 'dedpCacheParameterGroupFamily' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dedpMarker' @::@ 'Maybe' 'Text'+-- * 'dedpMaxRecords' ----- * 'dedpMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dedpMarker' ---describeEngineDefaultParameters :: Text -- ^ 'dedpCacheParameterGroupFamily'- -> DescribeEngineDefaultParameters-describeEngineDefaultParameters p1 = DescribeEngineDefaultParameters- { _dedpCacheParameterGroupFamily = p1- , _dedpMaxRecords = Nothing- , _dedpMarker = Nothing+-- * 'dedpCacheParameterGroupFamily'+describeEngineDefaultParameters+ :: Text -- ^ 'dedpCacheParameterGroupFamily'+ -> DescribeEngineDefaultParameters+describeEngineDefaultParameters pCacheParameterGroupFamily_ =+ DescribeEngineDefaultParameters'+ { _dedpMaxRecords = Nothing+ , _dedpMarker = Nothing+ , _dedpCacheParameterGroupFamily = pCacheParameterGroupFamily_ } --- | The name of the cache parameter group family. Valid values are: 'memcached1.4'--- | 'redis2.6' | 'redis2.8'-dedpCacheParameterGroupFamily :: Lens' DescribeEngineDefaultParameters Text-dedpCacheParameterGroupFamily =- lens _dedpCacheParameterGroupFamily- (\s a -> s { _dedpCacheParameterGroupFamily = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dedpMarker :: Lens' DescribeEngineDefaultParameters (Maybe Text)-dedpMarker = lens _dedpMarker (\s a -> s { _dedpMarker = a })---- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. dedpMaxRecords :: Lens' DescribeEngineDefaultParameters (Maybe Int)-dedpMaxRecords = lens _dedpMaxRecords (\s a -> s { _dedpMaxRecords = a })--newtype DescribeEngineDefaultParametersResponse = DescribeEngineDefaultParametersResponse- { _dedprEngineDefaults :: EngineDefaults- } deriving (Eq, Read, Show)+dedpMaxRecords = lens _dedpMaxRecords (\ s a -> s{_dedpMaxRecords = a}); --- | 'DescribeEngineDefaultParametersResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dedprEngineDefaults' @::@ 'EngineDefaults'----describeEngineDefaultParametersResponse :: EngineDefaults -- ^ 'dedprEngineDefaults'- -> DescribeEngineDefaultParametersResponse-describeEngineDefaultParametersResponse p1 = DescribeEngineDefaultParametersResponse- { _dedprEngineDefaults = p1- }+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dedpMarker :: Lens' DescribeEngineDefaultParameters (Maybe Text)+dedpMarker = lens _dedpMarker (\ s a -> s{_dedpMarker = a}); -dedprEngineDefaults :: Lens' DescribeEngineDefaultParametersResponse EngineDefaults-dedprEngineDefaults =- lens _dedprEngineDefaults (\s a -> s { _dedprEngineDefaults = a })+-- | The name of the cache parameter group family. Valid values are:+-- 'memcached1.4' | 'redis2.6' | 'redis2.8'+dedpCacheParameterGroupFamily :: Lens' DescribeEngineDefaultParameters Text+dedpCacheParameterGroupFamily = lens _dedpCacheParameterGroupFamily (\ s a -> s{_dedpCacheParameterGroupFamily = a}); -instance ToPath DescribeEngineDefaultParameters where- toPath = const "/"+instance AWSPager DescribeEngineDefaultParameters+ where+ page rq rs+ | stop+ (rs ^? dedprsEngineDefaults . edMarker . _Just)+ = Nothing+ | stop (rs ^. dedprsEngineDefaults . edParameters) =+ Nothing+ | otherwise =+ Just $ rq &+ dedpMarker .~+ rs ^? dedprsEngineDefaults . edMarker . _Just -instance ToQuery DescribeEngineDefaultParameters where- toQuery DescribeEngineDefaultParameters{..} = mconcat- [ "CacheParameterGroupFamily" =? _dedpCacheParameterGroupFamily- , "Marker" =? _dedpMarker- , "MaxRecords" =? _dedpMaxRecords- ]+instance AWSRequest DescribeEngineDefaultParameters+ where+ type Sv DescribeEngineDefaultParameters = ElastiCache+ type Rs DescribeEngineDefaultParameters =+ DescribeEngineDefaultParametersResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeEngineDefaultParametersResult"+ (\ s h x ->+ DescribeEngineDefaultParametersResponse' <$>+ (pure (fromEnum s)) <*> (x .@ "EngineDefaults")) instance ToHeaders DescribeEngineDefaultParameters+ where+ toHeaders = const mempty -instance AWSRequest DescribeEngineDefaultParameters where- type Sv DescribeEngineDefaultParameters = ElastiCache- type Rs DescribeEngineDefaultParameters = DescribeEngineDefaultParametersResponse+instance ToPath DescribeEngineDefaultParameters where+ toPath = const "/" - request = post "DescribeEngineDefaultParameters"- response = xmlResponse+instance ToQuery DescribeEngineDefaultParameters+ where+ toQuery DescribeEngineDefaultParameters'{..}+ = mconcat+ ["Action" =:+ ("DescribeEngineDefaultParameters" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "MaxRecords" =: _dedpMaxRecords,+ "Marker" =: _dedpMarker,+ "CacheParameterGroupFamily" =:+ _dedpCacheParameterGroupFamily] -instance FromXML DescribeEngineDefaultParametersResponse where- parseXML = withElement "DescribeEngineDefaultParametersResult" $ \x -> DescribeEngineDefaultParametersResponse- <$> x .@ "EngineDefaults"+-- | /See:/ 'describeEngineDefaultParametersResponse' smart constructor.+data DescribeEngineDefaultParametersResponse = DescribeEngineDefaultParametersResponse'+ { _dedprsStatus :: !Int+ , _dedprsEngineDefaults :: !EngineDefaults+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSPager DescribeEngineDefaultParameters where- page rq rs- | stop (rs ^. dedprEngineDefaults . edMarker) = Nothing- | otherwise = (\x -> rq & dedpMarker ?~ x)- <$> (rs ^. dedprEngineDefaults . edMarker)+-- | Creates a value of 'DescribeEngineDefaultParametersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dedprsStatus'+--+-- * 'dedprsEngineDefaults'+describeEngineDefaultParametersResponse+ :: Int -- ^ 'dedprsStatus'+ -> EngineDefaults -- ^ 'dedprsEngineDefaults'+ -> DescribeEngineDefaultParametersResponse+describeEngineDefaultParametersResponse pStatus_ pEngineDefaults_ =+ DescribeEngineDefaultParametersResponse'+ { _dedprsStatus = pStatus_+ , _dedprsEngineDefaults = pEngineDefaults_+ }++-- | The response status code.+dedprsStatus :: Lens' DescribeEngineDefaultParametersResponse Int+dedprsStatus = lens _dedprsStatus (\ s a -> s{_dedprsStatus = a});++-- | Undocumented member.+dedprsEngineDefaults :: Lens' DescribeEngineDefaultParametersResponse EngineDefaults+dedprsEngineDefaults = lens _dedprsEngineDefaults (\ s a -> s{_dedprsEngineDefaults = a});
gen/Network/AWS/ElastiCache/DescribeEvents.hs view
@@ -1,206 +1,226 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeEvents--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeEvents/ action returns events related to cache clusters, cache--- security groups, and cache parameter groups. You can obtain events specific--- to a particular cache cluster, cache security group, or cache parameter group--- by providing the name as a parameter.+-- The /DescribeEvents/ action returns events related to cache clusters,+-- cache security groups, and cache parameter groups. You can obtain events+-- specific to a particular cache cluster, cache security group, or cache+-- parameter group by providing the name as a parameter. -- -- By default, only the events occurring within the last hour are returned;--- however, you can retrieve up to 14 days' worth of events if necessary.+-- however, you can retrieve up to 14 days\' worth of events if necessary. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEvents.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeEvents.html AWS API Reference> for DescribeEvents.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeEvents (- -- * Request- DescribeEvents- -- ** Request constructor- , describeEvents- -- ** Request lenses- , deDuration+ -- * Creating a Request+ describeEvents+ , DescribeEvents+ -- * Request Lenses+ , deStartTime+ , deSourceType+ , deSourceIdentifier+ , deMaxRecords , deEndTime , deMarker- , deMaxRecords- , deSourceIdentifier- , deSourceType- , deStartTime+ , deDuration - -- * Response- , DescribeEventsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeEventsResponse- -- ** Response lenses- , derEvents- , derMarker+ , DescribeEventsResponse+ -- * Response Lenses+ , dersEvents+ , dersMarker+ , dersStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeEvents = DescribeEvents- { _deDuration :: Maybe Int- , _deEndTime :: Maybe ISO8601- , _deMarker :: Maybe Text- , _deMaxRecords :: Maybe Int- , _deSourceIdentifier :: Maybe Text- , _deSourceType :: Maybe SourceType- , _deStartTime :: Maybe ISO8601- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeEvents' constructor.+-- | Represents the input of a /DescribeEvents/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeEvents' smart constructor.+data DescribeEvents = DescribeEvents'+ { _deStartTime :: !(Maybe ISO8601)+ , _deSourceType :: !(Maybe SourceType)+ , _deSourceIdentifier :: !(Maybe Text)+ , _deMaxRecords :: !(Maybe Int)+ , _deEndTime :: !(Maybe ISO8601)+ , _deMarker :: !(Maybe Text)+ , _deDuration :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeEvents' with the minimum fields required to make a request. ----- * 'deDuration' @::@ 'Maybe' 'Int'+-- Use one of the following lenses to modify other fields as desired: ----- * 'deEndTime' @::@ 'Maybe' 'UTCTime'+-- * 'deStartTime' ----- * 'deMarker' @::@ 'Maybe' 'Text'+-- * 'deSourceType' ----- * 'deMaxRecords' @::@ 'Maybe' 'Int'+-- * 'deSourceIdentifier' ----- * 'deSourceIdentifier' @::@ 'Maybe' 'Text'+-- * 'deMaxRecords' ----- * 'deSourceType' @::@ 'Maybe' 'SourceType'+-- * 'deEndTime' ----- * 'deStartTime' @::@ 'Maybe' 'UTCTime'+-- * 'deMarker' ---describeEvents :: DescribeEvents-describeEvents = DescribeEvents- { _deSourceIdentifier = Nothing- , _deSourceType = Nothing- , _deStartTime = Nothing- , _deEndTime = Nothing- , _deDuration = Nothing- , _deMaxRecords = Nothing- , _deMarker = Nothing+-- * 'deDuration'+describeEvents+ :: DescribeEvents+describeEvents =+ DescribeEvents'+ { _deStartTime = Nothing+ , _deSourceType = Nothing+ , _deSourceIdentifier = Nothing+ , _deMaxRecords = Nothing+ , _deEndTime = Nothing+ , _deMarker = Nothing+ , _deDuration = Nothing } --- | The number of minutes' worth of events to retrieve.-deDuration :: Lens' DescribeEvents (Maybe Int)-deDuration = lens _deDuration (\s a -> s { _deDuration = a })+-- | The beginning of the time interval to retrieve events for, specified in+-- ISO 8601 format.+deStartTime :: Lens' DescribeEvents (Maybe UTCTime)+deStartTime = lens _deStartTime (\ s a -> s{_deStartTime = a}) . mapping _Time; --- | The end of the time interval for which to retrieve events, specified in ISO--- 8601 format.-deEndTime :: Lens' DescribeEvents (Maybe UTCTime)-deEndTime = lens _deEndTime (\s a -> s { _deEndTime = a }) . mapping _Time+-- | The event source to retrieve events for. If no value is specified, all+-- events are returned.+--+-- Valid values are: 'cache-cluster' | 'cache-parameter-group' |+-- 'cache-security-group' | 'cache-subnet-group'+deSourceType :: Lens' DescribeEvents (Maybe SourceType)+deSourceType = lens _deSourceType (\ s a -> s{_deSourceType = a}); --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-deMarker :: Lens' DescribeEvents (Maybe Text)-deMarker = lens _deMarker (\s a -> s { _deMarker = a })+-- | The identifier of the event source for which events will be returned. If+-- not specified, then all sources are included in the response.+deSourceIdentifier :: Lens' DescribeEvents (Maybe Text)+deSourceIdentifier = lens _deSourceIdentifier (\ s a -> s{_deSourceIdentifier = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. deMaxRecords :: Lens' DescribeEvents (Maybe Int)-deMaxRecords = lens _deMaxRecords (\s a -> s { _deMaxRecords = a })+deMaxRecords = lens _deMaxRecords (\ s a -> s{_deMaxRecords = a}); --- | The identifier of the event source for which events will be returned. If not--- specified, then all sources are included in the response.-deSourceIdentifier :: Lens' DescribeEvents (Maybe Text)-deSourceIdentifier =- lens _deSourceIdentifier (\s a -> s { _deSourceIdentifier = a })+-- | The end of the time interval for which to retrieve events, specified in+-- ISO 8601 format.+deEndTime :: Lens' DescribeEvents (Maybe UTCTime)+deEndTime = lens _deEndTime (\ s a -> s{_deEndTime = a}) . mapping _Time; --- | The event source to retrieve events for. If no value is specified, all events--- are returned.------ Valid values are: 'cache-cluster' | 'cache-parameter-group' | 'cache-security-group' | 'cache-subnet-group'-deSourceType :: Lens' DescribeEvents (Maybe SourceType)-deSourceType = lens _deSourceType (\s a -> s { _deSourceType = a })+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+deMarker :: Lens' DescribeEvents (Maybe Text)+deMarker = lens _deMarker (\ s a -> s{_deMarker = a}); --- | The beginning of the time interval to retrieve events for, specified in ISO--- 8601 format.-deStartTime :: Lens' DescribeEvents (Maybe UTCTime)-deStartTime = lens _deStartTime (\s a -> s { _deStartTime = a }) . mapping _Time+-- | The number of minutes\' worth of events to retrieve.+deDuration :: Lens' DescribeEvents (Maybe Int)+deDuration = lens _deDuration (\ s a -> s{_deDuration = a}); -data DescribeEventsResponse = DescribeEventsResponse- { _derEvents :: List "member" Event- , _derMarker :: Maybe Text- } deriving (Eq, Read, Show)+instance AWSPager DescribeEvents where+ page rq rs+ | stop (rs ^. dersMarker) = Nothing+ | stop (rs ^. dersEvents) = Nothing+ | otherwise =+ Just $ rq & deMarker .~ rs ^. dersMarker --- | 'DescribeEventsResponse' constructor.+instance AWSRequest DescribeEvents where+ type Sv DescribeEvents = ElastiCache+ type Rs DescribeEvents = DescribeEventsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeEventsResult"+ (\ s h x ->+ DescribeEventsResponse' <$>+ (x .@? "Events" .!@ mempty >>=+ may (parseXMLList "Event"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s)))++instance ToHeaders DescribeEvents where+ toHeaders = const mempty++instance ToPath DescribeEvents where+ toPath = const "/"++instance ToQuery DescribeEvents where+ toQuery DescribeEvents'{..}+ = mconcat+ ["Action" =: ("DescribeEvents" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "StartTime" =: _deStartTime,+ "SourceType" =: _deSourceType,+ "SourceIdentifier" =: _deSourceIdentifier,+ "MaxRecords" =: _deMaxRecords,+ "EndTime" =: _deEndTime, "Marker" =: _deMarker,+ "Duration" =: _deDuration]++-- | Represents the output of a /DescribeEvents/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeEventsResponse' smart constructor.+data DescribeEventsResponse = DescribeEventsResponse'+ { _dersEvents :: !(Maybe [Event])+ , _dersMarker :: !(Maybe Text)+ , _dersStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeEventsResponse' with the minimum fields required to make a request. ----- * 'derEvents' @::@ ['Event']+-- Use one of the following lenses to modify other fields as desired: ----- * 'derMarker' @::@ 'Maybe' 'Text'+-- * 'dersEvents' ---describeEventsResponse :: DescribeEventsResponse-describeEventsResponse = DescribeEventsResponse- { _derMarker = Nothing- , _derEvents = mempty+-- * 'dersMarker'+--+-- * 'dersStatus'+describeEventsResponse+ :: Int -- ^ 'dersStatus'+ -> DescribeEventsResponse+describeEventsResponse pStatus_ =+ DescribeEventsResponse'+ { _dersEvents = Nothing+ , _dersMarker = Nothing+ , _dersStatus = pStatus_ } -- | A list of events. Each element in the list contains detailed information -- about one event.-derEvents :: Lens' DescribeEventsResponse [Event]-derEvents = lens _derEvents (\s a -> s { _derEvents = a }) . _List+dersEvents :: Lens' DescribeEventsResponse [Event]+dersEvents = lens _dersEvents (\ s a -> s{_dersEvents = a}) . _Default . _Coerce; -- | Provides an identifier to allow retrieval of paginated results.-derMarker :: Lens' DescribeEventsResponse (Maybe Text)-derMarker = lens _derMarker (\s a -> s { _derMarker = a })--instance ToPath DescribeEvents where- toPath = const "/"--instance ToQuery DescribeEvents where- toQuery DescribeEvents{..} = mconcat- [ "Duration" =? _deDuration- , "EndTime" =? _deEndTime- , "Marker" =? _deMarker- , "MaxRecords" =? _deMaxRecords- , "SourceIdentifier" =? _deSourceIdentifier- , "SourceType" =? _deSourceType- , "StartTime" =? _deStartTime- ]--instance ToHeaders DescribeEvents--instance AWSRequest DescribeEvents where- type Sv DescribeEvents = ElastiCache- type Rs DescribeEvents = DescribeEventsResponse-- request = post "DescribeEvents"- response = xmlResponse--instance FromXML DescribeEventsResponse where- parseXML = withElement "DescribeEventsResult" $ \x -> DescribeEventsResponse- <$> x .@? "Events" .!@ mempty- <*> x .@? "Marker"+dersMarker :: Lens' DescribeEventsResponse (Maybe Text)+dersMarker = lens _dersMarker (\ s a -> s{_dersMarker = a}); -instance AWSPager DescribeEvents where- page rq rs- | stop (rs ^. derMarker) = Nothing- | otherwise = (\x -> rq & deMarker ?~ x)- <$> (rs ^. derMarker)+-- | The response status code.+dersStatus :: Lens' DescribeEventsResponse Int+dersStatus = lens _dersStatus (\ s a -> s{_dersStatus = a});
gen/Network/AWS/ElastiCache/DescribeReplicationGroups.hs view
@@ -1,162 +1,183 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeReplicationGroups--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeReplicationGroups/ action returns information about a particular--- replication group. If no identifier is specified, /DescribeReplicationGroups/--- returns information about all replication groups.+-- The /DescribeReplicationGroups/ action returns information about a+-- particular replication group. If no identifier is specified,+-- /DescribeReplicationGroups/ returns information about all replication+-- groups. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReplicationGroups.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReplicationGroups.html AWS API Reference> for DescribeReplicationGroups.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeReplicationGroups (- -- * Request- DescribeReplicationGroups- -- ** Request constructor- , describeReplicationGroups- -- ** Request lenses- , drg1Marker- , drg1MaxRecords- , drg1ReplicationGroupId+ -- * Creating a Request+ describeReplicationGroups+ , DescribeReplicationGroups+ -- * Request Lenses+ , drgsMaxRecords+ , drgsMarker+ , drgsReplicationGroupId - -- * Response- , DescribeReplicationGroupsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeReplicationGroupsResponse- -- ** Response lenses- , drgrMarker- , drgrReplicationGroups+ , DescribeReplicationGroupsResponse+ -- * Response Lenses+ , drgrsMarker+ , drgrsReplicationGroups+ , drgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeReplicationGroups = DescribeReplicationGroups- { _drg1Marker :: Maybe Text- , _drg1MaxRecords :: Maybe Int- , _drg1ReplicationGroupId :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeReplicationGroups' constructor.+-- | Represents the input of a /DescribeReplicationGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeReplicationGroups' smart constructor.+data DescribeReplicationGroups = DescribeReplicationGroups'+ { _drgsMaxRecords :: !(Maybe Int)+ , _drgsMarker :: !(Maybe Text)+ , _drgsReplicationGroupId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeReplicationGroups' with the minimum fields required to make a request. ----- * 'drg1Marker' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drg1MaxRecords' @::@ 'Maybe' 'Int'+-- * 'drgsMaxRecords' ----- * 'drg1ReplicationGroupId' @::@ 'Maybe' 'Text'+-- * 'drgsMarker' ---describeReplicationGroups :: DescribeReplicationGroups-describeReplicationGroups = DescribeReplicationGroups- { _drg1ReplicationGroupId = Nothing- , _drg1MaxRecords = Nothing- , _drg1Marker = Nothing+-- * 'drgsReplicationGroupId'+describeReplicationGroups+ :: DescribeReplicationGroups+describeReplicationGroups =+ DescribeReplicationGroups'+ { _drgsMaxRecords = Nothing+ , _drgsMarker = Nothing+ , _drgsReplicationGroupId = Nothing } --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-drg1Marker :: Lens' DescribeReplicationGroups (Maybe Text)-drg1Marker = lens _drg1Marker (\s a -> s { _drg1Marker = a })---- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100.-drg1MaxRecords :: Lens' DescribeReplicationGroups (Maybe Int)-drg1MaxRecords = lens _drg1MaxRecords (\s a -> s { _drg1MaxRecords = a })+drgsMaxRecords :: Lens' DescribeReplicationGroups (Maybe Int)+drgsMaxRecords = lens _drgsMaxRecords (\ s a -> s{_drgsMaxRecords = a}); --- | The identifier for the replication group to be described. This parameter is--- not case sensitive.+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+drgsMarker :: Lens' DescribeReplicationGroups (Maybe Text)+drgsMarker = lens _drgsMarker (\ s a -> s{_drgsMarker = a});++-- | The identifier for the replication group to be described. This parameter+-- is not case sensitive. -- -- If you do not specify this parameter, information about all replication -- groups is returned.-drg1ReplicationGroupId :: Lens' DescribeReplicationGroups (Maybe Text)-drg1ReplicationGroupId =- lens _drg1ReplicationGroupId (\s a -> s { _drg1ReplicationGroupId = a })+drgsReplicationGroupId :: Lens' DescribeReplicationGroups (Maybe Text)+drgsReplicationGroupId = lens _drgsReplicationGroupId (\ s a -> s{_drgsReplicationGroupId = a}); -data DescribeReplicationGroupsResponse = DescribeReplicationGroupsResponse- { _drgrMarker :: Maybe Text- , _drgrReplicationGroups :: List "member" ReplicationGroup- } deriving (Eq, Read, Show)+instance AWSPager DescribeReplicationGroups where+ page rq rs+ | stop (rs ^. drgrsMarker) = Nothing+ | stop (rs ^. drgrsReplicationGroups) = Nothing+ | otherwise =+ Just $ rq & drgsMarker .~ rs ^. drgrsMarker --- | 'DescribeReplicationGroupsResponse' constructor.+instance AWSRequest DescribeReplicationGroups where+ type Sv DescribeReplicationGroups = ElastiCache+ type Rs DescribeReplicationGroups =+ DescribeReplicationGroupsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeReplicationGroupsResult"+ (\ s h x ->+ DescribeReplicationGroupsResponse' <$>+ (x .@? "Marker") <*>+ (x .@? "ReplicationGroups" .!@ mempty >>=+ may (parseXMLList "ReplicationGroup"))+ <*> (pure (fromEnum s)))++instance ToHeaders DescribeReplicationGroups where+ toHeaders = const mempty++instance ToPath DescribeReplicationGroups where+ toPath = const "/"++instance ToQuery DescribeReplicationGroups where+ toQuery DescribeReplicationGroups'{..}+ = mconcat+ ["Action" =:+ ("DescribeReplicationGroups" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "MaxRecords" =: _drgsMaxRecords,+ "Marker" =: _drgsMarker,+ "ReplicationGroupId" =: _drgsReplicationGroupId]++-- | Represents the output of a /DescribeReplicationGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeReplicationGroupsResponse' smart constructor.+data DescribeReplicationGroupsResponse = DescribeReplicationGroupsResponse'+ { _drgrsMarker :: !(Maybe Text)+ , _drgrsReplicationGroups :: !(Maybe [ReplicationGroup])+ , _drgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeReplicationGroupsResponse' with the minimum fields required to make a request. ----- * 'drgrMarker' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drgrReplicationGroups' @::@ ['ReplicationGroup']+-- * 'drgrsMarker' ---describeReplicationGroupsResponse :: DescribeReplicationGroupsResponse-describeReplicationGroupsResponse = DescribeReplicationGroupsResponse- { _drgrMarker = Nothing- , _drgrReplicationGroups = mempty+-- * 'drgrsReplicationGroups'+--+-- * 'drgrsStatus'+describeReplicationGroupsResponse+ :: Int -- ^ 'drgrsStatus'+ -> DescribeReplicationGroupsResponse+describeReplicationGroupsResponse pStatus_ =+ DescribeReplicationGroupsResponse'+ { _drgrsMarker = Nothing+ , _drgrsReplicationGroups = Nothing+ , _drgrsStatus = pStatus_ } -- | Provides an identifier to allow retrieval of paginated results.-drgrMarker :: Lens' DescribeReplicationGroupsResponse (Maybe Text)-drgrMarker = lens _drgrMarker (\s a -> s { _drgrMarker = a })+drgrsMarker :: Lens' DescribeReplicationGroupsResponse (Maybe Text)+drgrsMarker = lens _drgrsMarker (\ s a -> s{_drgrsMarker = a}); -- | A list of replication groups. Each item in the list contains detailed -- information about one replication group.-drgrReplicationGroups :: Lens' DescribeReplicationGroupsResponse [ReplicationGroup]-drgrReplicationGroups =- lens _drgrReplicationGroups (\s a -> s { _drgrReplicationGroups = a })- . _List--instance ToPath DescribeReplicationGroups where- toPath = const "/"--instance ToQuery DescribeReplicationGroups where- toQuery DescribeReplicationGroups{..} = mconcat- [ "Marker" =? _drg1Marker- , "MaxRecords" =? _drg1MaxRecords- , "ReplicationGroupId" =? _drg1ReplicationGroupId- ]--instance ToHeaders DescribeReplicationGroups--instance AWSRequest DescribeReplicationGroups where- type Sv DescribeReplicationGroups = ElastiCache- type Rs DescribeReplicationGroups = DescribeReplicationGroupsResponse-- request = post "DescribeReplicationGroups"- response = xmlResponse--instance FromXML DescribeReplicationGroupsResponse where- parseXML = withElement "DescribeReplicationGroupsResult" $ \x -> DescribeReplicationGroupsResponse- <$> x .@? "Marker"- <*> x .@? "ReplicationGroups" .!@ mempty+drgrsReplicationGroups :: Lens' DescribeReplicationGroupsResponse [ReplicationGroup]+drgrsReplicationGroups = lens _drgrsReplicationGroups (\ s a -> s{_drgrsReplicationGroups = a}) . _Default . _Coerce; -instance AWSPager DescribeReplicationGroups where- page rq rs- | stop (rs ^. drgrMarker) = Nothing- | otherwise = (\x -> rq & drg1Marker ?~ x)- <$> (rs ^. drgrMarker)+-- | The response status code.+drgrsStatus :: Lens' DescribeReplicationGroupsResponse Int+drgrsStatus = lens _drgrsStatus (\ s a -> s{_drgrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeReservedCacheNodes.hs view
@@ -1,102 +1,106 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeReservedCacheNodes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeReservedCacheNodes/ action returns information about reserved--- cache nodes for this account, or about a specified reserved cache node.+-- The /DescribeReservedCacheNodes/ action returns information about+-- reserved cache nodes for this account, or about a specified reserved+-- cache node. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodes.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodes.html AWS API Reference> for DescribeReservedCacheNodes.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeReservedCacheNodes (- -- * Request- DescribeReservedCacheNodes- -- ** Request constructor- , describeReservedCacheNodes- -- ** Request lenses+ -- * Creating a Request+ describeReservedCacheNodes+ , DescribeReservedCacheNodes+ -- * Request Lenses , drcnCacheNodeType- , drcnDuration- , drcnMarker- , drcnMaxRecords- , drcnOfferingType , drcnProductDescription+ , drcnMaxRecords+ , drcnMarker , drcnReservedCacheNodeId+ , drcnOfferingType+ , drcnDuration , drcnReservedCacheNodesOfferingId - -- * Response- , DescribeReservedCacheNodesResponse- -- ** Response constructor+ -- * Destructuring the Response , describeReservedCacheNodesResponse- -- ** Response lenses- , drcnrMarker- , drcnrReservedCacheNodes+ , DescribeReservedCacheNodesResponse+ -- * Response Lenses+ , drcnrsMarker+ , drcnrsReservedCacheNodes+ , drcnrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeReservedCacheNodes = DescribeReservedCacheNodes- { _drcnCacheNodeType :: Maybe Text- , _drcnDuration :: Maybe Text- , _drcnMarker :: Maybe Text- , _drcnMaxRecords :: Maybe Int- , _drcnOfferingType :: Maybe Text- , _drcnProductDescription :: Maybe Text- , _drcnReservedCacheNodeId :: Maybe Text- , _drcnReservedCacheNodesOfferingId :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeReservedCacheNodes' constructor.+-- | Represents the input of a /DescribeReservedCacheNodes/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeReservedCacheNodes' smart constructor.+data DescribeReservedCacheNodes = DescribeReservedCacheNodes'+ { _drcnCacheNodeType :: !(Maybe Text)+ , _drcnProductDescription :: !(Maybe Text)+ , _drcnMaxRecords :: !(Maybe Int)+ , _drcnMarker :: !(Maybe Text)+ , _drcnReservedCacheNodeId :: !(Maybe Text)+ , _drcnOfferingType :: !(Maybe Text)+ , _drcnDuration :: !(Maybe Text)+ , _drcnReservedCacheNodesOfferingId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeReservedCacheNodes' with the minimum fields required to make a request. ----- * 'drcnCacheNodeType' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drcnDuration' @::@ 'Maybe' 'Text'+-- * 'drcnCacheNodeType' ----- * 'drcnMarker' @::@ 'Maybe' 'Text'+-- * 'drcnProductDescription' ----- * 'drcnMaxRecords' @::@ 'Maybe' 'Int'+-- * 'drcnMaxRecords' ----- * 'drcnOfferingType' @::@ 'Maybe' 'Text'+-- * 'drcnMarker' ----- * 'drcnProductDescription' @::@ 'Maybe' 'Text'+-- * 'drcnReservedCacheNodeId' ----- * 'drcnReservedCacheNodeId' @::@ 'Maybe' 'Text'+-- * 'drcnOfferingType' ----- * 'drcnReservedCacheNodesOfferingId' @::@ 'Maybe' 'Text'+-- * 'drcnDuration' ---describeReservedCacheNodes :: DescribeReservedCacheNodes-describeReservedCacheNodes = DescribeReservedCacheNodes- { _drcnReservedCacheNodeId = Nothing+-- * 'drcnReservedCacheNodesOfferingId'+describeReservedCacheNodes+ :: DescribeReservedCacheNodes+describeReservedCacheNodes =+ DescribeReservedCacheNodes'+ { _drcnCacheNodeType = Nothing+ , _drcnProductDescription = Nothing+ , _drcnMaxRecords = Nothing+ , _drcnMarker = Nothing+ , _drcnReservedCacheNodeId = Nothing+ , _drcnOfferingType = Nothing+ , _drcnDuration = Nothing , _drcnReservedCacheNodesOfferingId = Nothing- , _drcnCacheNodeType = Nothing- , _drcnDuration = Nothing- , _drcnProductDescription = Nothing- , _drcnOfferingType = Nothing- , _drcnMaxRecords = Nothing- , _drcnMarker = Nothing } -- | The cache node type filter value. Use this parameter to show only those@@ -104,129 +108,164 @@ -- -- Valid node types are as follows: ----- General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge' ----- All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-drcnCacheNodeType :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnCacheNodeType =- lens _drcnCacheNodeType (\s a -> s { _drcnCacheNodeType = a })---- | The duration filter value, specified in years or seconds. Use this parameter--- to show only reservations for this duration.+-- __Notes:__ ----- Valid Values: '1 | 3 | 31536000 | 94608000'-drcnDuration :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnDuration = lens _drcnDuration (\s a -> s { _drcnDuration = a })+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+drcnCacheNodeType :: Lens' DescribeReservedCacheNodes (Maybe Text)+drcnCacheNodeType = lens _drcnCacheNodeType (\ s a -> s{_drcnCacheNodeType = a}); --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-drcnMarker :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnMarker = lens _drcnMarker (\s a -> s { _drcnMarker = a })+-- | The product description filter value. Use this parameter to show only+-- those reservations matching the specified product description.+drcnProductDescription :: Lens' DescribeReservedCacheNodes (Maybe Text)+drcnProductDescription = lens _drcnProductDescription (\ s a -> s{_drcnProductDescription = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. drcnMaxRecords :: Lens' DescribeReservedCacheNodes (Maybe Int)-drcnMaxRecords = lens _drcnMaxRecords (\s a -> s { _drcnMaxRecords = a })+drcnMaxRecords = lens _drcnMaxRecords (\ s a -> s{_drcnMaxRecords = a}); --- | The offering type filter value. Use this parameter to show only the available--- offerings matching the specified offering type.+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+drcnMarker :: Lens' DescribeReservedCacheNodes (Maybe Text)+drcnMarker = lens _drcnMarker (\ s a -> s{_drcnMarker = a});++-- | The reserved cache node identifier filter value. Use this parameter to+-- show only the reservation that matches the specified reservation ID.+drcnReservedCacheNodeId :: Lens' DescribeReservedCacheNodes (Maybe Text)+drcnReservedCacheNodeId = lens _drcnReservedCacheNodeId (\ s a -> s{_drcnReservedCacheNodeId = a});++-- | The offering type filter value. Use this parameter to show only the+-- available offerings matching the specified offering type. ----- Valid values: '"Light Utilization"|"Medium Utilization"|"Heavy Utilization"'+-- Valid values:+-- '\"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\"' drcnOfferingType :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnOfferingType = lens _drcnOfferingType (\s a -> s { _drcnOfferingType = a })---- | The product description filter value. Use this parameter to show only those--- reservations matching the specified product description.-drcnProductDescription :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnProductDescription =- lens _drcnProductDescription (\s a -> s { _drcnProductDescription = a })+drcnOfferingType = lens _drcnOfferingType (\ s a -> s{_drcnOfferingType = a}); --- | The reserved cache node identifier filter value. Use this parameter to show--- only the reservation that matches the specified reservation ID.-drcnReservedCacheNodeId :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnReservedCacheNodeId =- lens _drcnReservedCacheNodeId (\s a -> s { _drcnReservedCacheNodeId = a })+-- | The duration filter value, specified in years or seconds. Use this+-- parameter to show only reservations for this duration.+--+-- Valid Values: '1 | 3 | 31536000 | 94608000'+drcnDuration :: Lens' DescribeReservedCacheNodes (Maybe Text)+drcnDuration = lens _drcnDuration (\ s a -> s{_drcnDuration = a}); -- | The offering identifier filter value. Use this parameter to show only -- purchased reservations matching the specified offering identifier. drcnReservedCacheNodesOfferingId :: Lens' DescribeReservedCacheNodes (Maybe Text)-drcnReservedCacheNodesOfferingId =- lens _drcnReservedCacheNodesOfferingId- (\s a -> s { _drcnReservedCacheNodesOfferingId = a })--data DescribeReservedCacheNodesResponse = DescribeReservedCacheNodesResponse- { _drcnrMarker :: Maybe Text- , _drcnrReservedCacheNodes :: List "member" ReservedCacheNode- } deriving (Eq, Read, Show)+drcnReservedCacheNodesOfferingId = lens _drcnReservedCacheNodesOfferingId (\ s a -> s{_drcnReservedCacheNodesOfferingId = a}); --- | 'DescribeReservedCacheNodesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'drcnrMarker' @::@ 'Maybe' 'Text'------ * 'drcnrReservedCacheNodes' @::@ ['ReservedCacheNode']----describeReservedCacheNodesResponse :: DescribeReservedCacheNodesResponse-describeReservedCacheNodesResponse = DescribeReservedCacheNodesResponse- { _drcnrMarker = Nothing- , _drcnrReservedCacheNodes = mempty- }+instance AWSPager DescribeReservedCacheNodes where+ page rq rs+ | stop (rs ^. drcnrsMarker) = Nothing+ | stop (rs ^. drcnrsReservedCacheNodes) = Nothing+ | otherwise =+ Just $ rq & drcnMarker .~ rs ^. drcnrsMarker --- | Provides an identifier to allow retrieval of paginated results.-drcnrMarker :: Lens' DescribeReservedCacheNodesResponse (Maybe Text)-drcnrMarker = lens _drcnrMarker (\s a -> s { _drcnrMarker = a })+instance AWSRequest DescribeReservedCacheNodes where+ type Sv DescribeReservedCacheNodes = ElastiCache+ type Rs DescribeReservedCacheNodes =+ DescribeReservedCacheNodesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeReservedCacheNodesResult"+ (\ s h x ->+ DescribeReservedCacheNodesResponse' <$>+ (x .@? "Marker") <*>+ (x .@? "ReservedCacheNodes" .!@ mempty >>=+ may (parseXMLList "ReservedCacheNode"))+ <*> (pure (fromEnum s))) --- | A list of reserved cache nodes. Each element in the list contains detailed--- information about one node.-drcnrReservedCacheNodes :: Lens' DescribeReservedCacheNodesResponse [ReservedCacheNode]-drcnrReservedCacheNodes =- lens _drcnrReservedCacheNodes (\s a -> s { _drcnrReservedCacheNodes = a })- . _List+instance ToHeaders DescribeReservedCacheNodes where+ toHeaders = const mempty instance ToPath DescribeReservedCacheNodes where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeReservedCacheNodes where- toQuery DescribeReservedCacheNodes{..} = mconcat- [ "CacheNodeType" =? _drcnCacheNodeType- , "Duration" =? _drcnDuration- , "Marker" =? _drcnMarker- , "MaxRecords" =? _drcnMaxRecords- , "OfferingType" =? _drcnOfferingType- , "ProductDescription" =? _drcnProductDescription- , "ReservedCacheNodeId" =? _drcnReservedCacheNodeId- , "ReservedCacheNodesOfferingId" =? _drcnReservedCacheNodesOfferingId- ]+ toQuery DescribeReservedCacheNodes'{..}+ = mconcat+ ["Action" =:+ ("DescribeReservedCacheNodes" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheNodeType" =: _drcnCacheNodeType,+ "ProductDescription" =: _drcnProductDescription,+ "MaxRecords" =: _drcnMaxRecords,+ "Marker" =: _drcnMarker,+ "ReservedCacheNodeId" =: _drcnReservedCacheNodeId,+ "OfferingType" =: _drcnOfferingType,+ "Duration" =: _drcnDuration,+ "ReservedCacheNodesOfferingId" =:+ _drcnReservedCacheNodesOfferingId] -instance ToHeaders DescribeReservedCacheNodes+-- | Represents the output of a /DescribeReservedCacheNodes/ action.+--+-- /See:/ 'describeReservedCacheNodesResponse' smart constructor.+data DescribeReservedCacheNodesResponse = DescribeReservedCacheNodesResponse'+ { _drcnrsMarker :: !(Maybe Text)+ , _drcnrsReservedCacheNodes :: !(Maybe [ReservedCacheNode])+ , _drcnrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeReservedCacheNodes where- type Sv DescribeReservedCacheNodes = ElastiCache- type Rs DescribeReservedCacheNodes = DescribeReservedCacheNodesResponse+-- | Creates a value of 'DescribeReservedCacheNodesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drcnrsMarker'+--+-- * 'drcnrsReservedCacheNodes'+--+-- * 'drcnrsStatus'+describeReservedCacheNodesResponse+ :: Int -- ^ 'drcnrsStatus'+ -> DescribeReservedCacheNodesResponse+describeReservedCacheNodesResponse pStatus_ =+ DescribeReservedCacheNodesResponse'+ { _drcnrsMarker = Nothing+ , _drcnrsReservedCacheNodes = Nothing+ , _drcnrsStatus = pStatus_+ } - request = post "DescribeReservedCacheNodes"- response = xmlResponse+-- | Provides an identifier to allow retrieval of paginated results.+drcnrsMarker :: Lens' DescribeReservedCacheNodesResponse (Maybe Text)+drcnrsMarker = lens _drcnrsMarker (\ s a -> s{_drcnrsMarker = a}); -instance FromXML DescribeReservedCacheNodesResponse where- parseXML = withElement "DescribeReservedCacheNodesResult" $ \x -> DescribeReservedCacheNodesResponse- <$> x .@? "Marker"- <*> x .@? "ReservedCacheNodes" .!@ mempty+-- | A list of reserved cache nodes. Each element in the list contains+-- detailed information about one node.+drcnrsReservedCacheNodes :: Lens' DescribeReservedCacheNodesResponse [ReservedCacheNode]+drcnrsReservedCacheNodes = lens _drcnrsReservedCacheNodes (\ s a -> s{_drcnrsReservedCacheNodes = a}) . _Default . _Coerce; -instance AWSPager DescribeReservedCacheNodes where- page rq rs- | stop (rs ^. drcnrMarker) = Nothing- | otherwise = (\x -> rq & drcnMarker ?~ x)- <$> (rs ^. drcnrMarker)+-- | The response status code.+drcnrsStatus :: Lens' DescribeReservedCacheNodesResponse Int+drcnrsStatus = lens _drcnrsStatus (\ s a -> s{_drcnrsStatus = a});
gen/Network/AWS/ElastiCache/DescribeReservedCacheNodesOfferings.hs view
@@ -1,97 +1,100 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeReservedCacheNodesOfferings/ action lists available reserved cache--- node offerings.+-- The /DescribeReservedCacheNodesOfferings/ action lists available+-- reserved cache node offerings. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodesOfferings.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeReservedCacheNodesOfferings.html AWS API Reference> for DescribeReservedCacheNodesOfferings.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeReservedCacheNodesOfferings (- -- * Request- DescribeReservedCacheNodesOfferings- -- ** Request constructor- , describeReservedCacheNodesOfferings- -- ** Request lenses+ -- * Creating a Request+ describeReservedCacheNodesOfferings+ , DescribeReservedCacheNodesOfferings+ -- * Request Lenses , drcnoCacheNodeType- , drcnoDuration- , drcnoMarker+ , drcnoProductDescription , drcnoMaxRecords+ , drcnoMarker , drcnoOfferingType- , drcnoProductDescription+ , drcnoDuration , drcnoReservedCacheNodesOfferingId - -- * Response- , DescribeReservedCacheNodesOfferingsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeReservedCacheNodesOfferingsResponse- -- ** Response lenses- , drcnorMarker- , drcnorReservedCacheNodesOfferings+ , DescribeReservedCacheNodesOfferingsResponse+ -- * Response Lenses+ , drcnorsMarker+ , drcnorsReservedCacheNodesOfferings+ , drcnorsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeReservedCacheNodesOfferings = DescribeReservedCacheNodesOfferings- { _drcnoCacheNodeType :: Maybe Text- , _drcnoDuration :: Maybe Text- , _drcnoMarker :: Maybe Text- , _drcnoMaxRecords :: Maybe Int- , _drcnoOfferingType :: Maybe Text- , _drcnoProductDescription :: Maybe Text- , _drcnoReservedCacheNodesOfferingId :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeReservedCacheNodesOfferings' constructor.+-- | Represents the input of a /DescribeReservedCacheNodesOfferings/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeReservedCacheNodesOfferings' smart constructor.+data DescribeReservedCacheNodesOfferings = DescribeReservedCacheNodesOfferings'+ { _drcnoCacheNodeType :: !(Maybe Text)+ , _drcnoProductDescription :: !(Maybe Text)+ , _drcnoMaxRecords :: !(Maybe Int)+ , _drcnoMarker :: !(Maybe Text)+ , _drcnoOfferingType :: !(Maybe Text)+ , _drcnoDuration :: !(Maybe Text)+ , _drcnoReservedCacheNodesOfferingId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeReservedCacheNodesOfferings' with the minimum fields required to make a request. ----- * 'drcnoCacheNodeType' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drcnoDuration' @::@ 'Maybe' 'Text'+-- * 'drcnoCacheNodeType' ----- * 'drcnoMarker' @::@ 'Maybe' 'Text'+-- * 'drcnoProductDescription' ----- * 'drcnoMaxRecords' @::@ 'Maybe' 'Int'+-- * 'drcnoMaxRecords' ----- * 'drcnoOfferingType' @::@ 'Maybe' 'Text'+-- * 'drcnoMarker' ----- * 'drcnoProductDescription' @::@ 'Maybe' 'Text'+-- * 'drcnoOfferingType' ----- * 'drcnoReservedCacheNodesOfferingId' @::@ 'Maybe' 'Text'+-- * 'drcnoDuration' ---describeReservedCacheNodesOfferings :: DescribeReservedCacheNodesOfferings-describeReservedCacheNodesOfferings = DescribeReservedCacheNodesOfferings- { _drcnoReservedCacheNodesOfferingId = Nothing- , _drcnoCacheNodeType = Nothing- , _drcnoDuration = Nothing- , _drcnoProductDescription = Nothing- , _drcnoOfferingType = Nothing- , _drcnoMaxRecords = Nothing- , _drcnoMarker = Nothing+-- * 'drcnoReservedCacheNodesOfferingId'+describeReservedCacheNodesOfferings+ :: DescribeReservedCacheNodesOfferings+describeReservedCacheNodesOfferings =+ DescribeReservedCacheNodesOfferings'+ { _drcnoCacheNodeType = Nothing+ , _drcnoProductDescription = Nothing+ , _drcnoMaxRecords = Nothing+ , _drcnoMarker = Nothing+ , _drcnoOfferingType = Nothing+ , _drcnoDuration = Nothing+ , _drcnoReservedCacheNodesOfferingId = Nothing } -- | The cache node type filter value. Use this parameter to show only the@@ -99,126 +102,169 @@ -- -- Valid node types are as follows: ----- General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge' ----- All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-drcnoCacheNodeType :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoCacheNodeType =- lens _drcnoCacheNodeType (\s a -> s { _drcnoCacheNodeType = a })---- | Duration filter value, specified in years or seconds. Use this parameter to--- show only reservations for a given duration.+-- __Notes:__ ----- Valid Values: '1 | 3 | 31536000 | 94608000'-drcnoDuration :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoDuration = lens _drcnoDuration (\s a -> s { _drcnoDuration = a })+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+drcnoCacheNodeType :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)+drcnoCacheNodeType = lens _drcnoCacheNodeType (\ s a -> s{_drcnoCacheNodeType = a}); --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-drcnoMarker :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoMarker = lens _drcnoMarker (\s a -> s { _drcnoMarker = a })+-- | The product description filter value. Use this parameter to show only+-- the available offerings matching the specified product description.+drcnoProductDescription :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)+drcnoProductDescription = lens _drcnoProductDescription (\ s a -> s{_drcnoProductDescription = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 100 -- -- Constraints: minimum 20; maximum 100. drcnoMaxRecords :: Lens' DescribeReservedCacheNodesOfferings (Maybe Int)-drcnoMaxRecords = lens _drcnoMaxRecords (\s a -> s { _drcnoMaxRecords = a })+drcnoMaxRecords = lens _drcnoMaxRecords (\ s a -> s{_drcnoMaxRecords = a}); --- | The offering type filter value. Use this parameter to show only the available--- offerings matching the specified offering type.+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+drcnoMarker :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)+drcnoMarker = lens _drcnoMarker (\ s a -> s{_drcnoMarker = a});++-- | The offering type filter value. Use this parameter to show only the+-- available offerings matching the specified offering type. ----- Valid Values: '"Light Utilization"|"Medium Utilization"|"Heavy Utilization"'+-- Valid Values:+-- '\"Light Utilization\"|\"Medium Utilization\"|\"Heavy Utilization\"' drcnoOfferingType :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoOfferingType =- lens _drcnoOfferingType (\s a -> s { _drcnoOfferingType = a })+drcnoOfferingType = lens _drcnoOfferingType (\ s a -> s{_drcnoOfferingType = a}); --- | The product description filter value. Use this parameter to show only the--- available offerings matching the specified product description.-drcnoProductDescription :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoProductDescription =- lens _drcnoProductDescription (\s a -> s { _drcnoProductDescription = a })+-- | Duration filter value, specified in years or seconds. Use this parameter+-- to show only reservations for a given duration.+--+-- Valid Values: '1 | 3 | 31536000 | 94608000'+drcnoDuration :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)+drcnoDuration = lens _drcnoDuration (\ s a -> s{_drcnoDuration = a}); --- | The offering identifier filter value. Use this parameter to show only the--- available offering that matches the specified reservation identifier.+-- | The offering identifier filter value. Use this parameter to show only+-- the available offering that matches the specified reservation+-- identifier. -- -- Example: '438012d3-4052-4cc7-b2e3-8d3372e0e706' drcnoReservedCacheNodesOfferingId :: Lens' DescribeReservedCacheNodesOfferings (Maybe Text)-drcnoReservedCacheNodesOfferingId =- lens _drcnoReservedCacheNodesOfferingId- (\s a -> s { _drcnoReservedCacheNodesOfferingId = a })+drcnoReservedCacheNodesOfferingId = lens _drcnoReservedCacheNodesOfferingId (\ s a -> s{_drcnoReservedCacheNodesOfferingId = a}); -data DescribeReservedCacheNodesOfferingsResponse = DescribeReservedCacheNodesOfferingsResponse- { _drcnorMarker :: Maybe Text- , _drcnorReservedCacheNodesOfferings :: List "member" ReservedCacheNodesOffering- } deriving (Eq, Read, Show)+instance AWSPager DescribeReservedCacheNodesOfferings+ where+ page rq rs+ | stop (rs ^. drcnorsMarker) = Nothing+ | stop (rs ^. drcnorsReservedCacheNodesOfferings) =+ Nothing+ | otherwise =+ Just $ rq & drcnoMarker .~ rs ^. drcnorsMarker --- | 'DescribeReservedCacheNodesOfferingsResponse' constructor.+instance AWSRequest+ DescribeReservedCacheNodesOfferings where+ type Sv DescribeReservedCacheNodesOfferings =+ ElastiCache+ type Rs DescribeReservedCacheNodesOfferings =+ DescribeReservedCacheNodesOfferingsResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "DescribeReservedCacheNodesOfferingsResult"+ (\ s h x ->+ DescribeReservedCacheNodesOfferingsResponse' <$>+ (x .@? "Marker") <*>+ (x .@? "ReservedCacheNodesOfferings" .!@ mempty >>=+ may (parseXMLList "ReservedCacheNodesOffering"))+ <*> (pure (fromEnum s)))++instance ToHeaders+ DescribeReservedCacheNodesOfferings where+ toHeaders = const mempty++instance ToPath DescribeReservedCacheNodesOfferings+ where+ toPath = const "/"++instance ToQuery DescribeReservedCacheNodesOfferings+ where+ toQuery DescribeReservedCacheNodesOfferings'{..}+ = mconcat+ ["Action" =:+ ("DescribeReservedCacheNodesOfferings" ::+ ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheNodeType" =: _drcnoCacheNodeType,+ "ProductDescription" =: _drcnoProductDescription,+ "MaxRecords" =: _drcnoMaxRecords,+ "Marker" =: _drcnoMarker,+ "OfferingType" =: _drcnoOfferingType,+ "Duration" =: _drcnoDuration,+ "ReservedCacheNodesOfferingId" =:+ _drcnoReservedCacheNodesOfferingId]++-- | Represents the output of a /DescribeReservedCacheNodesOfferings/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeReservedCacheNodesOfferingsResponse' smart constructor.+data DescribeReservedCacheNodesOfferingsResponse = DescribeReservedCacheNodesOfferingsResponse'+ { _drcnorsMarker :: !(Maybe Text)+ , _drcnorsReservedCacheNodesOfferings :: !(Maybe [ReservedCacheNodesOffering])+ , _drcnorsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeReservedCacheNodesOfferingsResponse' with the minimum fields required to make a request. ----- * 'drcnorMarker' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'drcnorReservedCacheNodesOfferings' @::@ ['ReservedCacheNodesOffering']+-- * 'drcnorsMarker' ---describeReservedCacheNodesOfferingsResponse :: DescribeReservedCacheNodesOfferingsResponse-describeReservedCacheNodesOfferingsResponse = DescribeReservedCacheNodesOfferingsResponse- { _drcnorMarker = Nothing- , _drcnorReservedCacheNodesOfferings = mempty+-- * 'drcnorsReservedCacheNodesOfferings'+--+-- * 'drcnorsStatus'+describeReservedCacheNodesOfferingsResponse+ :: Int -- ^ 'drcnorsStatus'+ -> DescribeReservedCacheNodesOfferingsResponse+describeReservedCacheNodesOfferingsResponse pStatus_ =+ DescribeReservedCacheNodesOfferingsResponse'+ { _drcnorsMarker = Nothing+ , _drcnorsReservedCacheNodesOfferings = Nothing+ , _drcnorsStatus = pStatus_ } -- | Provides an identifier to allow retrieval of paginated results.-drcnorMarker :: Lens' DescribeReservedCacheNodesOfferingsResponse (Maybe Text)-drcnorMarker = lens _drcnorMarker (\s a -> s { _drcnorMarker = a })---- | A list of reserved cache node offerings. Each element in the list contains--- detailed information about one offering.-drcnorReservedCacheNodesOfferings :: Lens' DescribeReservedCacheNodesOfferingsResponse [ReservedCacheNodesOffering]-drcnorReservedCacheNodesOfferings =- lens _drcnorReservedCacheNodesOfferings- (\s a -> s { _drcnorReservedCacheNodesOfferings = a })- . _List--instance ToPath DescribeReservedCacheNodesOfferings where- toPath = const "/"--instance ToQuery DescribeReservedCacheNodesOfferings where- toQuery DescribeReservedCacheNodesOfferings{..} = mconcat- [ "CacheNodeType" =? _drcnoCacheNodeType- , "Duration" =? _drcnoDuration- , "Marker" =? _drcnoMarker- , "MaxRecords" =? _drcnoMaxRecords- , "OfferingType" =? _drcnoOfferingType- , "ProductDescription" =? _drcnoProductDescription- , "ReservedCacheNodesOfferingId" =? _drcnoReservedCacheNodesOfferingId- ]--instance ToHeaders DescribeReservedCacheNodesOfferings--instance AWSRequest DescribeReservedCacheNodesOfferings where- type Sv DescribeReservedCacheNodesOfferings = ElastiCache- type Rs DescribeReservedCacheNodesOfferings = DescribeReservedCacheNodesOfferingsResponse-- request = post "DescribeReservedCacheNodesOfferings"- response = xmlResponse+drcnorsMarker :: Lens' DescribeReservedCacheNodesOfferingsResponse (Maybe Text)+drcnorsMarker = lens _drcnorsMarker (\ s a -> s{_drcnorsMarker = a}); -instance FromXML DescribeReservedCacheNodesOfferingsResponse where- parseXML = withElement "DescribeReservedCacheNodesOfferingsResult" $ \x -> DescribeReservedCacheNodesOfferingsResponse- <$> x .@? "Marker"- <*> x .@? "ReservedCacheNodesOfferings" .!@ mempty+-- | A list of reserved cache node offerings. Each element in the list+-- contains detailed information about one offering.+drcnorsReservedCacheNodesOfferings :: Lens' DescribeReservedCacheNodesOfferingsResponse [ReservedCacheNodesOffering]+drcnorsReservedCacheNodesOfferings = lens _drcnorsReservedCacheNodesOfferings (\ s a -> s{_drcnorsReservedCacheNodesOfferings = a}) . _Default . _Coerce; -instance AWSPager DescribeReservedCacheNodesOfferings where- page rq rs- | stop (rs ^. drcnorMarker) = Nothing- | otherwise = (\x -> rq & drcnoMarker ?~ x)- <$> (rs ^. drcnorMarker)+-- | The response status code.+drcnorsStatus :: Lens' DescribeReservedCacheNodesOfferingsResponse Int+drcnorsStatus = lens _drcnorsStatus (\ s a -> s{_drcnorsStatus = a});
gen/Network/AWS/ElastiCache/DescribeSnapshots.hs view
@@ -1,184 +1,204 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.DescribeSnapshots--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /DescribeSnapshots/ action returns information about cache cluster--- snapshots. By default, /DescribeSnapshots/ lists all of your snapshots; it can--- optionally describe a single snapshot, or just the snapshots associated with--- a particular cache cluster.+-- The /DescribeSnapshots/ action returns information about cache cluster+-- snapshots. By default, /DescribeSnapshots/ lists all of your snapshots;+-- it can optionally describe a single snapshot, or just the snapshots+-- associated with a particular cache cluster. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeSnapshots.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_DescribeSnapshots.html AWS API Reference> for DescribeSnapshots.+--+-- This operation returns paginated results. module Network.AWS.ElastiCache.DescribeSnapshots (- -- * Request- DescribeSnapshots- -- ** Request constructor- , describeSnapshots- -- ** Request lenses+ -- * Creating a Request+ describeSnapshots+ , DescribeSnapshots+ -- * Request Lenses , dsCacheClusterId- , dsMarker , dsMaxRecords+ , dsMarker , dsSnapshotName , dsSnapshotSource - -- * Response- , DescribeSnapshotsResponse- -- ** Response constructor+ -- * Destructuring the Response , describeSnapshotsResponse- -- ** Response lenses- , dsrMarker- , dsrSnapshots+ , DescribeSnapshotsResponse+ -- * Response Lenses+ , dssrsSnapshots+ , dssrsMarker+ , dssrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data DescribeSnapshots = DescribeSnapshots- { _dsCacheClusterId :: Maybe Text- , _dsMarker :: Maybe Text- , _dsMaxRecords :: Maybe Int- , _dsSnapshotName :: Maybe Text- , _dsSnapshotSource :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'DescribeSnapshots' constructor.+-- | Represents the input of a /DescribeSnapshotsMessage/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'describeSnapshots' smart constructor.+data DescribeSnapshots = DescribeSnapshots'+ { _dsCacheClusterId :: !(Maybe Text)+ , _dsMaxRecords :: !(Maybe Int)+ , _dsMarker :: !(Maybe Text)+ , _dsSnapshotName :: !(Maybe Text)+ , _dsSnapshotSource :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DescribeSnapshots' with the minimum fields required to make a request. ----- * 'dsCacheClusterId' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'dsMarker' @::@ 'Maybe' 'Text'+-- * 'dsCacheClusterId' ----- * 'dsMaxRecords' @::@ 'Maybe' 'Int'+-- * 'dsMaxRecords' ----- * 'dsSnapshotName' @::@ 'Maybe' 'Text'+-- * 'dsMarker' ----- * 'dsSnapshotSource' @::@ 'Maybe' 'Text'+-- * 'dsSnapshotName' ---describeSnapshots :: DescribeSnapshots-describeSnapshots = DescribeSnapshots+-- * 'dsSnapshotSource'+describeSnapshots+ :: DescribeSnapshots+describeSnapshots =+ DescribeSnapshots' { _dsCacheClusterId = Nothing- , _dsSnapshotName = Nothing+ , _dsMaxRecords = Nothing+ , _dsMarker = Nothing+ , _dsSnapshotName = Nothing , _dsSnapshotSource = Nothing- , _dsMarker = Nothing- , _dsMaxRecords = Nothing } -- | A user-supplied cluster identifier. If this parameter is specified, only -- snapshots associated with that specific cache cluster will be described. dsCacheClusterId :: Lens' DescribeSnapshots (Maybe Text)-dsCacheClusterId = lens _dsCacheClusterId (\s a -> s { _dsCacheClusterId = a })---- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dsMarker :: Lens' DescribeSnapshots (Maybe Text)-dsMarker = lens _dsMarker (\s a -> s { _dsMarker = a })+dsCacheClusterId = lens _dsCacheClusterId (\ s a -> s{_dsCacheClusterId = a}); --- | The maximum number of records to include in the response. If more records--- exist than the specified 'MaxRecords' value, a marker is included in the--- response so that the remaining results can be retrieved.+-- | The maximum number of records to include in the response. If more+-- records exist than the specified 'MaxRecords' value, a marker is+-- included in the response so that the remaining results can be retrieved. -- -- Default: 50 -- -- Constraints: minimum 20; maximum 50. dsMaxRecords :: Lens' DescribeSnapshots (Maybe Int)-dsMaxRecords = lens _dsMaxRecords (\s a -> s { _dsMaxRecords = a })+dsMaxRecords = lens _dsMaxRecords (\ s a -> s{_dsMaxRecords = a}); --- | A user-supplied name of the snapshot. If this parameter is specified, only--- this snapshot will be described.+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dsMarker :: Lens' DescribeSnapshots (Maybe Text)+dsMarker = lens _dsMarker (\ s a -> s{_dsMarker = a});++-- | A user-supplied name of the snapshot. If this parameter is specified,+-- only this snapshot will be described. dsSnapshotName :: Lens' DescribeSnapshots (Maybe Text)-dsSnapshotName = lens _dsSnapshotName (\s a -> s { _dsSnapshotName = a })+dsSnapshotName = lens _dsSnapshotName (\ s a -> s{_dsSnapshotName = a}); --- | If set to 'system', the output shows snapshots that were automatically created--- by ElastiCache. If set to 'user' the output shows snapshots that were manually--- created. If omitted, the output shows both automatically and manually created--- snapshots.+-- | If set to 'system', the output shows snapshots that were automatically+-- created by ElastiCache. If set to 'user' the output shows snapshots that+-- were manually created. If omitted, the output shows both automatically+-- and manually created snapshots. dsSnapshotSource :: Lens' DescribeSnapshots (Maybe Text)-dsSnapshotSource = lens _dsSnapshotSource (\s a -> s { _dsSnapshotSource = a })--data DescribeSnapshotsResponse = DescribeSnapshotsResponse- { _dsrMarker :: Maybe Text- , _dsrSnapshots :: List "member" Snapshot- } deriving (Eq, Read, Show)+dsSnapshotSource = lens _dsSnapshotSource (\ s a -> s{_dsSnapshotSource = a}); --- | 'DescribeSnapshotsResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'dsrMarker' @::@ 'Maybe' 'Text'------ * 'dsrSnapshots' @::@ ['Snapshot']----describeSnapshotsResponse :: DescribeSnapshotsResponse-describeSnapshotsResponse = DescribeSnapshotsResponse- { _dsrMarker = Nothing- , _dsrSnapshots = mempty- }+instance AWSPager DescribeSnapshots where+ page rq rs+ | stop (rs ^. dssrsMarker) = Nothing+ | stop (rs ^. dssrsSnapshots) = Nothing+ | otherwise =+ Just $ rq & dsMarker .~ rs ^. dssrsMarker --- | An optional marker returned from a prior request. Use this marker for--- pagination of results from this action. If this parameter is specified, the--- response includes only records beyond the marker, up to the value specified--- by /MaxRecords/.-dsrMarker :: Lens' DescribeSnapshotsResponse (Maybe Text)-dsrMarker = lens _dsrMarker (\s a -> s { _dsrMarker = a })+instance AWSRequest DescribeSnapshots where+ type Sv DescribeSnapshots = ElastiCache+ type Rs DescribeSnapshots = DescribeSnapshotsResponse+ request = postQuery+ response+ = receiveXMLWrapper "DescribeSnapshotsResult"+ (\ s h x ->+ DescribeSnapshotsResponse' <$>+ (x .@? "Snapshots" .!@ mempty >>=+ may (parseXMLList "Snapshot"))+ <*> (x .@? "Marker")+ <*> (pure (fromEnum s))) --- | A list of snapshots. Each item in the list contains detailed information--- about one snapshot.-dsrSnapshots :: Lens' DescribeSnapshotsResponse [Snapshot]-dsrSnapshots = lens _dsrSnapshots (\s a -> s { _dsrSnapshots = a }) . _List+instance ToHeaders DescribeSnapshots where+ toHeaders = const mempty instance ToPath DescribeSnapshots where- toPath = const "/"+ toPath = const "/" instance ToQuery DescribeSnapshots where- toQuery DescribeSnapshots{..} = mconcat- [ "CacheClusterId" =? _dsCacheClusterId- , "Marker" =? _dsMarker- , "MaxRecords" =? _dsMaxRecords- , "SnapshotName" =? _dsSnapshotName- , "SnapshotSource" =? _dsSnapshotSource- ]+ toQuery DescribeSnapshots'{..}+ = mconcat+ ["Action" =: ("DescribeSnapshots" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheClusterId" =: _dsCacheClusterId,+ "MaxRecords" =: _dsMaxRecords, "Marker" =: _dsMarker,+ "SnapshotName" =: _dsSnapshotName,+ "SnapshotSource" =: _dsSnapshotSource] -instance ToHeaders DescribeSnapshots+-- | Represents the output of a /DescribeSnapshots/ action.+--+-- /See:/ 'describeSnapshotsResponse' smart constructor.+data DescribeSnapshotsResponse = DescribeSnapshotsResponse'+ { _dssrsSnapshots :: !(Maybe [Snapshot])+ , _dssrsMarker :: !(Maybe Text)+ , _dssrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DescribeSnapshots where- type Sv DescribeSnapshots = ElastiCache- type Rs DescribeSnapshots = DescribeSnapshotsResponse+-- | Creates a value of 'DescribeSnapshotsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dssrsSnapshots'+--+-- * 'dssrsMarker'+--+-- * 'dssrsStatus'+describeSnapshotsResponse+ :: Int -- ^ 'dssrsStatus'+ -> DescribeSnapshotsResponse+describeSnapshotsResponse pStatus_ =+ DescribeSnapshotsResponse'+ { _dssrsSnapshots = Nothing+ , _dssrsMarker = Nothing+ , _dssrsStatus = pStatus_+ } - request = post "DescribeSnapshots"- response = xmlResponse+-- | A list of snapshots. Each item in the list contains detailed information+-- about one snapshot.+dssrsSnapshots :: Lens' DescribeSnapshotsResponse [Snapshot]+dssrsSnapshots = lens _dssrsSnapshots (\ s a -> s{_dssrsSnapshots = a}) . _Default . _Coerce; -instance FromXML DescribeSnapshotsResponse where- parseXML = withElement "DescribeSnapshotsResult" $ \x -> DescribeSnapshotsResponse- <$> x .@? "Marker"- <*> x .@? "Snapshots" .!@ mempty+-- | An optional marker returned from a prior request. Use this marker for+-- pagination of results from this action. If this parameter is specified,+-- the response includes only records beyond the marker, up to the value+-- specified by /MaxRecords/.+dssrsMarker :: Lens' DescribeSnapshotsResponse (Maybe Text)+dssrsMarker = lens _dssrsMarker (\ s a -> s{_dssrsMarker = a}); -instance AWSPager DescribeSnapshots where- page rq rs- | stop (rs ^. dsrMarker) = Nothing- | otherwise = (\x -> rq & dsMarker ?~ x)- <$> (rs ^. dsrMarker)+-- | The response status code.+dssrsStatus :: Lens' DescribeSnapshotsResponse Int+dssrsStatus = lens _dssrsStatus (\ s a -> s{_dssrsStatus = a});
gen/Network/AWS/ElastiCache/ListTagsForResource.hs view
@@ -1,120 +1,96 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ListTagsForResource--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ListTagsForResource/ action lists all cost allocation tags currently on--- the named resource. A /cost allocation tag/ is a key-value pair where the key--- is case-sensitive and the value is optional. Cost allocation tags can be used--- to categorize and track your AWS costs.+-- The /ListTagsForResource/ action lists all cost allocation tags+-- currently on the named resource. A /cost allocation tag/ is a key-value+-- pair where the key is case-sensitive and the value is optional. Cost+-- allocation tags can be used to categorize and track your AWS costs. -- -- You can have a maximum of 10 cost allocation tags on an ElastiCache--- resource. For more information, see <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html Using Cost Allocation Tags in AmazonElastiCache>.+-- resource. For more information, see+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html Using Cost Allocation Tags in Amazon ElastiCache>. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ListTagsForResource.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ListTagsForResource.html AWS API Reference> for ListTagsForResource. module Network.AWS.ElastiCache.ListTagsForResource (- -- * Request- ListTagsForResource- -- ** Request constructor- , listTagsForResource- -- ** Request lenses+ -- * Creating a Request+ listTagsForResource+ , ListTagsForResource+ -- * Request Lenses , ltfrResourceName - -- * Response- , ListTagsForResourceResponse- -- ** Response constructor- , listTagsForResourceResponse- -- ** Response lenses- , ltfrrTagList+ -- * Destructuring the Response+ , tagListMessage+ , TagListMessage+ -- * Response Lenses+ , tlmTagList ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response -newtype ListTagsForResource = ListTagsForResource+-- | The input parameters for the /ListTagsForResource/ action.+--+-- /See:/ 'listTagsForResource' smart constructor.+newtype ListTagsForResource = ListTagsForResource' { _ltfrResourceName :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListTagsForResource' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'ListTagsForResource' with the minimum fields required to make a request. ----- * 'ltfrResourceName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---listTagsForResource :: Text -- ^ 'ltfrResourceName'- -> ListTagsForResource-listTagsForResource p1 = ListTagsForResource- { _ltfrResourceName = p1+-- * 'ltfrResourceName'+listTagsForResource+ :: Text -- ^ 'ltfrResourceName'+ -> ListTagsForResource+listTagsForResource pResourceName_ =+ ListTagsForResource'+ { _ltfrResourceName = pResourceName_ } --- | The name of the resource for which you want the list of tags, for example 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'.+-- | The name of the resource for which you want the list of tags, for+-- example 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'. ltfrResourceName :: Lens' ListTagsForResource Text-ltfrResourceName = lens _ltfrResourceName (\s a -> s { _ltfrResourceName = a })--newtype ListTagsForResourceResponse = ListTagsForResourceResponse- { _ltfrrTagList :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList ListTagsForResourceResponse where- type Item ListTagsForResourceResponse = Tag-- fromList = ListTagsForResourceResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _ltfrrTagList+ltfrResourceName = lens _ltfrResourceName (\ s a -> s{_ltfrResourceName = a}); --- | 'ListTagsForResourceResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ltfrrTagList' @::@ ['Tag']----listTagsForResourceResponse :: ListTagsForResourceResponse-listTagsForResourceResponse = ListTagsForResourceResponse- { _ltfrrTagList = mempty- }+instance AWSRequest ListTagsForResource where+ type Sv ListTagsForResource = ElastiCache+ type Rs ListTagsForResource = TagListMessage+ request = postQuery+ response+ = receiveXMLWrapper "ListTagsForResourceResult"+ (\ s h x -> parseXML x) --- | A list of cost allocation tags as key-value pairs.-ltfrrTagList :: Lens' ListTagsForResourceResponse [Tag]-ltfrrTagList = lens _ltfrrTagList (\s a -> s { _ltfrrTagList = a }) . _List+instance ToHeaders ListTagsForResource where+ toHeaders = const mempty instance ToPath ListTagsForResource where- toPath = const "/"+ toPath = const "/" instance ToQuery ListTagsForResource where- toQuery ListTagsForResource{..} = mconcat- [ "ResourceName" =? _ltfrResourceName- ]--instance ToHeaders ListTagsForResource--instance AWSRequest ListTagsForResource where- type Sv ListTagsForResource = ElastiCache- type Rs ListTagsForResource = ListTagsForResourceResponse-- request = post "ListTagsForResource"- response = xmlResponse--instance FromXML ListTagsForResourceResponse where- parseXML = withElement "ListTagsForResourceResult" $ \x -> ListTagsForResourceResponse- <$> x .@? "TagList" .!@ mempty+ toQuery ListTagsForResource'{..}+ = mconcat+ ["Action" =: ("ListTagsForResource" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "ResourceName" =: _ltfrResourceName]
gen/Network/AWS/ElastiCache/ModifyCacheCluster.hs view
@@ -1,303 +1,328 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ModifyCacheCluster--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ModifyCacheCluster/ action modifies the settings for a cache cluster. You--- can use this action to change one or more cluster configuration parameters by--- specifying the parameters and the new values.+-- The /ModifyCacheCluster/ action modifies the settings for a cache+-- cluster. You can use this action to change one or more cluster+-- configuration parameters by specifying the parameters and the new+-- values. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheCluster.html AWS API Reference> for ModifyCacheCluster. module Network.AWS.ElastiCache.ModifyCacheCluster (- -- * Request- ModifyCacheCluster- -- ** Request constructor- , modifyCacheCluster- -- ** Request lenses- , mccAZMode- , mccApplyImmediately+ -- * Creating a Request+ modifyCacheCluster+ , ModifyCacheCluster+ -- * Request Lenses+ , mccEngineVersion+ , mccSecurityGroupIds , mccAutoMinorVersionUpgrade- , mccCacheClusterId- , mccCacheNodeIdsToRemove , mccCacheParameterGroupName- , mccCacheSecurityGroupNames- , mccEngineVersion , mccNewAvailabilityZones- , mccNotificationTopicArn- , mccNotificationTopicStatus- , mccNumCacheNodes+ , mccSnapshotWindow , mccPreferredMaintenanceWindow- , mccSecurityGroupIds+ , mccCacheNodeIdsToRemove , mccSnapshotRetentionLimit- , mccSnapshotWindow+ , mccAZMode+ , mccNotificationTopicStatus+ , mccApplyImmediately+ , mccNotificationTopicARN+ , mccNumCacheNodes+ , mccCacheSecurityGroupNames+ , mccCacheClusterId - -- * Response- , ModifyCacheClusterResponse- -- ** Response constructor+ -- * Destructuring the Response , modifyCacheClusterResponse- -- ** Response lenses- , mccrCacheCluster+ , ModifyCacheClusterResponse+ -- * Response Lenses+ , mccrsCacheCluster+ , mccrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data ModifyCacheCluster = ModifyCacheCluster- { _mccAZMode :: Maybe AZMode- , _mccApplyImmediately :: Maybe Bool- , _mccAutoMinorVersionUpgrade :: Maybe Bool- , _mccCacheClusterId :: Text- , _mccCacheNodeIdsToRemove :: List "member" Text- , _mccCacheParameterGroupName :: Maybe Text- , _mccCacheSecurityGroupNames :: List "member" Text- , _mccEngineVersion :: Maybe Text- , _mccNewAvailabilityZones :: List "member" Text- , _mccNotificationTopicArn :: Maybe Text- , _mccNotificationTopicStatus :: Maybe Text- , _mccNumCacheNodes :: Maybe Int- , _mccPreferredMaintenanceWindow :: Maybe Text- , _mccSecurityGroupIds :: List "member" Text- , _mccSnapshotRetentionLimit :: Maybe Int- , _mccSnapshotWindow :: Maybe Text- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'ModifyCacheCluster' constructor.+-- | Represents the input of a /ModifyCacheCluster/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'modifyCacheCluster' smart constructor.+data ModifyCacheCluster = ModifyCacheCluster'+ { _mccEngineVersion :: !(Maybe Text)+ , _mccSecurityGroupIds :: !(Maybe [Text])+ , _mccAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _mccCacheParameterGroupName :: !(Maybe Text)+ , _mccNewAvailabilityZones :: !(Maybe [Text])+ , _mccSnapshotWindow :: !(Maybe Text)+ , _mccPreferredMaintenanceWindow :: !(Maybe Text)+ , _mccCacheNodeIdsToRemove :: !(Maybe [Text])+ , _mccSnapshotRetentionLimit :: !(Maybe Int)+ , _mccAZMode :: !(Maybe AZMode)+ , _mccNotificationTopicStatus :: !(Maybe Text)+ , _mccApplyImmediately :: !(Maybe Bool)+ , _mccNotificationTopicARN :: !(Maybe Text)+ , _mccNumCacheNodes :: !(Maybe Int)+ , _mccCacheSecurityGroupNames :: !(Maybe [Text])+ , _mccCacheClusterId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyCacheCluster' with the minimum fields required to make a request. ----- * 'mccAZMode' @::@ 'Maybe' 'AZMode'+-- Use one of the following lenses to modify other fields as desired: ----- * 'mccApplyImmediately' @::@ 'Maybe' 'Bool'+-- * 'mccEngineVersion' ----- * 'mccAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'+-- * 'mccSecurityGroupIds' ----- * 'mccCacheClusterId' @::@ 'Text'+-- * 'mccAutoMinorVersionUpgrade' ----- * 'mccCacheNodeIdsToRemove' @::@ ['Text']+-- * 'mccCacheParameterGroupName' ----- * 'mccCacheParameterGroupName' @::@ 'Maybe' 'Text'+-- * 'mccNewAvailabilityZones' ----- * 'mccCacheSecurityGroupNames' @::@ ['Text']+-- * 'mccSnapshotWindow' ----- * 'mccEngineVersion' @::@ 'Maybe' 'Text'+-- * 'mccPreferredMaintenanceWindow' ----- * 'mccNewAvailabilityZones' @::@ ['Text']+-- * 'mccCacheNodeIdsToRemove' ----- * 'mccNotificationTopicArn' @::@ 'Maybe' 'Text'+-- * 'mccSnapshotRetentionLimit' ----- * 'mccNotificationTopicStatus' @::@ 'Maybe' 'Text'+-- * 'mccAZMode' ----- * 'mccNumCacheNodes' @::@ 'Maybe' 'Int'+-- * 'mccNotificationTopicStatus' ----- * 'mccPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'+-- * 'mccApplyImmediately' ----- * 'mccSecurityGroupIds' @::@ ['Text']+-- * 'mccNotificationTopicARN' ----- * 'mccSnapshotRetentionLimit' @::@ 'Maybe' 'Int'+-- * 'mccNumCacheNodes' ----- * 'mccSnapshotWindow' @::@ 'Maybe' 'Text'+-- * 'mccCacheSecurityGroupNames' ---modifyCacheCluster :: Text -- ^ 'mccCacheClusterId'- -> ModifyCacheCluster-modifyCacheCluster p1 = ModifyCacheCluster- { _mccCacheClusterId = p1- , _mccNumCacheNodes = Nothing- , _mccCacheNodeIdsToRemove = mempty- , _mccAZMode = Nothing- , _mccNewAvailabilityZones = mempty- , _mccCacheSecurityGroupNames = mempty- , _mccSecurityGroupIds = mempty+-- * 'mccCacheClusterId'+modifyCacheCluster+ :: Text -- ^ 'mccCacheClusterId'+ -> ModifyCacheCluster+modifyCacheCluster pCacheClusterId_ =+ ModifyCacheCluster'+ { _mccEngineVersion = Nothing+ , _mccSecurityGroupIds = Nothing+ , _mccAutoMinorVersionUpgrade = Nothing+ , _mccCacheParameterGroupName = Nothing+ , _mccNewAvailabilityZones = Nothing+ , _mccSnapshotWindow = Nothing , _mccPreferredMaintenanceWindow = Nothing- , _mccNotificationTopicArn = Nothing- , _mccCacheParameterGroupName = Nothing- , _mccNotificationTopicStatus = Nothing- , _mccApplyImmediately = Nothing- , _mccEngineVersion = Nothing- , _mccAutoMinorVersionUpgrade = Nothing- , _mccSnapshotRetentionLimit = Nothing- , _mccSnapshotWindow = Nothing+ , _mccCacheNodeIdsToRemove = Nothing+ , _mccSnapshotRetentionLimit = Nothing+ , _mccAZMode = Nothing+ , _mccNotificationTopicStatus = Nothing+ , _mccApplyImmediately = Nothing+ , _mccNotificationTopicARN = Nothing+ , _mccNumCacheNodes = Nothing+ , _mccCacheSecurityGroupNames = Nothing+ , _mccCacheClusterId = pCacheClusterId_ } --- | Specifies whether the new nodes in this Memcached cache cluster are all--- created in a single Availability Zone or created across multiple Availability--- Zones.+-- | The upgraded version of the cache engine to be run on the cache nodes.+mccEngineVersion :: Lens' ModifyCacheCluster (Maybe Text)+mccEngineVersion = lens _mccEngineVersion (\ s a -> s{_mccEngineVersion = a});++-- | Specifies the VPC Security Groups associated with the cache cluster. ----- Valid values: 'single-az' | 'cross-az'.+-- This parameter can be used only with clusters that are created in an+-- Amazon Virtual Private Cloud (VPC).+mccSecurityGroupIds :: Lens' ModifyCacheCluster [Text]+mccSecurityGroupIds = lens _mccSecurityGroupIds (\ s a -> s{_mccSecurityGroupIds = a}) . _Default . _Coerce;++-- | This parameter is currently disabled.+mccAutoMinorVersionUpgrade :: Lens' ModifyCacheCluster (Maybe Bool)+mccAutoMinorVersionUpgrade = lens _mccAutoMinorVersionUpgrade (\ s a -> s{_mccAutoMinorVersionUpgrade = a});++-- | The name of the cache parameter group to apply to this cache cluster.+-- This change is asynchronously applied as soon as possible for parameters+-- when the /ApplyImmediately/ parameter is specified as /true/ for this+-- request.+mccCacheParameterGroupName :: Lens' ModifyCacheCluster (Maybe Text)+mccCacheParameterGroupName = lens _mccCacheParameterGroupName (\ s a -> s{_mccCacheParameterGroupName = a});++-- | The list of Availability Zones where the new Memcached cache nodes will+-- be created. ----- This option is only supported for Memcached cache clusters.+-- This parameter is only valid when /NumCacheNodes/ in the request is+-- greater than the sum of the number of active cache nodes and the number+-- of cache nodes pending creation (which may be zero). The number of+-- Availability Zones supplied in this list must match the cache nodes+-- being added in this request. ----- You cannot specify 'single-az' if the Memcached cache cluster already has--- cache nodes in different Availability Zones. If 'cross-az' is specified,--- existing Memcached nodes remain in their current Availability Zone.+-- This option is only supported on Memcached clusters. ----- Only newly created nodes will be located in different Availability Zones.--- For instructions on how to move existing Memcached nodes to different--- Availability Zones, see the Availability Zone Considerations section of <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html CacheNode Considerations for Memcached>.+-- Scenarios: --+-- - __Scenario 1:__ You have 3 active nodes and wish to add 2 nodes.+-- Specify 'NumCacheNodes=5' (3 + 2) and optionally specify two+-- Availability Zones for the two new nodes.+-- - __Scenario 2:__ You have 3 active nodes and 2 nodes pending creation+-- (from the scenario 1 call) and want to add 1 more node.+-- Specify 'NumCacheNodes=6' ((3 + 2) + 1)+-- - __Scenario 3:__ You want to cancel all pending actions.+-- Specify 'NumCacheNodes=3' to cancel all pending actions. ---mccAZMode :: Lens' ModifyCacheCluster (Maybe AZMode)-mccAZMode = lens _mccAZMode (\s a -> s { _mccAZMode = a })---- | If 'true', this parameter causes the modifications in this request and any--- pending modifications to be applied, asynchronously and as soon as possible,--- regardless of the /PreferredMaintenanceWindow/ setting for the cache cluster.+-- The Availability Zone placement of nodes pending creation cannot be+-- modified. If you wish to cancel any nodes pending creation, add 0 nodes+-- by setting 'NumCacheNodes' to the number of current nodes. ----- If 'false', then changes to the cache cluster are applied on the next--- maintenance reboot, or the next failure reboot, whichever occurs first.+-- If 'cross-az' is specified, existing Memcached nodes remain in their+-- current Availability Zone. Only newly created nodes can be located in+-- different Availability Zones. For guidance on how to move existing+-- Memcached nodes to different Availability Zones, see the __Availability+-- Zone Considerations__ section of+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html Cache Node Considerations for Memcached>. ----- If you perform a 'ModifyCacheCluster' before a pending modification is--- applied, the pending modification is replaced by the newer modification. Valid values:--- 'true' | 'false'+-- __Impact of new add\/remove requests upon pending requests__ ----- Default: 'false'-mccApplyImmediately :: Lens' ModifyCacheCluster (Maybe Bool)-mccApplyImmediately =- lens _mccApplyImmediately (\s a -> s { _mccApplyImmediately = a })---- | This parameter is currently disabled.-mccAutoMinorVersionUpgrade :: Lens' ModifyCacheCluster (Maybe Bool)-mccAutoMinorVersionUpgrade =- lens _mccAutoMinorVersionUpgrade- (\s a -> s { _mccAutoMinorVersionUpgrade = a })---- | The cache cluster identifier. This value is stored as a lowercase string.-mccCacheClusterId :: Lens' ModifyCacheCluster Text-mccCacheClusterId =- lens _mccCacheClusterId (\s a -> s { _mccCacheClusterId = a })---- | A list of cache node IDs to be removed. A node ID is a numeric identifier--- (0001, 0002, etc.). This parameter is only valid when /NumCacheNodes/ is less--- than the existing number of cache nodes. The number of cache node IDs--- supplied in this parameter must match the difference between the existing--- number of cache nodes in the cluster or pending cache nodes, whichever is--- greater, and the value of /NumCacheNodes/ in the request.+-- > --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-- > Scenarios Pending action New Request Results+-- > ------------ ---------------- ------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-- > Scenario-1 Delete Delete The new delete, pending or immediate, replaces the pending delete.+-- >+-- > Scenario-2 Delete Create The new create, pending or immediate, replaces the pending delete.+-- >+-- > Scenario-3 Create Delete The new delete, pending or immediate, replaces the pending create.+-- >+-- > Scenario-4 Create Create The new create is added to the pending create.+-- > __Important:__+-- > If the new create request is __Apply Immediately - Yes__, all creates are performed immediately. If the new create request is __Apply Immediately - No__, all creates are pending.+-- > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----- For example: If you have 3 active cache nodes, 7 pending cache nodes, and--- the number of cache nodes in this 'ModifyCacheCluser' call is 5, you must list--- 2 (7 - 5) cache node IDs to remove.-mccCacheNodeIdsToRemove :: Lens' ModifyCacheCluster [Text]-mccCacheNodeIdsToRemove =- lens _mccCacheNodeIdsToRemove (\s a -> s { _mccCacheNodeIdsToRemove = a })- . _List+-- Example:+-- 'NewAvailabilityZones.member.1=us-west-2a&NewAvailabilityZones.member.2=us-west-2b&NewAvailabilityZones.member.3=us-west-2c'+mccNewAvailabilityZones :: Lens' ModifyCacheCluster [Text]+mccNewAvailabilityZones = lens _mccNewAvailabilityZones (\ s a -> s{_mccNewAvailabilityZones = a}) . _Default . _Coerce; --- | The name of the cache parameter group to apply to this cache cluster. This--- change is asynchronously applied as soon as possible for parameters when the /ApplyImmediately/ parameter is specified as /true/ for this request.-mccCacheParameterGroupName :: Lens' ModifyCacheCluster (Maybe Text)-mccCacheParameterGroupName =- lens _mccCacheParameterGroupName- (\s a -> s { _mccCacheParameterGroupName = a })+-- | The daily time range (in UTC) during which ElastiCache will begin taking+-- a daily snapshot of your cache cluster.+mccSnapshotWindow :: Lens' ModifyCacheCluster (Maybe Text)+mccSnapshotWindow = lens _mccSnapshotWindow (\ s a -> s{_mccSnapshotWindow = a}); --- | A list of cache security group names to authorize on this cache cluster. This--- change is asynchronously applied as soon as possible.+-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are: ----- This parameter can be used only with clusters that are created outside of an--- Amazon Virtual Private Cloud (VPC).+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat' ----- Constraints: Must contain no more than 255 alphanumeric characters. Must not--- be "Default".-mccCacheSecurityGroupNames :: Lens' ModifyCacheCluster [Text]-mccCacheSecurityGroupNames =- lens _mccCacheSecurityGroupNames- (\s a -> s { _mccCacheSecurityGroupNames = a })- . _List+-- Example: 'sun:05:00-sun:09:00'+mccPreferredMaintenanceWindow :: Lens' ModifyCacheCluster (Maybe Text)+mccPreferredMaintenanceWindow = lens _mccPreferredMaintenanceWindow (\ s a -> s{_mccPreferredMaintenanceWindow = a}); --- | The upgraded version of the cache engine to be run on the cache nodes.-mccEngineVersion :: Lens' ModifyCacheCluster (Maybe Text)-mccEngineVersion = lens _mccEngineVersion (\s a -> s { _mccEngineVersion = a })+-- | A list of cache node IDs to be removed. A node ID is a numeric+-- identifier (0001, 0002, etc.). This parameter is only valid when+-- /NumCacheNodes/ is less than the existing number of cache nodes. The+-- number of cache node IDs supplied in this parameter must match the+-- difference between the existing number of cache nodes in the cluster or+-- pending cache nodes, whichever is greater, and the value of+-- /NumCacheNodes/ in the request.+--+-- For example: If you have 3 active cache nodes, 7 pending cache nodes,+-- and the number of cache nodes in this 'ModifyCacheCluser' call is 5, you+-- must list 2 (7 - 5) cache node IDs to remove.+mccCacheNodeIdsToRemove :: Lens' ModifyCacheCluster [Text]+mccCacheNodeIdsToRemove = lens _mccCacheNodeIdsToRemove (\ s a -> s{_mccCacheNodeIdsToRemove = a}) . _Default . _Coerce; --- | The list of Availability Zones where the new Memcached cache nodes will be--- created.+-- | The number of days for which ElastiCache will retain automatic cache+-- cluster snapshots before deleting them. For example, if you set+-- /SnapshotRetentionLimit/ to 5, then a snapshot that was taken today will+-- be retained for 5 days before being deleted. ----- This parameter is only valid when /NumCacheNodes/ in the request is greater--- than the sum of the number of active cache nodes and the number of cache--- nodes pending creation (which may be zero). The number of Availability Zones--- supplied in this list must match the cache nodes being added in this request.+-- __Important__+-- If the value of SnapshotRetentionLimit is set to zero (0), backups are+-- turned off.+mccSnapshotRetentionLimit :: Lens' ModifyCacheCluster (Maybe Int)+mccSnapshotRetentionLimit = lens _mccSnapshotRetentionLimit (\ s a -> s{_mccSnapshotRetentionLimit = a});++-- | Specifies whether the new nodes in this Memcached cache cluster are all+-- created in a single Availability Zone or created across multiple+-- Availability Zones. ----- This option is only supported on Memcached clusters.+-- Valid values: 'single-az' | 'cross-az'. ----- Scenarios: Scenario 1: You have 3 active nodes and wish to add 2 nodes.+-- This option is only supported for Memcached cache clusters. ----- Specify 'NumCacheNodes=5' (3 + 2) and optionally specify two Availability Zones--- for the two new nodes. Scenario 2: You have 3 active nodes and 2 nodes--- pending creation (from the scenario 1 call) and want to add 1 more node.+-- You cannot specify 'single-az' if the Memcached cache cluster already+-- has cache nodes in different Availability Zones. If 'cross-az' is+-- specified, existing Memcached nodes remain in their current Availability+-- Zone. ----- Specify 'NumCacheNodes=6' ((3 + 2) + 1) and optionally specify an Availability--- Zone for the new node. Scenario 3: You want to cancel all pending actions.+-- Only newly created nodes will be located in different Availability+-- Zones. For instructions on how to move existing Memcached nodes to+-- different Availability Zones, see the __Availability Zone+-- Considerations__ section of+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html Cache Node Considerations for Memcached>.+mccAZMode :: Lens' ModifyCacheCluster (Maybe AZMode)+mccAZMode = lens _mccAZMode (\ s a -> s{_mccAZMode = a});++-- | The status of the Amazon SNS notification topic. Notifications are sent+-- only if the status is /active/. ----- Specify 'NumCacheNodes=3' to cancel all pending actions.+-- Valid values: 'active' | 'inactive'+mccNotificationTopicStatus :: Lens' ModifyCacheCluster (Maybe Text)+mccNotificationTopicStatus = lens _mccNotificationTopicStatus (\ s a -> s{_mccNotificationTopicStatus = a});++-- | If 'true', this parameter causes the modifications in this request and+-- any pending modifications to be applied, asynchronously and as soon as+-- possible, regardless of the /PreferredMaintenanceWindow/ setting for the+-- cache cluster. ----- The Availability Zone placement of nodes pending creation cannot be--- modified. If you wish to cancel any nodes pending creation, add 0 nodes by--- setting 'NumCacheNodes' to the number of current nodes.+-- If 'false', then changes to the cache cluster are applied on the next+-- maintenance reboot, or the next failure reboot, whichever occurs first. ----- If 'cross-az' is specified, existing Memcached nodes remain in their current--- Availability Zone. Only newly created nodes can be located in different--- Availability Zones. For guidance on how to move existing Memcached nodes to--- different Availability Zones, see the Availability Zone Considerations--- section of <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheNode.Memcached.html Cache Node Considerations for Memcached>.+-- If you perform a 'ModifyCacheCluster' before a pending modification is+-- applied, the pending modification is replaced by the newer modification. ----- Impact of new add/remove requests upon pending requests+-- Valid values: 'true' | 'false' ----- Scenarios Pending action New Request Results Scenario-1 Delete Delete The new delete, pending or immediate, replaces the pending delete.--- Scenario-2 Delete Create The new create, pending or immediate, replaces--- the pending delete. Scenario-3 Create Delete The new delete, pending or--- immediate, replaces the pending create. Scenario-4 Create Create The new--- create is added to the pending create.--- Important:--- If the new create request is--- Apply Immediately - Yes, all creates are performed immediately. If the new--- create request is Apply Immediately - No, all creates are pending. Example: 'NewAvailabilityZones.member.1=us-west-2a&NewAvailabilityZones.member.2=us-west-2b&NewAvailabilityZones.member.3=us-west-2c'-mccNewAvailabilityZones :: Lens' ModifyCacheCluster [Text]-mccNewAvailabilityZones =- lens _mccNewAvailabilityZones (\s a -> s { _mccNewAvailabilityZones = a })- . _List+-- Default: 'false'+mccApplyImmediately :: Lens' ModifyCacheCluster (Maybe Bool)+mccApplyImmediately = lens _mccApplyImmediately (\ s a -> s{_mccApplyImmediately = a}); --- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications--- will be sent.+-- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which+-- notifications will be sent. -- -- The Amazon SNS topic owner must be same as the cache cluster owner.-mccNotificationTopicArn :: Lens' ModifyCacheCluster (Maybe Text)-mccNotificationTopicArn =- lens _mccNotificationTopicArn (\s a -> s { _mccNotificationTopicArn = a })---- | The status of the Amazon SNS notification topic. Notifications are sent only--- if the status is /active/.------ Valid values: 'active' | 'inactive'-mccNotificationTopicStatus :: Lens' ModifyCacheCluster (Maybe Text)-mccNotificationTopicStatus =- lens _mccNotificationTopicStatus- (\s a -> s { _mccNotificationTopicStatus = a })+mccNotificationTopicARN :: Lens' ModifyCacheCluster (Maybe Text)+mccNotificationTopicARN = lens _mccNotificationTopicARN (\ s a -> s{_mccNotificationTopicARN = a}); --- | The number of cache nodes that the cache cluster should have. If the value--- for 'NumCacheNodes' is greater than the sum of the number of current cache--- nodes and the number of cache nodes pending creation (which may be zero),--- then more nodes will be added. If the value is less than the number of--- existing cache nodes, then nodes will be removed. If the value is equal to--- the number of current cache nodes, then any pending add or remove requests--- are canceled.+-- | The number of cache nodes that the cache cluster should have. If the+-- value for 'NumCacheNodes' is greater than the sum of the number of+-- current cache nodes and the number of cache nodes pending creation+-- (which may be zero), then more nodes will be added. If the value is less+-- than the number of existing cache nodes, then nodes will be removed. If+-- the value is equal to the number of current cache nodes, then any+-- pending add or remove requests are canceled. -- -- If you are removing cache nodes, you must use the 'CacheNodeIdsToRemove' -- parameter to provide the IDs of the specific cache nodes to remove.@@ -305,116 +330,127 @@ -- For clusters running Redis, this value must be 1. For clusters running -- Memcached, this value must be between 1 and 20. ----- Note:+-- __Note:__ -- Adding or removing Memcached cache nodes can be applied immediately or -- as a pending action. See 'ApplyImmediately'.--- A pending action to modify the--- number of cache nodes in a cluster during its maintenance window, whether by--- adding or removing nodes in accordance with the scale out architecture, is--- not queued. The customer's latest request to add or remove nodes to the--- cluster overrides any previous pending actions to modify the number of cache--- nodes in the cluster. For example, a request to remove 2 nodes would override--- a previous pending action to remove 3 nodes. Similarly, a request to add 2--- nodes would override a previous pending action to remove 3 nodes and vice--- versa. As Memcached cache nodes may now be provisioned in different--- Availability Zones with flexible cache node placement, a request to add nodes--- does not automatically override a previous pending action to add nodes. The--- customer can modify the previous pending action to add more nodes or--- explicitly cancel the pending request and retry the new request. To cancel--- pending actions to modify the number of cache nodes in a cluster, use the 'ModifyCacheCluster' request and set /NumCacheNodes/ equal to the number of cache nodes currently--- in the cache cluster.+-- A pending action to modify the number of cache nodes in a cluster+-- during its maintenance window, whether by adding or removing nodes in+-- accordance with the scale out architecture, is not queued. The+-- customer\'s latest request to add or remove nodes to the cluster+-- overrides any previous pending actions to modify the number of cache+-- nodes in the cluster. For example, a request to remove 2 nodes would+-- override a previous pending action to remove 3 nodes. Similarly, a+-- request to add 2 nodes would override a previous pending action to+-- remove 3 nodes and vice versa. As Memcached cache nodes may now be+-- provisioned in different Availability Zones with flexible cache node+-- placement, a request to add nodes does not automatically override a+-- previous pending action to add nodes. The customer can modify the+-- previous pending action to add more nodes or explicitly cancel the+-- pending request and retry the new request. To cancel pending actions to+-- modify the number of cache nodes in a cluster, use the+-- 'ModifyCacheCluster' request and set /NumCacheNodes/ equal to the number+-- of cache nodes currently in the cache cluster. mccNumCacheNodes :: Lens' ModifyCacheCluster (Maybe Int)-mccNumCacheNodes = lens _mccNumCacheNodes (\s a -> s { _mccNumCacheNodes = a })---- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:------ 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'-mccPreferredMaintenanceWindow :: Lens' ModifyCacheCluster (Maybe Text)-mccPreferredMaintenanceWindow =- lens _mccPreferredMaintenanceWindow- (\s a -> s { _mccPreferredMaintenanceWindow = a })+mccNumCacheNodes = lens _mccNumCacheNodes (\ s a -> s{_mccNumCacheNodes = a}); --- | Specifies the VPC Security Groups associated with the cache cluster.+-- | A list of cache security group names to authorize on this cache cluster.+-- This change is asynchronously applied as soon as possible. ----- This parameter can be used only with clusters that are created in an Amazon--- Virtual Private Cloud (VPC).-mccSecurityGroupIds :: Lens' ModifyCacheCluster [Text]-mccSecurityGroupIds =- lens _mccSecurityGroupIds (\s a -> s { _mccSecurityGroupIds = a })- . _List---- | The number of days for which ElastiCache will retain automatic cache cluster--- snapshots before deleting them. For example, if you set /SnapshotRetentionLimit/--- to 5, then a snapshot that was taken today will be retained for 5 days--- before being deleted.+-- This parameter can be used only with clusters that are created outside+-- of an Amazon Virtual Private Cloud (VPC). ----- Important--- If the value of SnapshotRetentionLimit is set to zero (0), backups--- are turned off.-mccSnapshotRetentionLimit :: Lens' ModifyCacheCluster (Maybe Int)-mccSnapshotRetentionLimit =- lens _mccSnapshotRetentionLimit- (\s a -> s { _mccSnapshotRetentionLimit = a })---- | The daily time range (in UTC) during which ElastiCache will begin taking a--- daily snapshot of your cache cluster.-mccSnapshotWindow :: Lens' ModifyCacheCluster (Maybe Text)-mccSnapshotWindow =- lens _mccSnapshotWindow (\s a -> s { _mccSnapshotWindow = a })+-- Constraints: Must contain no more than 255 alphanumeric characters. Must+-- not be \"Default\".+mccCacheSecurityGroupNames :: Lens' ModifyCacheCluster [Text]+mccCacheSecurityGroupNames = lens _mccCacheSecurityGroupNames (\ s a -> s{_mccCacheSecurityGroupNames = a}) . _Default . _Coerce; -newtype ModifyCacheClusterResponse = ModifyCacheClusterResponse- { _mccrCacheCluster :: Maybe CacheCluster- } deriving (Eq, Read, Show)+-- | The cache cluster identifier. This value is stored as a lowercase+-- string.+mccCacheClusterId :: Lens' ModifyCacheCluster Text+mccCacheClusterId = lens _mccCacheClusterId (\ s a -> s{_mccCacheClusterId = a}); --- | 'ModifyCacheClusterResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'mccrCacheCluster' @::@ 'Maybe' 'CacheCluster'----modifyCacheClusterResponse :: ModifyCacheClusterResponse-modifyCacheClusterResponse = ModifyCacheClusterResponse- { _mccrCacheCluster = Nothing- }+instance AWSRequest ModifyCacheCluster where+ type Sv ModifyCacheCluster = ElastiCache+ type Rs ModifyCacheCluster =+ ModifyCacheClusterResponse+ request = postQuery+ response+ = receiveXMLWrapper "ModifyCacheClusterResult"+ (\ s h x ->+ ModifyCacheClusterResponse' <$>+ (x .@? "CacheCluster") <*> (pure (fromEnum s))) -mccrCacheCluster :: Lens' ModifyCacheClusterResponse (Maybe CacheCluster)-mccrCacheCluster = lens _mccrCacheCluster (\s a -> s { _mccrCacheCluster = a })+instance ToHeaders ModifyCacheCluster where+ toHeaders = const mempty instance ToPath ModifyCacheCluster where- toPath = const "/"+ toPath = const "/" instance ToQuery ModifyCacheCluster where- toQuery ModifyCacheCluster{..} = mconcat- [ "AZMode" =? _mccAZMode- , "ApplyImmediately" =? _mccApplyImmediately- , "AutoMinorVersionUpgrade" =? _mccAutoMinorVersionUpgrade- , "CacheClusterId" =? _mccCacheClusterId- , "CacheNodeIdsToRemove" =? _mccCacheNodeIdsToRemove- , "CacheParameterGroupName" =? _mccCacheParameterGroupName- , "CacheSecurityGroupNames" =? _mccCacheSecurityGroupNames- , "EngineVersion" =? _mccEngineVersion- , "NewAvailabilityZones" =? _mccNewAvailabilityZones- , "NotificationTopicArn" =? _mccNotificationTopicArn- , "NotificationTopicStatus" =? _mccNotificationTopicStatus- , "NumCacheNodes" =? _mccNumCacheNodes- , "PreferredMaintenanceWindow" =? _mccPreferredMaintenanceWindow- , "SecurityGroupIds" =? _mccSecurityGroupIds- , "SnapshotRetentionLimit" =? _mccSnapshotRetentionLimit- , "SnapshotWindow" =? _mccSnapshotWindow- ]+ toQuery ModifyCacheCluster'{..}+ = mconcat+ ["Action" =: ("ModifyCacheCluster" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "EngineVersion" =: _mccEngineVersion,+ "SecurityGroupIds" =:+ toQuery+ (toQueryList "SecurityGroupId" <$>+ _mccSecurityGroupIds),+ "AutoMinorVersionUpgrade" =:+ _mccAutoMinorVersionUpgrade,+ "CacheParameterGroupName" =:+ _mccCacheParameterGroupName,+ "NewAvailabilityZones" =:+ toQuery+ (toQueryList "PreferredAvailabilityZone" <$>+ _mccNewAvailabilityZones),+ "SnapshotWindow" =: _mccSnapshotWindow,+ "PreferredMaintenanceWindow" =:+ _mccPreferredMaintenanceWindow,+ "CacheNodeIdsToRemove" =:+ toQuery+ (toQueryList "CacheNodeId" <$>+ _mccCacheNodeIdsToRemove),+ "SnapshotRetentionLimit" =:+ _mccSnapshotRetentionLimit,+ "AZMode" =: _mccAZMode,+ "NotificationTopicStatus" =:+ _mccNotificationTopicStatus,+ "ApplyImmediately" =: _mccApplyImmediately,+ "NotificationTopicArn" =: _mccNotificationTopicARN,+ "NumCacheNodes" =: _mccNumCacheNodes,+ "CacheSecurityGroupNames" =:+ toQuery+ (toQueryList "CacheSecurityGroupName" <$>+ _mccCacheSecurityGroupNames),+ "CacheClusterId" =: _mccCacheClusterId] -instance ToHeaders ModifyCacheCluster+-- | /See:/ 'modifyCacheClusterResponse' smart constructor.+data ModifyCacheClusterResponse = ModifyCacheClusterResponse'+ { _mccrsCacheCluster :: !(Maybe CacheCluster)+ , _mccrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ModifyCacheCluster where- type Sv ModifyCacheCluster = ElastiCache- type Rs ModifyCacheCluster = ModifyCacheClusterResponse+-- | Creates a value of 'ModifyCacheClusterResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mccrsCacheCluster'+--+-- * 'mccrsStatus'+modifyCacheClusterResponse+ :: Int -- ^ 'mccrsStatus'+ -> ModifyCacheClusterResponse+modifyCacheClusterResponse pStatus_ =+ ModifyCacheClusterResponse'+ { _mccrsCacheCluster = Nothing+ , _mccrsStatus = pStatus_+ } - request = post "ModifyCacheCluster"- response = xmlResponse+-- | Undocumented member.+mccrsCacheCluster :: Lens' ModifyCacheClusterResponse (Maybe CacheCluster)+mccrsCacheCluster = lens _mccrsCacheCluster (\ s a -> s{_mccrsCacheCluster = a}); -instance FromXML ModifyCacheClusterResponse where- parseXML = withElement "ModifyCacheClusterResult" $ \x -> ModifyCacheClusterResponse- <$> x .@? "CacheCluster"+-- | The response status code.+mccrsStatus :: Lens' ModifyCacheClusterResponse Int+mccrsStatus = lens _mccrsStatus (\ s a -> s{_mccrsStatus = a});
gen/Network/AWS/ElastiCache/ModifyCacheParameterGroup.hs view
@@ -1,128 +1,107 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ModifyCacheParameterGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ModifyCacheParameterGroup/ action modifies the parameters of a cache--- parameter group. You can modify up to 20 parameters in a single request by--- submitting a list parameter name and value pairs.+-- The /ModifyCacheParameterGroup/ action modifies the parameters of a+-- cache parameter group. You can modify up to 20 parameters in a single+-- request by submitting a list parameter name and value pairs. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheParameterGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheParameterGroup.html AWS API Reference> for ModifyCacheParameterGroup. module Network.AWS.ElastiCache.ModifyCacheParameterGroup (- -- * Request- ModifyCacheParameterGroup- -- ** Request constructor- , modifyCacheParameterGroup- -- ** Request lenses+ -- * Creating a Request+ modifyCacheParameterGroup+ , ModifyCacheParameterGroup+ -- * Request Lenses , mcpgCacheParameterGroupName , mcpgParameterNameValues - -- * Response- , ModifyCacheParameterGroupResponse- -- ** Response constructor- , modifyCacheParameterGroupResponse- -- ** Response lenses- , mcpgrCacheParameterGroupName+ -- * Destructuring the Response+ , cacheParameterGroupNameMessage+ , CacheParameterGroupNameMessage+ -- * Response Lenses+ , cpgnmCacheParameterGroupName ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data ModifyCacheParameterGroup = ModifyCacheParameterGroup- { _mcpgCacheParameterGroupName :: Text- , _mcpgParameterNameValues :: List "member" ParameterNameValue- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'ModifyCacheParameterGroup' constructor.+-- | Represents the input of a /ModifyCacheParameterGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'modifyCacheParameterGroup' smart constructor.+data ModifyCacheParameterGroup = ModifyCacheParameterGroup'+ { _mcpgCacheParameterGroupName :: !Text+ , _mcpgParameterNameValues :: ![ParameterNameValue]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyCacheParameterGroup' with the minimum fields required to make a request. ----- * 'mcpgCacheParameterGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'mcpgParameterNameValues' @::@ ['ParameterNameValue']+-- * 'mcpgCacheParameterGroupName' ---modifyCacheParameterGroup :: Text -- ^ 'mcpgCacheParameterGroupName'- -> ModifyCacheParameterGroup-modifyCacheParameterGroup p1 = ModifyCacheParameterGroup- { _mcpgCacheParameterGroupName = p1- , _mcpgParameterNameValues = mempty+-- * 'mcpgParameterNameValues'+modifyCacheParameterGroup+ :: Text -- ^ 'mcpgCacheParameterGroupName'+ -> ModifyCacheParameterGroup+modifyCacheParameterGroup pCacheParameterGroupName_ =+ ModifyCacheParameterGroup'+ { _mcpgCacheParameterGroupName = pCacheParameterGroupName_+ , _mcpgParameterNameValues = mempty } -- | The name of the cache parameter group to modify. mcpgCacheParameterGroupName :: Lens' ModifyCacheParameterGroup Text-mcpgCacheParameterGroupName =- lens _mcpgCacheParameterGroupName- (\s a -> s { _mcpgCacheParameterGroupName = a })+mcpgCacheParameterGroupName = lens _mcpgCacheParameterGroupName (\ s a -> s{_mcpgCacheParameterGroupName = a}); --- | An array of parameter names and values for the parameter update. You must--- supply at least one parameter name and value; subsequent arguments are--- optional. A maximum of 20 parameters may be modified per request.+-- | An array of parameter names and values for the parameter update. You+-- must supply at least one parameter name and value; subsequent arguments+-- are optional. A maximum of 20 parameters may be modified per request. mcpgParameterNameValues :: Lens' ModifyCacheParameterGroup [ParameterNameValue]-mcpgParameterNameValues =- lens _mcpgParameterNameValues (\s a -> s { _mcpgParameterNameValues = a })- . _List--newtype ModifyCacheParameterGroupResponse = ModifyCacheParameterGroupResponse- { _mcpgrCacheParameterGroupName :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)+mcpgParameterNameValues = lens _mcpgParameterNameValues (\ s a -> s{_mcpgParameterNameValues = a}) . _Coerce; --- | 'ModifyCacheParameterGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'mcpgrCacheParameterGroupName' @::@ 'Maybe' 'Text'----modifyCacheParameterGroupResponse :: ModifyCacheParameterGroupResponse-modifyCacheParameterGroupResponse = ModifyCacheParameterGroupResponse- { _mcpgrCacheParameterGroupName = Nothing- }+instance AWSRequest ModifyCacheParameterGroup where+ type Sv ModifyCacheParameterGroup = ElastiCache+ type Rs ModifyCacheParameterGroup =+ CacheParameterGroupNameMessage+ request = postQuery+ response+ = receiveXMLWrapper "ModifyCacheParameterGroupResult"+ (\ s h x -> parseXML x) --- | The name of the cache parameter group.-mcpgrCacheParameterGroupName :: Lens' ModifyCacheParameterGroupResponse (Maybe Text)-mcpgrCacheParameterGroupName =- lens _mcpgrCacheParameterGroupName- (\s a -> s { _mcpgrCacheParameterGroupName = a })+instance ToHeaders ModifyCacheParameterGroup where+ toHeaders = const mempty instance ToPath ModifyCacheParameterGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery ModifyCacheParameterGroup where- toQuery ModifyCacheParameterGroup{..} = mconcat- [ "CacheParameterGroupName" =? _mcpgCacheParameterGroupName- , "ParameterNameValues" =? _mcpgParameterNameValues- ]--instance ToHeaders ModifyCacheParameterGroup--instance AWSRequest ModifyCacheParameterGroup where- type Sv ModifyCacheParameterGroup = ElastiCache- type Rs ModifyCacheParameterGroup = ModifyCacheParameterGroupResponse-- request = post "ModifyCacheParameterGroup"- response = xmlResponse--instance FromXML ModifyCacheParameterGroupResponse where- parseXML = withElement "ModifyCacheParameterGroupResult" $ \x -> ModifyCacheParameterGroupResponse- <$> x .@? "CacheParameterGroupName"+ toQuery ModifyCacheParameterGroup'{..}+ = mconcat+ ["Action" =:+ ("ModifyCacheParameterGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheParameterGroupName" =:+ _mcpgCacheParameterGroupName,+ "ParameterNameValues" =:+ toQueryList "ParameterNameValue"+ _mcpgParameterNameValues]
gen/Network/AWS/ElastiCache/ModifyCacheSubnetGroup.hs view
@@ -1,83 +1,86 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ModifyCacheSubnetGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ModifyCacheSubnetGroup/ action modifies an existing cache subnet group.+-- The /ModifyCacheSubnetGroup/ action modifies an existing cache subnet+-- group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheSubnetGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyCacheSubnetGroup.html AWS API Reference> for ModifyCacheSubnetGroup. module Network.AWS.ElastiCache.ModifyCacheSubnetGroup (- -- * Request- ModifyCacheSubnetGroup- -- ** Request constructor- , modifyCacheSubnetGroup- -- ** Request lenses+ -- * Creating a Request+ modifyCacheSubnetGroup+ , ModifyCacheSubnetGroup+ -- * Request Lenses+ , mcsgSubnetIds , mcsgCacheSubnetGroupDescription , mcsgCacheSubnetGroupName- , mcsgSubnetIds - -- * Response- , ModifyCacheSubnetGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , modifyCacheSubnetGroupResponse- -- ** Response lenses- , mcsgrCacheSubnetGroup+ , ModifyCacheSubnetGroupResponse+ -- * Response Lenses+ , mcsgrsCacheSubnetGroup+ , mcsgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data ModifyCacheSubnetGroup = ModifyCacheSubnetGroup- { _mcsgCacheSubnetGroupDescription :: Maybe Text- , _mcsgCacheSubnetGroupName :: Text- , _mcsgSubnetIds :: List "member" Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'ModifyCacheSubnetGroup' constructor.+-- | Represents the input of a /ModifyCacheSubnetGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'modifyCacheSubnetGroup' smart constructor.+data ModifyCacheSubnetGroup = ModifyCacheSubnetGroup'+ { _mcsgSubnetIds :: !(Maybe [Text])+ , _mcsgCacheSubnetGroupDescription :: !(Maybe Text)+ , _mcsgCacheSubnetGroupName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyCacheSubnetGroup' with the minimum fields required to make a request. ----- * 'mcsgCacheSubnetGroupDescription' @::@ 'Maybe' 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'mcsgCacheSubnetGroupName' @::@ 'Text'+-- * 'mcsgSubnetIds' ----- * 'mcsgSubnetIds' @::@ ['Text']+-- * 'mcsgCacheSubnetGroupDescription' ---modifyCacheSubnetGroup :: Text -- ^ 'mcsgCacheSubnetGroupName'- -> ModifyCacheSubnetGroup-modifyCacheSubnetGroup p1 = ModifyCacheSubnetGroup- { _mcsgCacheSubnetGroupName = p1+-- * 'mcsgCacheSubnetGroupName'+modifyCacheSubnetGroup+ :: Text -- ^ 'mcsgCacheSubnetGroupName'+ -> ModifyCacheSubnetGroup+modifyCacheSubnetGroup pCacheSubnetGroupName_ =+ ModifyCacheSubnetGroup'+ { _mcsgSubnetIds = Nothing , _mcsgCacheSubnetGroupDescription = Nothing- , _mcsgSubnetIds = mempty+ , _mcsgCacheSubnetGroupName = pCacheSubnetGroupName_ } +-- | The EC2 subnet IDs for the cache subnet group.+mcsgSubnetIds :: Lens' ModifyCacheSubnetGroup [Text]+mcsgSubnetIds = lens _mcsgSubnetIds (\ s a -> s{_mcsgSubnetIds = a}) . _Default . _Coerce;+ -- | A description for the cache subnet group. mcsgCacheSubnetGroupDescription :: Lens' ModifyCacheSubnetGroup (Maybe Text)-mcsgCacheSubnetGroupDescription =- lens _mcsgCacheSubnetGroupDescription- (\s a -> s { _mcsgCacheSubnetGroupDescription = a })+mcsgCacheSubnetGroupDescription = lens _mcsgCacheSubnetGroupDescription (\ s a -> s{_mcsgCacheSubnetGroupDescription = a}); -- | The name for the cache subnet group. This value is stored as a lowercase -- string.@@ -87,52 +90,64 @@ -- -- Example: 'mysubnetgroup' mcsgCacheSubnetGroupName :: Lens' ModifyCacheSubnetGroup Text-mcsgCacheSubnetGroupName =- lens _mcsgCacheSubnetGroupName- (\s a -> s { _mcsgCacheSubnetGroupName = a })---- | The EC2 subnet IDs for the cache subnet group.-mcsgSubnetIds :: Lens' ModifyCacheSubnetGroup [Text]-mcsgSubnetIds = lens _mcsgSubnetIds (\s a -> s { _mcsgSubnetIds = a }) . _List--newtype ModifyCacheSubnetGroupResponse = ModifyCacheSubnetGroupResponse- { _mcsgrCacheSubnetGroup :: Maybe CacheSubnetGroup- } deriving (Eq, Read, Show)+mcsgCacheSubnetGroupName = lens _mcsgCacheSubnetGroupName (\ s a -> s{_mcsgCacheSubnetGroupName = a}); --- | 'ModifyCacheSubnetGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'mcsgrCacheSubnetGroup' @::@ 'Maybe' 'CacheSubnetGroup'----modifyCacheSubnetGroupResponse :: ModifyCacheSubnetGroupResponse-modifyCacheSubnetGroupResponse = ModifyCacheSubnetGroupResponse- { _mcsgrCacheSubnetGroup = Nothing- }+instance AWSRequest ModifyCacheSubnetGroup where+ type Sv ModifyCacheSubnetGroup = ElastiCache+ type Rs ModifyCacheSubnetGroup =+ ModifyCacheSubnetGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "ModifyCacheSubnetGroupResult"+ (\ s h x ->+ ModifyCacheSubnetGroupResponse' <$>+ (x .@? "CacheSubnetGroup") <*> (pure (fromEnum s))) -mcsgrCacheSubnetGroup :: Lens' ModifyCacheSubnetGroupResponse (Maybe CacheSubnetGroup)-mcsgrCacheSubnetGroup =- lens _mcsgrCacheSubnetGroup (\s a -> s { _mcsgrCacheSubnetGroup = a })+instance ToHeaders ModifyCacheSubnetGroup where+ toHeaders = const mempty instance ToPath ModifyCacheSubnetGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery ModifyCacheSubnetGroup where- toQuery ModifyCacheSubnetGroup{..} = mconcat- [ "CacheSubnetGroupDescription" =? _mcsgCacheSubnetGroupDescription- , "CacheSubnetGroupName" =? _mcsgCacheSubnetGroupName- , "SubnetIds" =? _mcsgSubnetIds- ]+ toQuery ModifyCacheSubnetGroup'{..}+ = mconcat+ ["Action" =:+ ("ModifyCacheSubnetGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "SubnetIds" =:+ toQuery+ (toQueryList "SubnetIdentifier" <$> _mcsgSubnetIds),+ "CacheSubnetGroupDescription" =:+ _mcsgCacheSubnetGroupDescription,+ "CacheSubnetGroupName" =: _mcsgCacheSubnetGroupName] -instance ToHeaders ModifyCacheSubnetGroup+-- | /See:/ 'modifyCacheSubnetGroupResponse' smart constructor.+data ModifyCacheSubnetGroupResponse = ModifyCacheSubnetGroupResponse'+ { _mcsgrsCacheSubnetGroup :: !(Maybe CacheSubnetGroup)+ , _mcsgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ModifyCacheSubnetGroup where- type Sv ModifyCacheSubnetGroup = ElastiCache- type Rs ModifyCacheSubnetGroup = ModifyCacheSubnetGroupResponse+-- | Creates a value of 'ModifyCacheSubnetGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mcsgrsCacheSubnetGroup'+--+-- * 'mcsgrsStatus'+modifyCacheSubnetGroupResponse+ :: Int -- ^ 'mcsgrsStatus'+ -> ModifyCacheSubnetGroupResponse+modifyCacheSubnetGroupResponse pStatus_ =+ ModifyCacheSubnetGroupResponse'+ { _mcsgrsCacheSubnetGroup = Nothing+ , _mcsgrsStatus = pStatus_+ } - request = post "ModifyCacheSubnetGroup"- response = xmlResponse+-- | Undocumented member.+mcsgrsCacheSubnetGroup :: Lens' ModifyCacheSubnetGroupResponse (Maybe CacheSubnetGroup)+mcsgrsCacheSubnetGroup = lens _mcsgrsCacheSubnetGroup (\ s a -> s{_mcsgrsCacheSubnetGroup = a}); -instance FromXML ModifyCacheSubnetGroupResponse where- parseXML = withElement "ModifyCacheSubnetGroupResult" $ \x -> ModifyCacheSubnetGroupResponse- <$> x .@? "CacheSubnetGroup"+-- | The response status code.+mcsgrsStatus :: Lens' ModifyCacheSubnetGroupResponse Int+mcsgrsStatus = lens _mcsgrsStatus (\ s a -> s{_mcsgrsStatus = a});
gen/Network/AWS/ElastiCache/ModifyReplicationGroup.hs view
@@ -1,345 +1,359 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ModifyReplicationGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ModifyReplicationGroup/ action modifies the settings for a replication--- group.+-- The /ModifyReplicationGroup/ action modifies the settings for a+-- replication group. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyReplicationGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ModifyReplicationGroup.html AWS API Reference> for ModifyReplicationGroup. module Network.AWS.ElastiCache.ModifyReplicationGroup (- -- * Request- ModifyReplicationGroup- -- ** Request constructor- , modifyReplicationGroup- -- ** Request lenses- , mrgApplyImmediately- , mrgAutoMinorVersionUpgrade+ -- * Creating a Request+ modifyReplicationGroup+ , ModifyReplicationGroup+ -- * Request Lenses , mrgAutomaticFailoverEnabled- , mrgCacheParameterGroupName- , mrgCacheSecurityGroupNames , mrgEngineVersion- , mrgNotificationTopicArn- , mrgNotificationTopicStatus- , mrgPreferredMaintenanceWindow- , mrgPrimaryClusterId- , mrgReplicationGroupDescription- , mrgReplicationGroupId+ , mrgSnapshottingClusterId , mrgSecurityGroupIds- , mrgSnapshotRetentionLimit+ , mrgAutoMinorVersionUpgrade+ , mrgReplicationGroupDescription+ , mrgCacheParameterGroupName , mrgSnapshotWindow- , mrgSnapshottingClusterId+ , mrgPrimaryClusterId+ , mrgPreferredMaintenanceWindow+ , mrgSnapshotRetentionLimit+ , mrgNotificationTopicStatus+ , mrgApplyImmediately+ , mrgNotificationTopicARN+ , mrgCacheSecurityGroupNames+ , mrgReplicationGroupId - -- * Response- , ModifyReplicationGroupResponse- -- ** Response constructor+ -- * Destructuring the Response , modifyReplicationGroupResponse- -- ** Response lenses- , mrgrReplicationGroup+ , ModifyReplicationGroupResponse+ -- * Response Lenses+ , mrgrsReplicationGroup+ , mrgrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data ModifyReplicationGroup = ModifyReplicationGroup- { _mrgApplyImmediately :: Maybe Bool- , _mrgAutoMinorVersionUpgrade :: Maybe Bool- , _mrgAutomaticFailoverEnabled :: Maybe Bool- , _mrgCacheParameterGroupName :: Maybe Text- , _mrgCacheSecurityGroupNames :: List "member" Text- , _mrgEngineVersion :: Maybe Text- , _mrgNotificationTopicArn :: Maybe Text- , _mrgNotificationTopicStatus :: Maybe Text- , _mrgPreferredMaintenanceWindow :: Maybe Text- , _mrgPrimaryClusterId :: Maybe Text- , _mrgReplicationGroupDescription :: Maybe Text- , _mrgReplicationGroupId :: Text- , _mrgSecurityGroupIds :: List "member" Text- , _mrgSnapshotRetentionLimit :: Maybe Int- , _mrgSnapshotWindow :: Maybe Text- , _mrgSnapshottingClusterId :: Maybe Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'ModifyReplicationGroup' constructor.+-- | Represents the input of a /ModifyReplicationGroups/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'modifyReplicationGroup' smart constructor.+data ModifyReplicationGroup = ModifyReplicationGroup'+ { _mrgAutomaticFailoverEnabled :: !(Maybe Bool)+ , _mrgEngineVersion :: !(Maybe Text)+ , _mrgSnapshottingClusterId :: !(Maybe Text)+ , _mrgSecurityGroupIds :: !(Maybe [Text])+ , _mrgAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _mrgReplicationGroupDescription :: !(Maybe Text)+ , _mrgCacheParameterGroupName :: !(Maybe Text)+ , _mrgSnapshotWindow :: !(Maybe Text)+ , _mrgPrimaryClusterId :: !(Maybe Text)+ , _mrgPreferredMaintenanceWindow :: !(Maybe Text)+ , _mrgSnapshotRetentionLimit :: !(Maybe Int)+ , _mrgNotificationTopicStatus :: !(Maybe Text)+ , _mrgApplyImmediately :: !(Maybe Bool)+ , _mrgNotificationTopicARN :: !(Maybe Text)+ , _mrgCacheSecurityGroupNames :: !(Maybe [Text])+ , _mrgReplicationGroupId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyReplicationGroup' with the minimum fields required to make a request. ----- * 'mrgApplyImmediately' @::@ 'Maybe' 'Bool'+-- Use one of the following lenses to modify other fields as desired: ----- * 'mrgAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'+-- * 'mrgAutomaticFailoverEnabled' ----- * 'mrgAutomaticFailoverEnabled' @::@ 'Maybe' 'Bool'+-- * 'mrgEngineVersion' ----- * 'mrgCacheParameterGroupName' @::@ 'Maybe' 'Text'+-- * 'mrgSnapshottingClusterId' ----- * 'mrgCacheSecurityGroupNames' @::@ ['Text']+-- * 'mrgSecurityGroupIds' ----- * 'mrgEngineVersion' @::@ 'Maybe' 'Text'+-- * 'mrgAutoMinorVersionUpgrade' ----- * 'mrgNotificationTopicArn' @::@ 'Maybe' 'Text'+-- * 'mrgReplicationGroupDescription' ----- * 'mrgNotificationTopicStatus' @::@ 'Maybe' 'Text'+-- * 'mrgCacheParameterGroupName' ----- * 'mrgPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'+-- * 'mrgSnapshotWindow' ----- * 'mrgPrimaryClusterId' @::@ 'Maybe' 'Text'+-- * 'mrgPrimaryClusterId' ----- * 'mrgReplicationGroupDescription' @::@ 'Maybe' 'Text'+-- * 'mrgPreferredMaintenanceWindow' ----- * 'mrgReplicationGroupId' @::@ 'Text'+-- * 'mrgSnapshotRetentionLimit' ----- * 'mrgSecurityGroupIds' @::@ ['Text']+-- * 'mrgNotificationTopicStatus' ----- * 'mrgSnapshotRetentionLimit' @::@ 'Maybe' 'Int'+-- * 'mrgApplyImmediately' ----- * 'mrgSnapshotWindow' @::@ 'Maybe' 'Text'+-- * 'mrgNotificationTopicARN' ----- * 'mrgSnapshottingClusterId' @::@ 'Maybe' 'Text'+-- * 'mrgCacheSecurityGroupNames' ---modifyReplicationGroup :: Text -- ^ 'mrgReplicationGroupId'- -> ModifyReplicationGroup-modifyReplicationGroup p1 = ModifyReplicationGroup- { _mrgReplicationGroupId = p1+-- * 'mrgReplicationGroupId'+modifyReplicationGroup+ :: Text -- ^ 'mrgReplicationGroupId'+ -> ModifyReplicationGroup+modifyReplicationGroup pReplicationGroupId_ =+ ModifyReplicationGroup'+ { _mrgAutomaticFailoverEnabled = Nothing+ , _mrgEngineVersion = Nothing+ , _mrgSnapshottingClusterId = Nothing+ , _mrgSecurityGroupIds = Nothing+ , _mrgAutoMinorVersionUpgrade = Nothing , _mrgReplicationGroupDescription = Nothing- , _mrgPrimaryClusterId = Nothing- , _mrgSnapshottingClusterId = Nothing- , _mrgAutomaticFailoverEnabled = Nothing- , _mrgCacheSecurityGroupNames = mempty- , _mrgSecurityGroupIds = mempty- , _mrgPreferredMaintenanceWindow = Nothing- , _mrgNotificationTopicArn = Nothing- , _mrgCacheParameterGroupName = Nothing- , _mrgNotificationTopicStatus = Nothing- , _mrgApplyImmediately = Nothing- , _mrgEngineVersion = Nothing- , _mrgAutoMinorVersionUpgrade = Nothing- , _mrgSnapshotRetentionLimit = Nothing- , _mrgSnapshotWindow = Nothing+ , _mrgCacheParameterGroupName = Nothing+ , _mrgSnapshotWindow = Nothing+ , _mrgPrimaryClusterId = Nothing+ , _mrgPreferredMaintenanceWindow = Nothing+ , _mrgSnapshotRetentionLimit = Nothing+ , _mrgNotificationTopicStatus = Nothing+ , _mrgApplyImmediately = Nothing+ , _mrgNotificationTopicARN = Nothing+ , _mrgCacheSecurityGroupNames = Nothing+ , _mrgReplicationGroupId = pReplicationGroupId_ } --- | If 'true', this parameter causes the modifications in this request and any--- pending modifications to be applied, asynchronously and as soon as possible,--- regardless of the /PreferredMaintenanceWindow/ setting for the replication--- group.------ If 'false', then changes to the nodes in the replication group are applied on--- the next maintenance reboot, or the next failure reboot, whichever occurs--- first.------ Valid values: 'true' | 'false'------ Default: 'false'-mrgApplyImmediately :: Lens' ModifyReplicationGroup (Maybe Bool)-mrgApplyImmediately =- lens _mrgApplyImmediately (\s a -> s { _mrgApplyImmediately = a })---- | This parameter is currently disabled.-mrgAutoMinorVersionUpgrade :: Lens' ModifyReplicationGroup (Maybe Bool)-mrgAutoMinorVersionUpgrade =- lens _mrgAutoMinorVersionUpgrade- (\s a -> s { _mrgAutoMinorVersionUpgrade = a })---- | Whether a read replica will be automatically promoted to read/write primary--- if the existing primary encounters a failure.+-- | Whether a read replica will be automatically promoted to read\/write+-- primary if the existing primary encounters a failure. -- -- Valid values: 'true' | 'false' -- -- ElastiCache Multi-AZ replication groups are not supported on: ----- Redis versions earlier than 2.8.6. T1 and T2 cache node types.+-- - Redis versions earlier than 2.8.6.+-- - T1 and T2 cache node types. mrgAutomaticFailoverEnabled :: Lens' ModifyReplicationGroup (Maybe Bool)-mrgAutomaticFailoverEnabled =- lens _mrgAutomaticFailoverEnabled- (\s a -> s { _mrgAutomaticFailoverEnabled = a })+mrgAutomaticFailoverEnabled = lens _mrgAutomaticFailoverEnabled (\ s a -> s{_mrgAutomaticFailoverEnabled = a}); --- | The name of the cache parameter group to apply to all of the clusters in this--- replication group. This change is asynchronously applied as soon as possible--- for parameters when the /ApplyImmediately/ parameter is specified as /true/ for--- this request.-mrgCacheParameterGroupName :: Lens' ModifyReplicationGroup (Maybe Text)-mrgCacheParameterGroupName =- lens _mrgCacheParameterGroupName- (\s a -> s { _mrgCacheParameterGroupName = a })+-- | The upgraded version of the cache engine to be run on the cache clusters+-- in the replication group.+mrgEngineVersion :: Lens' ModifyReplicationGroup (Maybe Text)+mrgEngineVersion = lens _mrgEngineVersion (\ s a -> s{_mrgEngineVersion = a}); --- | A list of cache security group names to authorize for the clusters in this--- replication group. This change is asynchronously applied as soon as possible.+-- | The cache cluster ID that will be used as the daily snapshot source for+-- the replication group.+mrgSnapshottingClusterId :: Lens' ModifyReplicationGroup (Maybe Text)+mrgSnapshottingClusterId = lens _mrgSnapshottingClusterId (\ s a -> s{_mrgSnapshottingClusterId = a});++-- | Specifies the VPC Security Groups associated with the cache clusters in+-- the replication group. -- -- This parameter can be used only with replication group containing cache--- clusters running outside of an Amazon Virtual Private Cloud (VPC).------ Constraints: Must contain no more than 255 alphanumeric characters. Must not--- be "Default".-mrgCacheSecurityGroupNames :: Lens' ModifyReplicationGroup [Text]-mrgCacheSecurityGroupNames =- lens _mrgCacheSecurityGroupNames- (\s a -> s { _mrgCacheSecurityGroupNames = a })- . _List+-- clusters running in an Amazon Virtual Private Cloud (VPC).+mrgSecurityGroupIds :: Lens' ModifyReplicationGroup [Text]+mrgSecurityGroupIds = lens _mrgSecurityGroupIds (\ s a -> s{_mrgSecurityGroupIds = a}) . _Default . _Coerce; --- | The upgraded version of the cache engine to be run on the cache clusters in--- the replication group.-mrgEngineVersion :: Lens' ModifyReplicationGroup (Maybe Text)-mrgEngineVersion = lens _mrgEngineVersion (\s a -> s { _mrgEngineVersion = a })+-- | This parameter is currently disabled.+mrgAutoMinorVersionUpgrade :: Lens' ModifyReplicationGroup (Maybe Bool)+mrgAutoMinorVersionUpgrade = lens _mrgAutoMinorVersionUpgrade (\ s a -> s{_mrgAutoMinorVersionUpgrade = a}); --- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which notifications--- will be sent.------ The Amazon SNS topic owner must be same as the replication group owner.-mrgNotificationTopicArn :: Lens' ModifyReplicationGroup (Maybe Text)-mrgNotificationTopicArn =- lens _mrgNotificationTopicArn (\s a -> s { _mrgNotificationTopicArn = a })+-- | A description for the replication group. Maximum length is 255+-- characters.+mrgReplicationGroupDescription :: Lens' ModifyReplicationGroup (Maybe Text)+mrgReplicationGroupDescription = lens _mrgReplicationGroupDescription (\ s a -> s{_mrgReplicationGroupDescription = a}); --- | The status of the Amazon SNS notification topic for the replication group.--- Notifications are sent only if the status is /active/.------ Valid values: 'active' | 'inactive'-mrgNotificationTopicStatus :: Lens' ModifyReplicationGroup (Maybe Text)-mrgNotificationTopicStatus =- lens _mrgNotificationTopicStatus- (\s a -> s { _mrgNotificationTopicStatus = a })+-- | The name of the cache parameter group to apply to all of the clusters in+-- this replication group. This change is asynchronously applied as soon as+-- possible for parameters when the /ApplyImmediately/ parameter is+-- specified as /true/ for this request.+mrgCacheParameterGroupName :: Lens' ModifyReplicationGroup (Maybe Text)+mrgCacheParameterGroupName = lens _mrgCacheParameterGroupName (\ s a -> s{_mrgCacheParameterGroupName = a}); --- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:+-- | The daily time range (in UTC) during which ElastiCache will begin taking+-- a daily snapshot of the node group specified by /SnapshottingClusterId/. ----- 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'-mrgPreferredMaintenanceWindow :: Lens' ModifyReplicationGroup (Maybe Text)-mrgPreferredMaintenanceWindow =- lens _mrgPreferredMaintenanceWindow- (\s a -> s { _mrgPreferredMaintenanceWindow = a })+-- Example: '05:00-09:00'+--+-- If you do not specify this parameter, then ElastiCache will+-- automatically choose an appropriate time range.+mrgSnapshotWindow :: Lens' ModifyReplicationGroup (Maybe Text)+mrgSnapshotWindow = lens _mrgSnapshotWindow (\ s a -> s{_mrgSnapshotWindow = a}); --- | If this parameter is specified, ElastiCache will promote each of the cache--- clusters in the specified replication group to the primary role. The nodes of--- all other cache clusters in the replication group will be read replicas.+-- | If this parameter is specified, ElastiCache will promote each of the+-- cache clusters in the specified replication group to the primary role.+-- The nodes of all other cache clusters in the replication group will be+-- read replicas. mrgPrimaryClusterId :: Lens' ModifyReplicationGroup (Maybe Text)-mrgPrimaryClusterId =- lens _mrgPrimaryClusterId (\s a -> s { _mrgPrimaryClusterId = a })---- | A description for the replication group. Maximum length is 255 characters.-mrgReplicationGroupDescription :: Lens' ModifyReplicationGroup (Maybe Text)-mrgReplicationGroupDescription =- lens _mrgReplicationGroupDescription- (\s a -> s { _mrgReplicationGroupDescription = a })---- | The identifier of the replication group to modify.-mrgReplicationGroupId :: Lens' ModifyReplicationGroup Text-mrgReplicationGroupId =- lens _mrgReplicationGroupId (\s a -> s { _mrgReplicationGroupId = a })+mrgPrimaryClusterId = lens _mrgPrimaryClusterId (\ s a -> s{_mrgPrimaryClusterId = a}); --- | Specifies the VPC Security Groups associated with the cache clusters in the--- replication group.+-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are: ----- This parameter can be used only with replication group containing cache--- clusters running in an Amazon Virtual Private Cloud (VPC).-mrgSecurityGroupIds :: Lens' ModifyReplicationGroup [Text]-mrgSecurityGroupIds =- lens _mrgSecurityGroupIds (\s a -> s { _mrgSecurityGroupIds = a })- . _List+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat'+--+-- Example: 'sun:05:00-sun:09:00'+mrgPreferredMaintenanceWindow :: Lens' ModifyReplicationGroup (Maybe Text)+mrgPreferredMaintenanceWindow = lens _mrgPreferredMaintenanceWindow (\ s a -> s{_mrgPreferredMaintenanceWindow = a}); --- | The number of days for which ElastiCache will retain automatic node group--- snapshots before deleting them. For example, if you set /SnapshotRetentionLimit/--- to 5, then a snapshot that was taken today will be retained for 5 days--- before being deleted.+-- | The number of days for which ElastiCache will retain automatic node+-- group snapshots before deleting them. For example, if you set+-- /SnapshotRetentionLimit/ to 5, then a snapshot that was taken today will+-- be retained for 5 days before being deleted. ----- Important--- If the value of SnapshotRetentionLimit is set to zero (0), backups--- are turned off.+-- __Important__+-- If the value of SnapshotRetentionLimit is set to zero (0), backups are+-- turned off. mrgSnapshotRetentionLimit :: Lens' ModifyReplicationGroup (Maybe Int)-mrgSnapshotRetentionLimit =- lens _mrgSnapshotRetentionLimit- (\s a -> s { _mrgSnapshotRetentionLimit = a })+mrgSnapshotRetentionLimit = lens _mrgSnapshotRetentionLimit (\ s a -> s{_mrgSnapshotRetentionLimit = a}); --- | The daily time range (in UTC) during which ElastiCache will begin taking a--- daily snapshot of the node group specified by /SnapshottingClusterId/.------ Example: '05:00-09:00'+-- | The status of the Amazon SNS notification topic for the replication+-- group. Notifications are sent only if the status is /active/. ----- If you do not specify this parameter, then ElastiCache will automatically--- choose an appropriate time range.-mrgSnapshotWindow :: Lens' ModifyReplicationGroup (Maybe Text)-mrgSnapshotWindow =- lens _mrgSnapshotWindow (\s a -> s { _mrgSnapshotWindow = a })+-- Valid values: 'active' | 'inactive'+mrgNotificationTopicStatus :: Lens' ModifyReplicationGroup (Maybe Text)+mrgNotificationTopicStatus = lens _mrgNotificationTopicStatus (\ s a -> s{_mrgNotificationTopicStatus = a}); --- | The cache cluster ID that will be used as the daily snapshot source for the+-- | If 'true', this parameter causes the modifications in this request and+-- any pending modifications to be applied, asynchronously and as soon as+-- possible, regardless of the /PreferredMaintenanceWindow/ setting for the -- replication group.-mrgSnapshottingClusterId :: Lens' ModifyReplicationGroup (Maybe Text)-mrgSnapshottingClusterId =- lens _mrgSnapshottingClusterId- (\s a -> s { _mrgSnapshottingClusterId = a })--newtype ModifyReplicationGroupResponse = ModifyReplicationGroupResponse- { _mrgrReplicationGroup :: Maybe ReplicationGroup- } deriving (Eq, Read, Show)+--+-- If 'false', then changes to the nodes in the replication group are+-- applied on the next maintenance reboot, or the next failure reboot,+-- whichever occurs first.+--+-- Valid values: 'true' | 'false'+--+-- Default: 'false'+mrgApplyImmediately :: Lens' ModifyReplicationGroup (Maybe Bool)+mrgApplyImmediately = lens _mrgApplyImmediately (\ s a -> s{_mrgApplyImmediately = a}); --- | 'ModifyReplicationGroupResponse' constructor.+-- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which+-- notifications will be sent. ----- The fields accessible through corresponding lenses are:+-- The Amazon SNS topic owner must be same as the replication group owner.+mrgNotificationTopicARN :: Lens' ModifyReplicationGroup (Maybe Text)+mrgNotificationTopicARN = lens _mrgNotificationTopicARN (\ s a -> s{_mrgNotificationTopicARN = a});++-- | A list of cache security group names to authorize for the clusters in+-- this replication group. This change is asynchronously applied as soon as+-- possible. ----- * 'mrgrReplicationGroup' @::@ 'Maybe' 'ReplicationGroup'+-- This parameter can be used only with replication group containing cache+-- clusters running outside of an Amazon Virtual Private Cloud (VPC). ---modifyReplicationGroupResponse :: ModifyReplicationGroupResponse-modifyReplicationGroupResponse = ModifyReplicationGroupResponse- { _mrgrReplicationGroup = Nothing- }+-- Constraints: Must contain no more than 255 alphanumeric characters. Must+-- not be \"Default\".+mrgCacheSecurityGroupNames :: Lens' ModifyReplicationGroup [Text]+mrgCacheSecurityGroupNames = lens _mrgCacheSecurityGroupNames (\ s a -> s{_mrgCacheSecurityGroupNames = a}) . _Default . _Coerce; -mrgrReplicationGroup :: Lens' ModifyReplicationGroupResponse (Maybe ReplicationGroup)-mrgrReplicationGroup =- lens _mrgrReplicationGroup (\s a -> s { _mrgrReplicationGroup = a })+-- | The identifier of the replication group to modify.+mrgReplicationGroupId :: Lens' ModifyReplicationGroup Text+mrgReplicationGroupId = lens _mrgReplicationGroupId (\ s a -> s{_mrgReplicationGroupId = a}); +instance AWSRequest ModifyReplicationGroup where+ type Sv ModifyReplicationGroup = ElastiCache+ type Rs ModifyReplicationGroup =+ ModifyReplicationGroupResponse+ request = postQuery+ response+ = receiveXMLWrapper "ModifyReplicationGroupResult"+ (\ s h x ->+ ModifyReplicationGroupResponse' <$>+ (x .@? "ReplicationGroup") <*> (pure (fromEnum s)))++instance ToHeaders ModifyReplicationGroup where+ toHeaders = const mempty+ instance ToPath ModifyReplicationGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery ModifyReplicationGroup where- toQuery ModifyReplicationGroup{..} = mconcat- [ "ApplyImmediately" =? _mrgApplyImmediately- , "AutoMinorVersionUpgrade" =? _mrgAutoMinorVersionUpgrade- , "AutomaticFailoverEnabled" =? _mrgAutomaticFailoverEnabled- , "CacheParameterGroupName" =? _mrgCacheParameterGroupName- , "CacheSecurityGroupNames" =? _mrgCacheSecurityGroupNames- , "EngineVersion" =? _mrgEngineVersion- , "NotificationTopicArn" =? _mrgNotificationTopicArn- , "NotificationTopicStatus" =? _mrgNotificationTopicStatus- , "PreferredMaintenanceWindow" =? _mrgPreferredMaintenanceWindow- , "PrimaryClusterId" =? _mrgPrimaryClusterId- , "ReplicationGroupDescription" =? _mrgReplicationGroupDescription- , "ReplicationGroupId" =? _mrgReplicationGroupId- , "SecurityGroupIds" =? _mrgSecurityGroupIds- , "SnapshotRetentionLimit" =? _mrgSnapshotRetentionLimit- , "SnapshotWindow" =? _mrgSnapshotWindow- , "SnapshottingClusterId" =? _mrgSnapshottingClusterId- ]+ toQuery ModifyReplicationGroup'{..}+ = mconcat+ ["Action" =:+ ("ModifyReplicationGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "AutomaticFailoverEnabled" =:+ _mrgAutomaticFailoverEnabled,+ "EngineVersion" =: _mrgEngineVersion,+ "SnapshottingClusterId" =: _mrgSnapshottingClusterId,+ "SecurityGroupIds" =:+ toQuery+ (toQueryList "SecurityGroupId" <$>+ _mrgSecurityGroupIds),+ "AutoMinorVersionUpgrade" =:+ _mrgAutoMinorVersionUpgrade,+ "ReplicationGroupDescription" =:+ _mrgReplicationGroupDescription,+ "CacheParameterGroupName" =:+ _mrgCacheParameterGroupName,+ "SnapshotWindow" =: _mrgSnapshotWindow,+ "PrimaryClusterId" =: _mrgPrimaryClusterId,+ "PreferredMaintenanceWindow" =:+ _mrgPreferredMaintenanceWindow,+ "SnapshotRetentionLimit" =:+ _mrgSnapshotRetentionLimit,+ "NotificationTopicStatus" =:+ _mrgNotificationTopicStatus,+ "ApplyImmediately" =: _mrgApplyImmediately,+ "NotificationTopicArn" =: _mrgNotificationTopicARN,+ "CacheSecurityGroupNames" =:+ toQuery+ (toQueryList "CacheSecurityGroupName" <$>+ _mrgCacheSecurityGroupNames),+ "ReplicationGroupId" =: _mrgReplicationGroupId] -instance ToHeaders ModifyReplicationGroup+-- | /See:/ 'modifyReplicationGroupResponse' smart constructor.+data ModifyReplicationGroupResponse = ModifyReplicationGroupResponse'+ { _mrgrsReplicationGroup :: !(Maybe ReplicationGroup)+ , _mrgrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ModifyReplicationGroup where- type Sv ModifyReplicationGroup = ElastiCache- type Rs ModifyReplicationGroup = ModifyReplicationGroupResponse+-- | Creates a value of 'ModifyReplicationGroupResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mrgrsReplicationGroup'+--+-- * 'mrgrsStatus'+modifyReplicationGroupResponse+ :: Int -- ^ 'mrgrsStatus'+ -> ModifyReplicationGroupResponse+modifyReplicationGroupResponse pStatus_ =+ ModifyReplicationGroupResponse'+ { _mrgrsReplicationGroup = Nothing+ , _mrgrsStatus = pStatus_+ } - request = post "ModifyReplicationGroup"- response = xmlResponse+-- | Undocumented member.+mrgrsReplicationGroup :: Lens' ModifyReplicationGroupResponse (Maybe ReplicationGroup)+mrgrsReplicationGroup = lens _mrgrsReplicationGroup (\ s a -> s{_mrgrsReplicationGroup = a}); -instance FromXML ModifyReplicationGroupResponse where- parseXML = withElement "ModifyReplicationGroupResult" $ \x -> ModifyReplicationGroupResponse- <$> x .@? "ReplicationGroup"+-- | The response status code.+mrgrsStatus :: Lens' ModifyReplicationGroupResponse Int+mrgrsStatus = lens _mrgrsStatus (\ s a -> s{_mrgrsStatus = a});
gen/Network/AWS/ElastiCache/PurchaseReservedCacheNodesOffering.hs view
@@ -1,140 +1,157 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /PurchaseReservedCacheNodesOffering/ action allows you to purchase a+-- The /PurchaseReservedCacheNodesOffering/ action allows you to purchase a -- reserved cache node offering. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_PurchaseReservedCacheNodesOffering.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_PurchaseReservedCacheNodesOffering.html AWS API Reference> for PurchaseReservedCacheNodesOffering. module Network.AWS.ElastiCache.PurchaseReservedCacheNodesOffering (- -- * Request- PurchaseReservedCacheNodesOffering- -- ** Request constructor- , purchaseReservedCacheNodesOffering- -- ** Request lenses+ -- * Creating a Request+ purchaseReservedCacheNodesOffering+ , PurchaseReservedCacheNodesOffering+ -- * Request Lenses , prcnoCacheNodeCount , prcnoReservedCacheNodeId , prcnoReservedCacheNodesOfferingId - -- * Response- , PurchaseReservedCacheNodesOfferingResponse- -- ** Response constructor+ -- * Destructuring the Response , purchaseReservedCacheNodesOfferingResponse- -- ** Response lenses- , prcnorReservedCacheNode+ , PurchaseReservedCacheNodesOfferingResponse+ -- * Response Lenses+ , prcnorsReservedCacheNode+ , prcnorsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data PurchaseReservedCacheNodesOffering = PurchaseReservedCacheNodesOffering- { _prcnoCacheNodeCount :: Maybe Int- , _prcnoReservedCacheNodeId :: Maybe Text- , _prcnoReservedCacheNodesOfferingId :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'PurchaseReservedCacheNodesOffering' constructor.+-- | Represents the input of a /PurchaseReservedCacheNodesOffering/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'purchaseReservedCacheNodesOffering' smart constructor.+data PurchaseReservedCacheNodesOffering = PurchaseReservedCacheNodesOffering'+ { _prcnoCacheNodeCount :: !(Maybe Int)+ , _prcnoReservedCacheNodeId :: !(Maybe Text)+ , _prcnoReservedCacheNodesOfferingId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'PurchaseReservedCacheNodesOffering' with the minimum fields required to make a request. ----- * 'prcnoCacheNodeCount' @::@ 'Maybe' 'Int'+-- Use one of the following lenses to modify other fields as desired: ----- * 'prcnoReservedCacheNodeId' @::@ 'Maybe' 'Text'+-- * 'prcnoCacheNodeCount' ----- * 'prcnoReservedCacheNodesOfferingId' @::@ 'Text'+-- * 'prcnoReservedCacheNodeId' ---purchaseReservedCacheNodesOffering :: Text -- ^ 'prcnoReservedCacheNodesOfferingId'- -> PurchaseReservedCacheNodesOffering-purchaseReservedCacheNodesOffering p1 = PurchaseReservedCacheNodesOffering- { _prcnoReservedCacheNodesOfferingId = p1- , _prcnoReservedCacheNodeId = Nothing- , _prcnoCacheNodeCount = Nothing+-- * 'prcnoReservedCacheNodesOfferingId'+purchaseReservedCacheNodesOffering+ :: Text -- ^ 'prcnoReservedCacheNodesOfferingId'+ -> PurchaseReservedCacheNodesOffering+purchaseReservedCacheNodesOffering pReservedCacheNodesOfferingId_ =+ PurchaseReservedCacheNodesOffering'+ { _prcnoCacheNodeCount = Nothing+ , _prcnoReservedCacheNodeId = Nothing+ , _prcnoReservedCacheNodesOfferingId = pReservedCacheNodesOfferingId_ } -- | The number of cache node instances to reserve. -- -- Default: '1' prcnoCacheNodeCount :: Lens' PurchaseReservedCacheNodesOffering (Maybe Int)-prcnoCacheNodeCount =- lens _prcnoCacheNodeCount (\s a -> s { _prcnoCacheNodeCount = a })+prcnoCacheNodeCount = lens _prcnoCacheNodeCount (\ s a -> s{_prcnoCacheNodeCount = a}); -- | A customer-specified identifier to track this reservation. -- -- Example: myreservationID prcnoReservedCacheNodeId :: Lens' PurchaseReservedCacheNodesOffering (Maybe Text)-prcnoReservedCacheNodeId =- lens _prcnoReservedCacheNodeId- (\s a -> s { _prcnoReservedCacheNodeId = a })+prcnoReservedCacheNodeId = lens _prcnoReservedCacheNodeId (\ s a -> s{_prcnoReservedCacheNodeId = a}); -- | The ID of the reserved cache node offering to purchase. -- -- Example: 438012d3-4052-4cc7-b2e3-8d3372e0e706 prcnoReservedCacheNodesOfferingId :: Lens' PurchaseReservedCacheNodesOffering Text-prcnoReservedCacheNodesOfferingId =- lens _prcnoReservedCacheNodesOfferingId- (\s a -> s { _prcnoReservedCacheNodesOfferingId = a })--newtype PurchaseReservedCacheNodesOfferingResponse = PurchaseReservedCacheNodesOfferingResponse- { _prcnorReservedCacheNode :: Maybe ReservedCacheNode- } deriving (Eq, Read, Show)+prcnoReservedCacheNodesOfferingId = lens _prcnoReservedCacheNodesOfferingId (\ s a -> s{_prcnoReservedCacheNodesOfferingId = a}); --- | 'PurchaseReservedCacheNodesOfferingResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'prcnorReservedCacheNode' @::@ 'Maybe' 'ReservedCacheNode'----purchaseReservedCacheNodesOfferingResponse :: PurchaseReservedCacheNodesOfferingResponse-purchaseReservedCacheNodesOfferingResponse = PurchaseReservedCacheNodesOfferingResponse- { _prcnorReservedCacheNode = Nothing- }+instance AWSRequest+ PurchaseReservedCacheNodesOffering where+ type Sv PurchaseReservedCacheNodesOffering =+ ElastiCache+ type Rs PurchaseReservedCacheNodesOffering =+ PurchaseReservedCacheNodesOfferingResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "PurchaseReservedCacheNodesOfferingResult"+ (\ s h x ->+ PurchaseReservedCacheNodesOfferingResponse' <$>+ (x .@? "ReservedCacheNode") <*> (pure (fromEnum s))) -prcnorReservedCacheNode :: Lens' PurchaseReservedCacheNodesOfferingResponse (Maybe ReservedCacheNode)-prcnorReservedCacheNode =- lens _prcnorReservedCacheNode (\s a -> s { _prcnorReservedCacheNode = a })+instance ToHeaders PurchaseReservedCacheNodesOffering+ where+ toHeaders = const mempty -instance ToPath PurchaseReservedCacheNodesOffering where- toPath = const "/"+instance ToPath PurchaseReservedCacheNodesOffering+ where+ toPath = const "/" -instance ToQuery PurchaseReservedCacheNodesOffering where- toQuery PurchaseReservedCacheNodesOffering{..} = mconcat- [ "CacheNodeCount" =? _prcnoCacheNodeCount- , "ReservedCacheNodeId" =? _prcnoReservedCacheNodeId- , "ReservedCacheNodesOfferingId" =? _prcnoReservedCacheNodesOfferingId- ]+instance ToQuery PurchaseReservedCacheNodesOffering+ where+ toQuery PurchaseReservedCacheNodesOffering'{..}+ = mconcat+ ["Action" =:+ ("PurchaseReservedCacheNodesOffering" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheNodeCount" =: _prcnoCacheNodeCount,+ "ReservedCacheNodeId" =: _prcnoReservedCacheNodeId,+ "ReservedCacheNodesOfferingId" =:+ _prcnoReservedCacheNodesOfferingId] -instance ToHeaders PurchaseReservedCacheNodesOffering+-- | /See:/ 'purchaseReservedCacheNodesOfferingResponse' smart constructor.+data PurchaseReservedCacheNodesOfferingResponse = PurchaseReservedCacheNodesOfferingResponse'+ { _prcnorsReservedCacheNode :: !(Maybe ReservedCacheNode)+ , _prcnorsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest PurchaseReservedCacheNodesOffering where- type Sv PurchaseReservedCacheNodesOffering = ElastiCache- type Rs PurchaseReservedCacheNodesOffering = PurchaseReservedCacheNodesOfferingResponse+-- | Creates a value of 'PurchaseReservedCacheNodesOfferingResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'prcnorsReservedCacheNode'+--+-- * 'prcnorsStatus'+purchaseReservedCacheNodesOfferingResponse+ :: Int -- ^ 'prcnorsStatus'+ -> PurchaseReservedCacheNodesOfferingResponse+purchaseReservedCacheNodesOfferingResponse pStatus_ =+ PurchaseReservedCacheNodesOfferingResponse'+ { _prcnorsReservedCacheNode = Nothing+ , _prcnorsStatus = pStatus_+ } - request = post "PurchaseReservedCacheNodesOffering"- response = xmlResponse+-- | Undocumented member.+prcnorsReservedCacheNode :: Lens' PurchaseReservedCacheNodesOfferingResponse (Maybe ReservedCacheNode)+prcnorsReservedCacheNode = lens _prcnorsReservedCacheNode (\ s a -> s{_prcnorsReservedCacheNode = a}); -instance FromXML PurchaseReservedCacheNodesOfferingResponse where- parseXML = withElement "PurchaseReservedCacheNodesOfferingResult" $ \x -> PurchaseReservedCacheNodesOfferingResponse- <$> x .@? "ReservedCacheNode"+-- | The response status code.+prcnorsStatus :: Lens' PurchaseReservedCacheNodesOfferingResponse Int+prcnorsStatus = lens _prcnorsStatus (\ s a -> s{_prcnorsStatus = a});
gen/Network/AWS/ElastiCache/RebootCacheCluster.hs view
@@ -1,131 +1,146 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.RebootCacheCluster--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /RebootCacheCluster/ action reboots some, or all, of the cache nodes within--- a provisioned cache cluster. This API will apply any modified cache parameter--- groups to the cache cluster. The reboot action takes place as soon as--- possible, and results in a momentary outage to the cache cluster. During the--- reboot, the cache cluster status is set to REBOOTING.+-- The /RebootCacheCluster/ action reboots some, or all, of the cache nodes+-- within a provisioned cache cluster. This API will apply any modified+-- cache parameter groups to the cache cluster. The reboot action takes+-- place as soon as possible, and results in a momentary outage to the+-- cache cluster. During the reboot, the cache cluster status is set to+-- REBOOTING. -- -- The reboot causes the contents of the cache (for each cache node being -- rebooted) to be lost. -- -- When the reboot is complete, a cache cluster event is created. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RebootCacheCluster.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RebootCacheCluster.html AWS API Reference> for RebootCacheCluster. module Network.AWS.ElastiCache.RebootCacheCluster (- -- * Request- RebootCacheCluster- -- ** Request constructor- , rebootCacheCluster- -- ** Request lenses+ -- * Creating a Request+ rebootCacheCluster+ , RebootCacheCluster+ -- * Request Lenses , rccCacheClusterId , rccCacheNodeIdsToReboot - -- * Response- , RebootCacheClusterResponse- -- ** Response constructor+ -- * Destructuring the Response , rebootCacheClusterResponse- -- ** Response lenses- , rccrCacheCluster+ , RebootCacheClusterResponse+ -- * Response Lenses+ , rccrsCacheCluster+ , rccrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data RebootCacheCluster = RebootCacheCluster- { _rccCacheClusterId :: Text- , _rccCacheNodeIdsToReboot :: List "member" Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'RebootCacheCluster' constructor.+-- | Represents the input of a /RebootCacheCluster/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'rebootCacheCluster' smart constructor.+data RebootCacheCluster = RebootCacheCluster'+ { _rccCacheClusterId :: !Text+ , _rccCacheNodeIdsToReboot :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RebootCacheCluster' with the minimum fields required to make a request. ----- * 'rccCacheClusterId' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rccCacheNodeIdsToReboot' @::@ ['Text']+-- * 'rccCacheClusterId' ---rebootCacheCluster :: Text -- ^ 'rccCacheClusterId'- -> RebootCacheCluster-rebootCacheCluster p1 = RebootCacheCluster- { _rccCacheClusterId = p1+-- * 'rccCacheNodeIdsToReboot'+rebootCacheCluster+ :: Text -- ^ 'rccCacheClusterId'+ -> RebootCacheCluster+rebootCacheCluster pCacheClusterId_ =+ RebootCacheCluster'+ { _rccCacheClusterId = pCacheClusterId_ , _rccCacheNodeIdsToReboot = mempty } --- | The cache cluster identifier. This parameter is stored as a lowercase string.+-- | The cache cluster identifier. This parameter is stored as a lowercase+-- string. rccCacheClusterId :: Lens' RebootCacheCluster Text-rccCacheClusterId =- lens _rccCacheClusterId (\s a -> s { _rccCacheClusterId = a })+rccCacheClusterId = lens _rccCacheClusterId (\ s a -> s{_rccCacheClusterId = a}); --- | A list of cache node IDs to reboot. A node ID is a numeric identifier (0001,--- 0002, etc.). To reboot an entire cache cluster, specify all of the cache node--- IDs.+-- | A list of cache node IDs to reboot. A node ID is a numeric identifier+-- (0001, 0002, etc.). To reboot an entire cache cluster, specify all of+-- the cache node IDs. rccCacheNodeIdsToReboot :: Lens' RebootCacheCluster [Text]-rccCacheNodeIdsToReboot =- lens _rccCacheNodeIdsToReboot (\s a -> s { _rccCacheNodeIdsToReboot = a })- . _List--newtype RebootCacheClusterResponse = RebootCacheClusterResponse- { _rccrCacheCluster :: Maybe CacheCluster- } deriving (Eq, Read, Show)+rccCacheNodeIdsToReboot = lens _rccCacheNodeIdsToReboot (\ s a -> s{_rccCacheNodeIdsToReboot = a}) . _Coerce; --- | 'RebootCacheClusterResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rccrCacheCluster' @::@ 'Maybe' 'CacheCluster'----rebootCacheClusterResponse :: RebootCacheClusterResponse-rebootCacheClusterResponse = RebootCacheClusterResponse- { _rccrCacheCluster = Nothing- }+instance AWSRequest RebootCacheCluster where+ type Sv RebootCacheCluster = ElastiCache+ type Rs RebootCacheCluster =+ RebootCacheClusterResponse+ request = postQuery+ response+ = receiveXMLWrapper "RebootCacheClusterResult"+ (\ s h x ->+ RebootCacheClusterResponse' <$>+ (x .@? "CacheCluster") <*> (pure (fromEnum s))) -rccrCacheCluster :: Lens' RebootCacheClusterResponse (Maybe CacheCluster)-rccrCacheCluster = lens _rccrCacheCluster (\s a -> s { _rccrCacheCluster = a })+instance ToHeaders RebootCacheCluster where+ toHeaders = const mempty instance ToPath RebootCacheCluster where- toPath = const "/"+ toPath = const "/" instance ToQuery RebootCacheCluster where- toQuery RebootCacheCluster{..} = mconcat- [ "CacheClusterId" =? _rccCacheClusterId- , "CacheNodeIdsToReboot" =? _rccCacheNodeIdsToReboot- ]+ toQuery RebootCacheCluster'{..}+ = mconcat+ ["Action" =: ("RebootCacheCluster" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheClusterId" =: _rccCacheClusterId,+ "CacheNodeIdsToReboot" =:+ toQueryList "CacheNodeId" _rccCacheNodeIdsToReboot] -instance ToHeaders RebootCacheCluster+-- | /See:/ 'rebootCacheClusterResponse' smart constructor.+data RebootCacheClusterResponse = RebootCacheClusterResponse'+ { _rccrsCacheCluster :: !(Maybe CacheCluster)+ , _rccrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest RebootCacheCluster where- type Sv RebootCacheCluster = ElastiCache- type Rs RebootCacheCluster = RebootCacheClusterResponse+-- | Creates a value of 'RebootCacheClusterResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rccrsCacheCluster'+--+-- * 'rccrsStatus'+rebootCacheClusterResponse+ :: Int -- ^ 'rccrsStatus'+ -> RebootCacheClusterResponse+rebootCacheClusterResponse pStatus_ =+ RebootCacheClusterResponse'+ { _rccrsCacheCluster = Nothing+ , _rccrsStatus = pStatus_+ } - request = post "RebootCacheCluster"- response = xmlResponse+-- | Undocumented member.+rccrsCacheCluster :: Lens' RebootCacheClusterResponse (Maybe CacheCluster)+rccrsCacheCluster = lens _rccrsCacheCluster (\ s a -> s{_rccrsCacheCluster = a}); -instance FromXML RebootCacheClusterResponse where- parseXML = withElement "RebootCacheClusterResult" $ \x -> RebootCacheClusterResponse- <$> x .@? "CacheCluster"+-- | The response status code.+rccrsStatus :: Lens' RebootCacheClusterResponse Int+rccrsStatus = lens _rccrsStatus (\ s a -> s{_rccrsStatus = a});
gen/Network/AWS/ElastiCache/RemoveTagsFromResource.hs view
@@ -1,129 +1,105 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.RemoveTagsFromResource--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /RemoveTagsFromResource/ action removes the tags identified by the 'TagKeys'--- list from the named resource.+-- The /RemoveTagsFromResource/ action removes the tags identified by the+-- 'TagKeys' list from the named resource. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RemoveTagsFromResource.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RemoveTagsFromResource.html AWS API Reference> for RemoveTagsFromResource. module Network.AWS.ElastiCache.RemoveTagsFromResource (- -- * Request- RemoveTagsFromResource- -- ** Request constructor- , removeTagsFromResource- -- ** Request lenses+ -- * Creating a Request+ removeTagsFromResource+ , RemoveTagsFromResource+ -- * Request Lenses , rtfrResourceName , rtfrTagKeys - -- * Response- , RemoveTagsFromResourceResponse- -- ** Response constructor- , removeTagsFromResourceResponse- -- ** Response lenses- , rtfrrTagList+ -- * Destructuring the Response+ , tagListMessage+ , TagListMessage+ -- * Response Lenses+ , tlmTagList ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data RemoveTagsFromResource = RemoveTagsFromResource- { _rtfrResourceName :: Text- , _rtfrTagKeys :: List "member" Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'RemoveTagsFromResource' constructor.+-- | Represents the input of a /RemoveTagsFromResource/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'removeTagsFromResource' smart constructor.+data RemoveTagsFromResource = RemoveTagsFromResource'+ { _rtfrResourceName :: !Text+ , _rtfrTagKeys :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RemoveTagsFromResource' with the minimum fields required to make a request. ----- * 'rtfrResourceName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rtfrTagKeys' @::@ ['Text']+-- * 'rtfrResourceName' ---removeTagsFromResource :: Text -- ^ 'rtfrResourceName'- -> RemoveTagsFromResource-removeTagsFromResource p1 = RemoveTagsFromResource- { _rtfrResourceName = p1- , _rtfrTagKeys = mempty+-- * 'rtfrTagKeys'+removeTagsFromResource+ :: Text -- ^ 'rtfrResourceName'+ -> RemoveTagsFromResource+removeTagsFromResource pResourceName_ =+ RemoveTagsFromResource'+ { _rtfrResourceName = pResourceName_+ , _rtfrTagKeys = mempty } -- | The name of the ElastiCache resource from which you want the listed tags--- removed, for example 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'.+-- removed, for example+-- 'arn:aws:elasticache:us-west-2:0123456789:cluster:myCluster'. rtfrResourceName :: Lens' RemoveTagsFromResource Text-rtfrResourceName = lens _rtfrResourceName (\s a -> s { _rtfrResourceName = a })+rtfrResourceName = lens _rtfrResourceName (\ s a -> s{_rtfrResourceName = a}); -- | A list of 'TagKeys' identifying the tags you want removed from the named--- resource. For example, 'TagKeys.member.1=Region' removes the cost allocation--- tag with the key name 'Region' from the resource named by the /ResourceName/--- parameter.+-- resource. For example, 'TagKeys.member.1=Region' removes the cost+-- allocation tag with the key name 'Region' from the resource named by the+-- /ResourceName/ parameter. rtfrTagKeys :: Lens' RemoveTagsFromResource [Text]-rtfrTagKeys = lens _rtfrTagKeys (\s a -> s { _rtfrTagKeys = a }) . _List--newtype RemoveTagsFromResourceResponse = RemoveTagsFromResourceResponse- { _rtfrrTagList :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList RemoveTagsFromResourceResponse where- type Item RemoveTagsFromResourceResponse = Tag-- fromList = RemoveTagsFromResourceResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _rtfrrTagList+rtfrTagKeys = lens _rtfrTagKeys (\ s a -> s{_rtfrTagKeys = a}) . _Coerce; --- | 'RemoveTagsFromResourceResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rtfrrTagList' @::@ ['Tag']----removeTagsFromResourceResponse :: RemoveTagsFromResourceResponse-removeTagsFromResourceResponse = RemoveTagsFromResourceResponse- { _rtfrrTagList = mempty- }+instance AWSRequest RemoveTagsFromResource where+ type Sv RemoveTagsFromResource = ElastiCache+ type Rs RemoveTagsFromResource = TagListMessage+ request = postQuery+ response+ = receiveXMLWrapper "RemoveTagsFromResourceResult"+ (\ s h x -> parseXML x) --- | A list of cost allocation tags as key-value pairs.-rtfrrTagList :: Lens' RemoveTagsFromResourceResponse [Tag]-rtfrrTagList = lens _rtfrrTagList (\s a -> s { _rtfrrTagList = a }) . _List+instance ToHeaders RemoveTagsFromResource where+ toHeaders = const mempty instance ToPath RemoveTagsFromResource where- toPath = const "/"+ toPath = const "/" instance ToQuery RemoveTagsFromResource where- toQuery RemoveTagsFromResource{..} = mconcat- [ "ResourceName" =? _rtfrResourceName- , "TagKeys" =? _rtfrTagKeys- ]--instance ToHeaders RemoveTagsFromResource--instance AWSRequest RemoveTagsFromResource where- type Sv RemoveTagsFromResource = ElastiCache- type Rs RemoveTagsFromResource = RemoveTagsFromResourceResponse-- request = post "RemoveTagsFromResource"- response = xmlResponse--instance FromXML RemoveTagsFromResourceResponse where- parseXML = withElement "RemoveTagsFromResourceResult" $ \x -> RemoveTagsFromResourceResponse- <$> x .@? "TagList" .!@ mempty+ toQuery RemoveTagsFromResource'{..}+ = mconcat+ ["Action" =:+ ("RemoveTagsFromResource" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "ResourceName" =: _rtfrResourceName,+ "TagKeys" =: toQueryList "member" _rtfrTagKeys]
gen/Network/AWS/ElastiCache/ResetCacheParameterGroup.hs view
@@ -1,143 +1,122 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.ResetCacheParameterGroup--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /ResetCacheParameterGroup/ action modifies the parameters of a cache--- parameter group to the engine or system default value. You can reset specific--- parameters by submitting a list of parameter names. To reset the entire cache--- parameter group, specify the /ResetAllParameters/ and /CacheParameterGroupName/--- parameters.+-- The /ResetCacheParameterGroup/ action modifies the parameters of a cache+-- parameter group to the engine or system default value. You can reset+-- specific parameters by submitting a list of parameter names. To reset+-- the entire cache parameter group, specify the /ResetAllParameters/ and+-- /CacheParameterGroupName/ parameters. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ResetCacheParameterGroup.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_ResetCacheParameterGroup.html AWS API Reference> for ResetCacheParameterGroup. module Network.AWS.ElastiCache.ResetCacheParameterGroup (- -- * Request- ResetCacheParameterGroup- -- ** Request constructor- , resetCacheParameterGroup- -- ** Request lenses+ -- * Creating a Request+ resetCacheParameterGroup+ , ResetCacheParameterGroup+ -- * Request Lenses+ , rcpgResetAllParameters , rcpgCacheParameterGroupName , rcpgParameterNameValues- , rcpgResetAllParameters - -- * Response- , ResetCacheParameterGroupResponse- -- ** Response constructor- , resetCacheParameterGroupResponse- -- ** Response lenses- , rcpgrCacheParameterGroupName+ -- * Destructuring the Response+ , cacheParameterGroupNameMessage+ , CacheParameterGroupNameMessage+ -- * Response Lenses+ , cpgnmCacheParameterGroupName ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data ResetCacheParameterGroup = ResetCacheParameterGroup- { _rcpgCacheParameterGroupName :: Text- , _rcpgParameterNameValues :: List "member" ParameterNameValue- , _rcpgResetAllParameters :: Maybe Bool- } deriving (Eq, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'ResetCacheParameterGroup' constructor.+-- | Represents the input of a /ResetCacheParameterGroup/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'resetCacheParameterGroup' smart constructor.+data ResetCacheParameterGroup = ResetCacheParameterGroup'+ { _rcpgResetAllParameters :: !(Maybe Bool)+ , _rcpgCacheParameterGroupName :: !Text+ , _rcpgParameterNameValues :: ![ParameterNameValue]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ResetCacheParameterGroup' with the minimum fields required to make a request. ----- * 'rcpgCacheParameterGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rcpgParameterNameValues' @::@ ['ParameterNameValue']+-- * 'rcpgResetAllParameters' ----- * 'rcpgResetAllParameters' @::@ 'Maybe' 'Bool'+-- * 'rcpgCacheParameterGroupName' ---resetCacheParameterGroup :: Text -- ^ 'rcpgCacheParameterGroupName'- -> ResetCacheParameterGroup-resetCacheParameterGroup p1 = ResetCacheParameterGroup- { _rcpgCacheParameterGroupName = p1- , _rcpgResetAllParameters = Nothing- , _rcpgParameterNameValues = mempty+-- * 'rcpgParameterNameValues'+resetCacheParameterGroup+ :: Text -- ^ 'rcpgCacheParameterGroupName'+ -> ResetCacheParameterGroup+resetCacheParameterGroup pCacheParameterGroupName_ =+ ResetCacheParameterGroup'+ { _rcpgResetAllParameters = Nothing+ , _rcpgCacheParameterGroupName = pCacheParameterGroupName_+ , _rcpgParameterNameValues = mempty } --- | The name of the cache parameter group to reset.-rcpgCacheParameterGroupName :: Lens' ResetCacheParameterGroup Text-rcpgCacheParameterGroupName =- lens _rcpgCacheParameterGroupName- (\s a -> s { _rcpgCacheParameterGroupName = a })---- | An array of parameter names to be reset. If you are not resetting the entire--- cache parameter group, you must specify at least one parameter name.-rcpgParameterNameValues :: Lens' ResetCacheParameterGroup [ParameterNameValue]-rcpgParameterNameValues =- lens _rcpgParameterNameValues (\s a -> s { _rcpgParameterNameValues = a })- . _List---- | If /true/, all parameters in the cache parameter group will be reset to default--- values. If /false/, no such action occurs.+-- | If /true/, all parameters in the cache parameter group will be reset to+-- default values. If /false/, no such action occurs. -- -- Valid values: 'true' | 'false' rcpgResetAllParameters :: Lens' ResetCacheParameterGroup (Maybe Bool)-rcpgResetAllParameters =- lens _rcpgResetAllParameters (\s a -> s { _rcpgResetAllParameters = a })+rcpgResetAllParameters = lens _rcpgResetAllParameters (\ s a -> s{_rcpgResetAllParameters = a}); -newtype ResetCacheParameterGroupResponse = ResetCacheParameterGroupResponse- { _rcpgrCacheParameterGroupName :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)+-- | The name of the cache parameter group to reset.+rcpgCacheParameterGroupName :: Lens' ResetCacheParameterGroup Text+rcpgCacheParameterGroupName = lens _rcpgCacheParameterGroupName (\ s a -> s{_rcpgCacheParameterGroupName = a}); --- | 'ResetCacheParameterGroupResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcpgrCacheParameterGroupName' @::@ 'Maybe' 'Text'----resetCacheParameterGroupResponse :: ResetCacheParameterGroupResponse-resetCacheParameterGroupResponse = ResetCacheParameterGroupResponse- { _rcpgrCacheParameterGroupName = Nothing- }+-- | An array of parameter names to be reset. If you are not resetting the+-- entire cache parameter group, you must specify at least one parameter+-- name.+rcpgParameterNameValues :: Lens' ResetCacheParameterGroup [ParameterNameValue]+rcpgParameterNameValues = lens _rcpgParameterNameValues (\ s a -> s{_rcpgParameterNameValues = a}) . _Coerce; --- | The name of the cache parameter group.-rcpgrCacheParameterGroupName :: Lens' ResetCacheParameterGroupResponse (Maybe Text)-rcpgrCacheParameterGroupName =- lens _rcpgrCacheParameterGroupName- (\s a -> s { _rcpgrCacheParameterGroupName = a })+instance AWSRequest ResetCacheParameterGroup where+ type Sv ResetCacheParameterGroup = ElastiCache+ type Rs ResetCacheParameterGroup =+ CacheParameterGroupNameMessage+ request = postQuery+ response+ = receiveXMLWrapper "ResetCacheParameterGroupResult"+ (\ s h x -> parseXML x) +instance ToHeaders ResetCacheParameterGroup where+ toHeaders = const mempty+ instance ToPath ResetCacheParameterGroup where- toPath = const "/"+ toPath = const "/" instance ToQuery ResetCacheParameterGroup where- toQuery ResetCacheParameterGroup{..} = mconcat- [ "CacheParameterGroupName" =? _rcpgCacheParameterGroupName- , "ParameterNameValues" =? _rcpgParameterNameValues- , "ResetAllParameters" =? _rcpgResetAllParameters- ]--instance ToHeaders ResetCacheParameterGroup--instance AWSRequest ResetCacheParameterGroup where- type Sv ResetCacheParameterGroup = ElastiCache- type Rs ResetCacheParameterGroup = ResetCacheParameterGroupResponse-- request = post "ResetCacheParameterGroup"- response = xmlResponse--instance FromXML ResetCacheParameterGroupResponse where- parseXML = withElement "ResetCacheParameterGroupResult" $ \x -> ResetCacheParameterGroupResponse- <$> x .@? "CacheParameterGroupName"+ toQuery ResetCacheParameterGroup'{..}+ = mconcat+ ["Action" =:+ ("ResetCacheParameterGroup" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "ResetAllParameters" =: _rcpgResetAllParameters,+ "CacheParameterGroupName" =:+ _rcpgCacheParameterGroupName,+ "ParameterNameValues" =:+ toQueryList "ParameterNameValue"+ _rcpgParameterNameValues]
gen/Network/AWS/ElastiCache/RevokeCacheSecurityGroupIngress.hs view
@@ -1,141 +1,155 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-} +-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | The /RevokeCacheSecurityGroupIngress/ action revokes ingress from a cache--- security group. Use this action to disallow access from an Amazon EC2--- security group that had been previously authorized.+-- The /RevokeCacheSecurityGroupIngress/ action revokes ingress from a+-- cache security group. Use this action to disallow access from an Amazon+-- EC2 security group that had been previously authorized. ----- <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RevokeCacheSecurityGroupIngress.html>+-- /See:/ <http://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_RevokeCacheSecurityGroupIngress.html AWS API Reference> for RevokeCacheSecurityGroupIngress. module Network.AWS.ElastiCache.RevokeCacheSecurityGroupIngress (- -- * Request- RevokeCacheSecurityGroupIngress- -- ** Request constructor- , revokeCacheSecurityGroupIngress- -- ** Request lenses+ -- * Creating a Request+ revokeCacheSecurityGroupIngress+ , RevokeCacheSecurityGroupIngress+ -- * Request Lenses , rcsgiCacheSecurityGroupName , rcsgiEC2SecurityGroupName , rcsgiEC2SecurityGroupOwnerId - -- * Response- , RevokeCacheSecurityGroupIngressResponse- -- ** Response constructor+ -- * Destructuring the Response , revokeCacheSecurityGroupIngressResponse- -- ** Response lenses- , rcsgirCacheSecurityGroup+ , RevokeCacheSecurityGroupIngressResponse+ -- * Response Lenses+ , rcsgirsCacheSecurityGroup+ , rcsgirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.ElastiCache.Types-import qualified GHC.Exts--data RevokeCacheSecurityGroupIngress = RevokeCacheSecurityGroupIngress- { _rcsgiCacheSecurityGroupName :: Text- , _rcsgiEC2SecurityGroupName :: Text- , _rcsgiEC2SecurityGroupOwnerId :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.ElastiCache.Types+import Network.AWS.ElastiCache.Types.Product+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response --- | 'RevokeCacheSecurityGroupIngress' constructor.+-- | Represents the input of a /RevokeCacheSecurityGroupIngress/ action. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'revokeCacheSecurityGroupIngress' smart constructor.+data RevokeCacheSecurityGroupIngress = RevokeCacheSecurityGroupIngress'+ { _rcsgiCacheSecurityGroupName :: !Text+ , _rcsgiEC2SecurityGroupName :: !Text+ , _rcsgiEC2SecurityGroupOwnerId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RevokeCacheSecurityGroupIngress' with the minimum fields required to make a request. ----- * 'rcsgiCacheSecurityGroupName' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'rcsgiEC2SecurityGroupName' @::@ 'Text'+-- * 'rcsgiCacheSecurityGroupName' ----- * 'rcsgiEC2SecurityGroupOwnerId' @::@ 'Text'+-- * 'rcsgiEC2SecurityGroupName' ---revokeCacheSecurityGroupIngress :: Text -- ^ 'rcsgiCacheSecurityGroupName'- -> Text -- ^ 'rcsgiEC2SecurityGroupName'- -> Text -- ^ 'rcsgiEC2SecurityGroupOwnerId'- -> RevokeCacheSecurityGroupIngress-revokeCacheSecurityGroupIngress p1 p2 p3 = RevokeCacheSecurityGroupIngress- { _rcsgiCacheSecurityGroupName = p1- , _rcsgiEC2SecurityGroupName = p2- , _rcsgiEC2SecurityGroupOwnerId = p3+-- * 'rcsgiEC2SecurityGroupOwnerId'+revokeCacheSecurityGroupIngress+ :: Text -- ^ 'rcsgiCacheSecurityGroupName'+ -> Text -- ^ 'rcsgiEC2SecurityGroupName'+ -> Text -- ^ 'rcsgiEC2SecurityGroupOwnerId'+ -> RevokeCacheSecurityGroupIngress+revokeCacheSecurityGroupIngress pCacheSecurityGroupName_ pEC2SecurityGroupName_ pEC2SecurityGroupOwnerId_ =+ RevokeCacheSecurityGroupIngress'+ { _rcsgiCacheSecurityGroupName = pCacheSecurityGroupName_+ , _rcsgiEC2SecurityGroupName = pEC2SecurityGroupName_+ , _rcsgiEC2SecurityGroupOwnerId = pEC2SecurityGroupOwnerId_ } -- | The name of the cache security group to revoke ingress from. rcsgiCacheSecurityGroupName :: Lens' RevokeCacheSecurityGroupIngress Text-rcsgiCacheSecurityGroupName =- lens _rcsgiCacheSecurityGroupName- (\s a -> s { _rcsgiCacheSecurityGroupName = a })+rcsgiCacheSecurityGroupName = lens _rcsgiCacheSecurityGroupName (\ s a -> s{_rcsgiCacheSecurityGroupName = a}); -- | The name of the Amazon EC2 security group to revoke access from. rcsgiEC2SecurityGroupName :: Lens' RevokeCacheSecurityGroupIngress Text-rcsgiEC2SecurityGroupName =- lens _rcsgiEC2SecurityGroupName- (\s a -> s { _rcsgiEC2SecurityGroupName = a })+rcsgiEC2SecurityGroupName = lens _rcsgiEC2SecurityGroupName (\ s a -> s{_rcsgiEC2SecurityGroupName = a}); --- | The AWS account number of the Amazon EC2 security group owner. Note that this--- is not the same thing as an AWS access key ID - you must provide a valid AWS--- account number for this parameter.+-- | The AWS account number of the Amazon EC2 security group owner. Note that+-- this is not the same thing as an AWS access key ID - you must provide a+-- valid AWS account number for this parameter. rcsgiEC2SecurityGroupOwnerId :: Lens' RevokeCacheSecurityGroupIngress Text-rcsgiEC2SecurityGroupOwnerId =- lens _rcsgiEC2SecurityGroupOwnerId- (\s a -> s { _rcsgiEC2SecurityGroupOwnerId = a })--newtype RevokeCacheSecurityGroupIngressResponse = RevokeCacheSecurityGroupIngressResponse- { _rcsgirCacheSecurityGroup :: Maybe CacheSecurityGroup- } deriving (Eq, Read, Show)+rcsgiEC2SecurityGroupOwnerId = lens _rcsgiEC2SecurityGroupOwnerId (\ s a -> s{_rcsgiEC2SecurityGroupOwnerId = a}); --- | 'RevokeCacheSecurityGroupIngressResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcsgirCacheSecurityGroup' @::@ 'Maybe' 'CacheSecurityGroup'----revokeCacheSecurityGroupIngressResponse :: RevokeCacheSecurityGroupIngressResponse-revokeCacheSecurityGroupIngressResponse = RevokeCacheSecurityGroupIngressResponse- { _rcsgirCacheSecurityGroup = Nothing- }+instance AWSRequest RevokeCacheSecurityGroupIngress+ where+ type Sv RevokeCacheSecurityGroupIngress = ElastiCache+ type Rs RevokeCacheSecurityGroupIngress =+ RevokeCacheSecurityGroupIngressResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "RevokeCacheSecurityGroupIngressResult"+ (\ s h x ->+ RevokeCacheSecurityGroupIngressResponse' <$>+ (x .@? "CacheSecurityGroup") <*> (pure (fromEnum s))) -rcsgirCacheSecurityGroup :: Lens' RevokeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)-rcsgirCacheSecurityGroup =- lens _rcsgirCacheSecurityGroup- (\s a -> s { _rcsgirCacheSecurityGroup = a })+instance ToHeaders RevokeCacheSecurityGroupIngress+ where+ toHeaders = const mempty instance ToPath RevokeCacheSecurityGroupIngress where- toPath = const "/"+ toPath = const "/" -instance ToQuery RevokeCacheSecurityGroupIngress where- toQuery RevokeCacheSecurityGroupIngress{..} = mconcat- [ "CacheSecurityGroupName" =? _rcsgiCacheSecurityGroupName- , "EC2SecurityGroupName" =? _rcsgiEC2SecurityGroupName- , "EC2SecurityGroupOwnerId" =? _rcsgiEC2SecurityGroupOwnerId- ]+instance ToQuery RevokeCacheSecurityGroupIngress+ where+ toQuery RevokeCacheSecurityGroupIngress'{..}+ = mconcat+ ["Action" =:+ ("RevokeCacheSecurityGroupIngress" :: ByteString),+ "Version" =: ("2015-02-02" :: ByteString),+ "CacheSecurityGroupName" =:+ _rcsgiCacheSecurityGroupName,+ "EC2SecurityGroupName" =: _rcsgiEC2SecurityGroupName,+ "EC2SecurityGroupOwnerId" =:+ _rcsgiEC2SecurityGroupOwnerId] -instance ToHeaders RevokeCacheSecurityGroupIngress+-- | /See:/ 'revokeCacheSecurityGroupIngressResponse' smart constructor.+data RevokeCacheSecurityGroupIngressResponse = RevokeCacheSecurityGroupIngressResponse'+ { _rcsgirsCacheSecurityGroup :: !(Maybe CacheSecurityGroup)+ , _rcsgirsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest RevokeCacheSecurityGroupIngress where- type Sv RevokeCacheSecurityGroupIngress = ElastiCache- type Rs RevokeCacheSecurityGroupIngress = RevokeCacheSecurityGroupIngressResponse+-- | Creates a value of 'RevokeCacheSecurityGroupIngressResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcsgirsCacheSecurityGroup'+--+-- * 'rcsgirsStatus'+revokeCacheSecurityGroupIngressResponse+ :: Int -- ^ 'rcsgirsStatus'+ -> RevokeCacheSecurityGroupIngressResponse+revokeCacheSecurityGroupIngressResponse pStatus_ =+ RevokeCacheSecurityGroupIngressResponse'+ { _rcsgirsCacheSecurityGroup = Nothing+ , _rcsgirsStatus = pStatus_+ } - request = post "RevokeCacheSecurityGroupIngress"- response = xmlResponse+-- | Undocumented member.+rcsgirsCacheSecurityGroup :: Lens' RevokeCacheSecurityGroupIngressResponse (Maybe CacheSecurityGroup)+rcsgirsCacheSecurityGroup = lens _rcsgirsCacheSecurityGroup (\ s a -> s{_rcsgirsCacheSecurityGroup = a}); -instance FromXML RevokeCacheSecurityGroupIngressResponse where- parseXML = withElement "RevokeCacheSecurityGroupIngressResult" $ \x -> RevokeCacheSecurityGroupIngressResponse- <$> x .@? "CacheSecurityGroup"+-- | The response status code.+rcsgirsStatus :: Lens' RevokeCacheSecurityGroupIngressResponse Int+rcsgirsStatus = lens _rcsgirsStatus (\ s a -> s{_rcsgirsStatus = a});
gen/Network/AWS/ElastiCache/Types.hs view
@@ -1,2983 +1,644 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE ViewPatterns #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Module : Network.AWS.ElastiCache.Types--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental--- Portability : non-portable (GHC extensions)------ Derived from AWS service descriptions, licensed under Apache 2.0.--module Network.AWS.ElastiCache.Types- (- -- * Service- ElastiCache- -- ** Error- , RESTError- -- ** XML- , ns-- -- * NodeSnapshot- , NodeSnapshot- , nodeSnapshot- , nsCacheNodeCreateTime- , nsCacheNodeId- , nsCacheSize- , nsSnapshotCreateTime-- -- * Snapshot- , Snapshot- , snapshot- , sAutoMinorVersionUpgrade- , sCacheClusterCreateTime- , sCacheClusterId- , sCacheNodeType- , sCacheParameterGroupName- , sCacheSubnetGroupName- , sEngine- , sEngineVersion- , sNodeSnapshots- , sNumCacheNodes- , sPort- , sPreferredAvailabilityZone- , sPreferredMaintenanceWindow- , sSnapshotName- , sSnapshotRetentionLimit- , sSnapshotSource- , sSnapshotStatus- , sSnapshotWindow- , sTopicArn- , sVpcId-- -- * Event- , Event- , event- , eDate- , eMessage- , eSourceIdentifier- , eSourceType-- -- * NodeGroup- , NodeGroup- , nodeGroup- , ngNodeGroupId- , ngNodeGroupMembers- , ngPrimaryEndpoint- , ngStatus-- -- * CacheNodeTypeSpecificValue- , CacheNodeTypeSpecificValue- , cacheNodeTypeSpecificValue- , cntsvCacheNodeType- , cntsvValue-- -- * Tag- , Tag- , tag- , tagKey- , tagValue-- -- * PendingAutomaticFailoverStatus- , PendingAutomaticFailoverStatus (..)-- -- * NotificationConfiguration- , NotificationConfiguration- , notificationConfiguration- , ncTopicArn- , ncTopicStatus-- -- * ReplicationGroupPendingModifiedValues- , ReplicationGroupPendingModifiedValues- , replicationGroupPendingModifiedValues- , rgpmvAutomaticFailoverStatus- , rgpmvPrimaryClusterId-- -- * EC2SecurityGroup- , EC2SecurityGroup- , ec2SecurityGroup- , ecsgEC2SecurityGroupName- , ecsgEC2SecurityGroupOwnerId- , ecsgStatus-- -- * ParameterNameValue- , ParameterNameValue- , parameterNameValue- , pnvParameterName- , pnvParameterValue-- -- * SourceType- , SourceType (..)-- -- * CacheSubnetGroup- , CacheSubnetGroup- , cacheSubnetGroup- , csgCacheSubnetGroupDescription- , csgCacheSubnetGroupName- , csgSubnets- , csgVpcId-- -- * ReservedCacheNode- , ReservedCacheNode- , reservedCacheNode- , rcnCacheNodeCount- , rcnCacheNodeType- , rcnDuration- , rcnFixedPrice- , rcnOfferingType- , rcnProductDescription- , rcnRecurringCharges- , rcnReservedCacheNodeId- , rcnReservedCacheNodesOfferingId- , rcnStartTime- , rcnState- , rcnUsagePrice-- -- * Subnet- , Subnet- , subnet- , sSubnetAvailabilityZone- , sSubnetIdentifier-- -- * SecurityGroupMembership- , SecurityGroupMembership- , securityGroupMembership- , sgmSecurityGroupId- , sgmStatus-- -- * CacheCluster- , CacheCluster- , cacheCluster- , ccAutoMinorVersionUpgrade- , ccCacheClusterCreateTime- , ccCacheClusterId- , ccCacheClusterStatus- , ccCacheNodeType- , ccCacheNodes- , ccCacheParameterGroup- , ccCacheSecurityGroups- , ccCacheSubnetGroupName- , ccClientDownloadLandingPage- , ccConfigurationEndpoint- , ccEngine- , ccEngineVersion- , ccNotificationConfiguration- , ccNumCacheNodes- , ccPendingModifiedValues- , ccPreferredAvailabilityZone- , ccPreferredMaintenanceWindow- , ccReplicationGroupId- , ccSecurityGroups- , ccSnapshotRetentionLimit- , ccSnapshotWindow-- -- * EngineDefaults- , EngineDefaults- , engineDefaults- , edCacheNodeTypeSpecificParameters- , edCacheParameterGroupFamily- , edMarker- , edParameters-- -- * CacheParameterGroupStatus- , CacheParameterGroupStatus- , cacheParameterGroupStatus- , cpgsCacheNodeIdsToReboot- , cpgsCacheParameterGroupName- , cpgsParameterApplyStatus-- -- * CacheNode- , CacheNode- , cacheNode- , cnCacheNodeCreateTime- , cnCacheNodeId- , cnCacheNodeStatus- , cnCustomerAvailabilityZone- , cnEndpoint- , cnParameterGroupStatus- , cnSourceCacheNodeId-- -- * CacheSecurityGroupMembership- , CacheSecurityGroupMembership- , cacheSecurityGroupMembership- , csgmCacheSecurityGroupName- , csgmStatus-- -- * AvailabilityZone- , AvailabilityZone- , availabilityZone- , azName-- -- * NodeGroupMember- , NodeGroupMember- , nodeGroupMember- , ngmCacheClusterId- , ngmCacheNodeId- , ngmCurrentRole- , ngmPreferredAvailabilityZone- , ngmReadEndpoint-- -- * CacheParameterGroup- , CacheParameterGroup- , cacheParameterGroup- , cpgCacheParameterGroupFamily- , cpgCacheParameterGroupName- , cpgDescription-- -- * AutomaticFailoverStatus- , AutomaticFailoverStatus (..)-- -- * CacheSecurityGroup- , CacheSecurityGroup- , cacheSecurityGroup- , csgCacheSecurityGroupName- , csgDescription- , csgEC2SecurityGroups- , csgOwnerId-- -- * CacheNodeTypeSpecificParameter- , CacheNodeTypeSpecificParameter- , cacheNodeTypeSpecificParameter- , cntspAllowedValues- , cntspCacheNodeTypeSpecificValues- , cntspDataType- , cntspDescription- , cntspIsModifiable- , cntspMinimumEngineVersion- , cntspParameterName- , cntspSource-- -- * AZMode- , AZMode (..)-- -- * CacheEngineVersion- , CacheEngineVersion- , cacheEngineVersion- , cevCacheEngineDescription- , cevCacheEngineVersionDescription- , cevCacheParameterGroupFamily- , cevEngine- , cevEngineVersion-- -- * ReplicationGroup- , ReplicationGroup- , replicationGroup- , rgAutomaticFailover- , rgDescription- , rgMemberClusters- , rgNodeGroups- , rgPendingModifiedValues- , rgReplicationGroupId- , rgSnapshottingClusterId- , rgStatus-- -- * RecurringCharge- , RecurringCharge- , recurringCharge- , rcRecurringChargeAmount- , rcRecurringChargeFrequency-- -- * ReservedCacheNodesOffering- , ReservedCacheNodesOffering- , reservedCacheNodesOffering- , rcnoCacheNodeType- , rcnoDuration- , rcnoFixedPrice- , rcnoOfferingType- , rcnoProductDescription- , rcnoRecurringCharges- , rcnoReservedCacheNodesOfferingId- , rcnoUsagePrice-- -- * TagListMessage- , TagListMessage- , tagListMessage- , tlmTagList-- -- * Endpoint- , Endpoint- , endpoint- , eAddress- , ePort-- -- * PendingModifiedValues- , PendingModifiedValues- , pendingModifiedValues- , pmvCacheNodeIdsToRemove- , pmvEngineVersion- , pmvNumCacheNodes-- -- * CacheParameterGroupNameMessage- , CacheParameterGroupNameMessage- , cacheParameterGroupNameMessage- , cpgnmCacheParameterGroupName-- -- * Parameter- , Parameter- , parameter- , pAllowedValues- , pDataType- , pDescription- , pIsModifiable- , pMinimumEngineVersion- , pParameterName- , pParameterValue- , pSource- ) where--import Network.AWS.Prelude-import Network.AWS.Signing-import qualified GHC.Exts---- | Version @2015-02-02@ of the Amazon ElastiCache service.-data ElastiCache--instance AWSService ElastiCache where- type Sg ElastiCache = V4- type Er ElastiCache = RESTError-- service = service'- where- service' :: Service ElastiCache- service' = Service- { _svcAbbrev = "ElastiCache"- , _svcPrefix = "elasticache"- , _svcVersion = "2015-02-02"- , _svcTargetPrefix = Nothing- , _svcJSONVersion = Nothing- , _svcHandle = handle- , _svcRetry = retry- }-- handle :: Status- -> Maybe (LazyByteString -> ServiceError RESTError)- handle = restError statusSuccess service'-- retry :: Retry ElastiCache- retry = Exponential- { _retryBase = 0.05- , _retryGrowth = 2- , _retryAttempts = 5- , _retryCheck = check- }-- check :: Status- -> RESTError- -> Bool- check (statusCode -> s) (awsErrorCode -> e)- | s == 400 && (Just "Throttling") == e = True -- Throttling- | s == 500 = True -- General Server Error- | s == 509 = True -- Limit Exceeded- | s == 503 = True -- Service Unavailable- | otherwise = False--ns :: Text-ns = "http://elasticache.amazonaws.com/doc/2015-02-02/"-{-# INLINE ns #-}--data NodeSnapshot = NodeSnapshot- { _nsCacheNodeCreateTime :: Maybe ISO8601- , _nsCacheNodeId :: Maybe Text- , _nsCacheSize :: Maybe Text- , _nsSnapshotCreateTime :: Maybe ISO8601- } deriving (Eq, Ord, Read, Show)---- | 'NodeSnapshot' constructor.------ The fields accessible through corresponding lenses are:------ * 'nsCacheNodeCreateTime' @::@ 'Maybe' 'UTCTime'------ * 'nsCacheNodeId' @::@ 'Maybe' 'Text'------ * 'nsCacheSize' @::@ 'Maybe' 'Text'------ * 'nsSnapshotCreateTime' @::@ 'Maybe' 'UTCTime'----nodeSnapshot :: NodeSnapshot-nodeSnapshot = NodeSnapshot- { _nsCacheNodeId = Nothing- , _nsCacheSize = Nothing- , _nsCacheNodeCreateTime = Nothing- , _nsSnapshotCreateTime = Nothing- }---- | The date and time when the cache node was created in the source cache cluster.-nsCacheNodeCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)-nsCacheNodeCreateTime =- lens _nsCacheNodeCreateTime (\s a -> s { _nsCacheNodeCreateTime = a })- . mapping _Time---- | The cache node identifier for the node in the source cache cluster.-nsCacheNodeId :: Lens' NodeSnapshot (Maybe Text)-nsCacheNodeId = lens _nsCacheNodeId (\s a -> s { _nsCacheNodeId = a })---- | The size of the cache on the source cache node.-nsCacheSize :: Lens' NodeSnapshot (Maybe Text)-nsCacheSize = lens _nsCacheSize (\s a -> s { _nsCacheSize = a })---- | The date and time when the source node's metadata and cache data set was--- obtained for the snapshot.-nsSnapshotCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)-nsSnapshotCreateTime =- lens _nsSnapshotCreateTime (\s a -> s { _nsSnapshotCreateTime = a })- . mapping _Time--instance FromXML NodeSnapshot where- parseXML x = NodeSnapshot- <$> x .@? "CacheNodeCreateTime"- <*> x .@? "CacheNodeId"- <*> x .@? "CacheSize"- <*> x .@? "SnapshotCreateTime"--instance ToQuery NodeSnapshot where- toQuery NodeSnapshot{..} = mconcat- [ "CacheNodeCreateTime" =? _nsCacheNodeCreateTime- , "CacheNodeId" =? _nsCacheNodeId- , "CacheSize" =? _nsCacheSize- , "SnapshotCreateTime" =? _nsSnapshotCreateTime- ]--data Snapshot = Snapshot- { _sAutoMinorVersionUpgrade :: Maybe Bool- , _sCacheClusterCreateTime :: Maybe ISO8601- , _sCacheClusterId :: Maybe Text- , _sCacheNodeType :: Maybe Text- , _sCacheParameterGroupName :: Maybe Text- , _sCacheSubnetGroupName :: Maybe Text- , _sEngine :: Maybe Text- , _sEngineVersion :: Maybe Text- , _sNodeSnapshots :: List "member" NodeSnapshot- , _sNumCacheNodes :: Maybe Int- , _sPort :: Maybe Int- , _sPreferredAvailabilityZone :: Maybe Text- , _sPreferredMaintenanceWindow :: Maybe Text- , _sSnapshotName :: Maybe Text- , _sSnapshotRetentionLimit :: Maybe Int- , _sSnapshotSource :: Maybe Text- , _sSnapshotStatus :: Maybe Text- , _sSnapshotWindow :: Maybe Text- , _sTopicArn :: Maybe Text- , _sVpcId :: Maybe Text- } deriving (Eq, Read, Show)---- | 'Snapshot' constructor.------ The fields accessible through corresponding lenses are:------ * 'sAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'------ * 'sCacheClusterCreateTime' @::@ 'Maybe' 'UTCTime'------ * 'sCacheClusterId' @::@ 'Maybe' 'Text'------ * 'sCacheNodeType' @::@ 'Maybe' 'Text'------ * 'sCacheParameterGroupName' @::@ 'Maybe' 'Text'------ * 'sCacheSubnetGroupName' @::@ 'Maybe' 'Text'------ * 'sEngine' @::@ 'Maybe' 'Text'------ * 'sEngineVersion' @::@ 'Maybe' 'Text'------ * 'sNodeSnapshots' @::@ ['NodeSnapshot']------ * 'sNumCacheNodes' @::@ 'Maybe' 'Int'------ * 'sPort' @::@ 'Maybe' 'Int'------ * 'sPreferredAvailabilityZone' @::@ 'Maybe' 'Text'------ * 'sPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'------ * 'sSnapshotName' @::@ 'Maybe' 'Text'------ * 'sSnapshotRetentionLimit' @::@ 'Maybe' 'Int'------ * 'sSnapshotSource' @::@ 'Maybe' 'Text'------ * 'sSnapshotStatus' @::@ 'Maybe' 'Text'------ * 'sSnapshotWindow' @::@ 'Maybe' 'Text'------ * 'sTopicArn' @::@ 'Maybe' 'Text'------ * 'sVpcId' @::@ 'Maybe' 'Text'----snapshot :: Snapshot-snapshot = Snapshot- { _sSnapshotName = Nothing- , _sCacheClusterId = Nothing- , _sSnapshotStatus = Nothing- , _sSnapshotSource = Nothing- , _sCacheNodeType = Nothing- , _sEngine = Nothing- , _sEngineVersion = Nothing- , _sNumCacheNodes = Nothing- , _sPreferredAvailabilityZone = Nothing- , _sCacheClusterCreateTime = Nothing- , _sPreferredMaintenanceWindow = Nothing- , _sTopicArn = Nothing- , _sPort = Nothing- , _sCacheParameterGroupName = Nothing- , _sCacheSubnetGroupName = Nothing- , _sVpcId = Nothing- , _sAutoMinorVersionUpgrade = Nothing- , _sSnapshotRetentionLimit = Nothing- , _sSnapshotWindow = Nothing- , _sNodeSnapshots = mempty- }---- | This parameter is currently disabled.-sAutoMinorVersionUpgrade :: Lens' Snapshot (Maybe Bool)-sAutoMinorVersionUpgrade =- lens _sAutoMinorVersionUpgrade- (\s a -> s { _sAutoMinorVersionUpgrade = a })---- | The date and time when the source cache cluster was created.-sCacheClusterCreateTime :: Lens' Snapshot (Maybe UTCTime)-sCacheClusterCreateTime =- lens _sCacheClusterCreateTime (\s a -> s { _sCacheClusterCreateTime = a })- . mapping _Time---- | The user-supplied identifier of the source cache cluster.-sCacheClusterId :: Lens' Snapshot (Maybe Text)-sCacheClusterId = lens _sCacheClusterId (\s a -> s { _sCacheClusterId = a })---- | The name of the compute and memory capacity node type for the source cache--- cluster.------ Valid node types are as follows:------ General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:------ All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-sCacheNodeType :: Lens' Snapshot (Maybe Text)-sCacheNodeType = lens _sCacheNodeType (\s a -> s { _sCacheNodeType = a })---- | The cache parameter group that is associated with the source cache cluster.-sCacheParameterGroupName :: Lens' Snapshot (Maybe Text)-sCacheParameterGroupName =- lens _sCacheParameterGroupName- (\s a -> s { _sCacheParameterGroupName = a })---- | The name of the cache subnet group associated with the source cache cluster.-sCacheSubnetGroupName :: Lens' Snapshot (Maybe Text)-sCacheSubnetGroupName =- lens _sCacheSubnetGroupName (\s a -> s { _sCacheSubnetGroupName = a })---- | The name of the cache engine (/memcached/ or /redis/) used by the source cache--- cluster.-sEngine :: Lens' Snapshot (Maybe Text)-sEngine = lens _sEngine (\s a -> s { _sEngine = a })---- | The version of the cache engine version that is used by the source cache--- cluster.-sEngineVersion :: Lens' Snapshot (Maybe Text)-sEngineVersion = lens _sEngineVersion (\s a -> s { _sEngineVersion = a })---- | A list of the cache nodes in the source cache cluster.-sNodeSnapshots :: Lens' Snapshot [NodeSnapshot]-sNodeSnapshots = lens _sNodeSnapshots (\s a -> s { _sNodeSnapshots = a }) . _List---- | The number of cache nodes in the source cache cluster.------ For clusters running Redis, this value must be 1. For clusters running--- Memcached, this value must be between 1 and 20.-sNumCacheNodes :: Lens' Snapshot (Maybe Int)-sNumCacheNodes = lens _sNumCacheNodes (\s a -> s { _sNumCacheNodes = a })---- | The port number used by each cache nodes in the source cache cluster.-sPort :: Lens' Snapshot (Maybe Int)-sPort = lens _sPort (\s a -> s { _sPort = a })---- | The name of the Availability Zone in which the source cache cluster is--- located.-sPreferredAvailabilityZone :: Lens' Snapshot (Maybe Text)-sPreferredAvailabilityZone =- lens _sPreferredAvailabilityZone- (\s a -> s { _sPreferredAvailabilityZone = a })---- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:------ 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'-sPreferredMaintenanceWindow :: Lens' Snapshot (Maybe Text)-sPreferredMaintenanceWindow =- lens _sPreferredMaintenanceWindow- (\s a -> s { _sPreferredMaintenanceWindow = a })---- | The name of a snapshot. For an automatic snapshot, the name is--- system-generated; for a manual snapshot, this is the user-provided name.-sSnapshotName :: Lens' Snapshot (Maybe Text)-sSnapshotName = lens _sSnapshotName (\s a -> s { _sSnapshotName = a })---- | For an automatic snapshot, the number of days for which ElastiCache will--- retain the snapshot before deleting it.------ For manual snapshots, this field reflects the /SnapshotRetentionLimit/ for the--- source cache cluster when the snapshot was created. This field is otherwise--- ignored: Manual snapshots do not expire, and can only be deleted using the /DeleteSnapshot/ action.------ Important--- If the value of SnapshotRetentionLimit is set to zero (0), backups--- are turned off.-sSnapshotRetentionLimit :: Lens' Snapshot (Maybe Int)-sSnapshotRetentionLimit =- lens _sSnapshotRetentionLimit (\s a -> s { _sSnapshotRetentionLimit = a })---- | Indicates whether the snapshot is from an automatic backup ('automated') or was--- created manually ('manual').-sSnapshotSource :: Lens' Snapshot (Maybe Text)-sSnapshotSource = lens _sSnapshotSource (\s a -> s { _sSnapshotSource = a })---- | The status of the snapshot. Valid values: 'creating' | 'available' | 'restoring' | 'copying' | 'deleting'.-sSnapshotStatus :: Lens' Snapshot (Maybe Text)-sSnapshotStatus = lens _sSnapshotStatus (\s a -> s { _sSnapshotStatus = a })---- | The daily time range during which ElastiCache takes daily snapshots of the--- source cache cluster.-sSnapshotWindow :: Lens' Snapshot (Maybe Text)-sSnapshotWindow = lens _sSnapshotWindow (\s a -> s { _sSnapshotWindow = a })---- | The Amazon Resource Name (ARN) for the topic used by the source cache cluster--- for publishing notifications.-sTopicArn :: Lens' Snapshot (Maybe Text)-sTopicArn = lens _sTopicArn (\s a -> s { _sTopicArn = a })---- | The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet--- group for the source cache cluster.-sVpcId :: Lens' Snapshot (Maybe Text)-sVpcId = lens _sVpcId (\s a -> s { _sVpcId = a })--instance FromXML Snapshot where- parseXML x = Snapshot- <$> x .@? "AutoMinorVersionUpgrade"- <*> x .@? "CacheClusterCreateTime"- <*> x .@? "CacheClusterId"- <*> x .@? "CacheNodeType"- <*> x .@? "CacheParameterGroupName"- <*> x .@? "CacheSubnetGroupName"- <*> x .@? "Engine"- <*> x .@? "EngineVersion"- <*> x .@? "NodeSnapshots" .!@ mempty- <*> x .@? "NumCacheNodes"- <*> x .@? "Port"- <*> x .@? "PreferredAvailabilityZone"- <*> x .@? "PreferredMaintenanceWindow"- <*> x .@? "SnapshotName"- <*> x .@? "SnapshotRetentionLimit"- <*> x .@? "SnapshotSource"- <*> x .@? "SnapshotStatus"- <*> x .@? "SnapshotWindow"- <*> x .@? "TopicArn"- <*> x .@? "VpcId"--instance ToQuery Snapshot where- toQuery Snapshot{..} = mconcat- [ "AutoMinorVersionUpgrade" =? _sAutoMinorVersionUpgrade- , "CacheClusterCreateTime" =? _sCacheClusterCreateTime- , "CacheClusterId" =? _sCacheClusterId- , "CacheNodeType" =? _sCacheNodeType- , "CacheParameterGroupName" =? _sCacheParameterGroupName- , "CacheSubnetGroupName" =? _sCacheSubnetGroupName- , "Engine" =? _sEngine- , "EngineVersion" =? _sEngineVersion- , "NodeSnapshots" =? _sNodeSnapshots- , "NumCacheNodes" =? _sNumCacheNodes- , "Port" =? _sPort- , "PreferredAvailabilityZone" =? _sPreferredAvailabilityZone- , "PreferredMaintenanceWindow" =? _sPreferredMaintenanceWindow- , "SnapshotName" =? _sSnapshotName- , "SnapshotRetentionLimit" =? _sSnapshotRetentionLimit- , "SnapshotSource" =? _sSnapshotSource- , "SnapshotStatus" =? _sSnapshotStatus- , "SnapshotWindow" =? _sSnapshotWindow- , "TopicArn" =? _sTopicArn- , "VpcId" =? _sVpcId- ]--data Event = Event- { _eDate :: Maybe ISO8601- , _eMessage :: Maybe Text- , _eSourceIdentifier :: Maybe Text- , _eSourceType :: Maybe SourceType- } deriving (Eq, Read, Show)---- | 'Event' constructor.------ The fields accessible through corresponding lenses are:------ * 'eDate' @::@ 'Maybe' 'UTCTime'------ * 'eMessage' @::@ 'Maybe' 'Text'------ * 'eSourceIdentifier' @::@ 'Maybe' 'Text'------ * 'eSourceType' @::@ 'Maybe' 'SourceType'----event :: Event-event = Event- { _eSourceIdentifier = Nothing- , _eSourceType = Nothing- , _eMessage = Nothing- , _eDate = Nothing- }---- | The date and time when the event occurred.-eDate :: Lens' Event (Maybe UTCTime)-eDate = lens _eDate (\s a -> s { _eDate = a }) . mapping _Time---- | The text of the event.-eMessage :: Lens' Event (Maybe Text)-eMessage = lens _eMessage (\s a -> s { _eMessage = a })---- | The identifier for the source of the event. For example, if the event--- occurred at the cache cluster level, the identifier would be the name of the--- cache cluster.-eSourceIdentifier :: Lens' Event (Maybe Text)-eSourceIdentifier =- lens _eSourceIdentifier (\s a -> s { _eSourceIdentifier = a })---- | Specifies the origin of this event - a cache cluster, a parameter group, a--- security group, etc.-eSourceType :: Lens' Event (Maybe SourceType)-eSourceType = lens _eSourceType (\s a -> s { _eSourceType = a })--instance FromXML Event where- parseXML x = Event- <$> x .@? "Date"- <*> x .@? "Message"- <*> x .@? "SourceIdentifier"- <*> x .@? "SourceType"--instance ToQuery Event where- toQuery Event{..} = mconcat- [ "Date" =? _eDate- , "Message" =? _eMessage- , "SourceIdentifier" =? _eSourceIdentifier- , "SourceType" =? _eSourceType- ]--data NodeGroup = NodeGroup- { _ngNodeGroupId :: Maybe Text- , _ngNodeGroupMembers :: List "member" NodeGroupMember- , _ngPrimaryEndpoint :: Maybe Endpoint- , _ngStatus :: Maybe Text- } deriving (Eq, Read, Show)---- | 'NodeGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'ngNodeGroupId' @::@ 'Maybe' 'Text'------ * 'ngNodeGroupMembers' @::@ ['NodeGroupMember']------ * 'ngPrimaryEndpoint' @::@ 'Maybe' 'Endpoint'------ * 'ngStatus' @::@ 'Maybe' 'Text'----nodeGroup :: NodeGroup-nodeGroup = NodeGroup- { _ngNodeGroupId = Nothing- , _ngStatus = Nothing- , _ngPrimaryEndpoint = Nothing- , _ngNodeGroupMembers = mempty- }---- | The identifier for the node group. A replication group contains only one node--- group; therefore, the node group ID is 0001.-ngNodeGroupId :: Lens' NodeGroup (Maybe Text)-ngNodeGroupId = lens _ngNodeGroupId (\s a -> s { _ngNodeGroupId = a })---- | A list containing information about individual nodes within the node group.-ngNodeGroupMembers :: Lens' NodeGroup [NodeGroupMember]-ngNodeGroupMembers =- lens _ngNodeGroupMembers (\s a -> s { _ngNodeGroupMembers = a })- . _List--ngPrimaryEndpoint :: Lens' NodeGroup (Maybe Endpoint)-ngPrimaryEndpoint =- lens _ngPrimaryEndpoint (\s a -> s { _ngPrimaryEndpoint = a })---- | The current state of this replication group - /creating/, /available/, etc.-ngStatus :: Lens' NodeGroup (Maybe Text)-ngStatus = lens _ngStatus (\s a -> s { _ngStatus = a })--instance FromXML NodeGroup where- parseXML x = NodeGroup- <$> x .@? "NodeGroupId"- <*> x .@? "NodeGroupMembers" .!@ mempty- <*> x .@? "PrimaryEndpoint"- <*> x .@? "Status"--instance ToQuery NodeGroup where- toQuery NodeGroup{..} = mconcat- [ "NodeGroupId" =? _ngNodeGroupId- , "NodeGroupMembers" =? _ngNodeGroupMembers- , "PrimaryEndpoint" =? _ngPrimaryEndpoint- , "Status" =? _ngStatus- ]--data CacheNodeTypeSpecificValue = CacheNodeTypeSpecificValue- { _cntsvCacheNodeType :: Maybe Text- , _cntsvValue :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'CacheNodeTypeSpecificValue' constructor.------ The fields accessible through corresponding lenses are:------ * 'cntsvCacheNodeType' @::@ 'Maybe' 'Text'------ * 'cntsvValue' @::@ 'Maybe' 'Text'----cacheNodeTypeSpecificValue :: CacheNodeTypeSpecificValue-cacheNodeTypeSpecificValue = CacheNodeTypeSpecificValue- { _cntsvCacheNodeType = Nothing- , _cntsvValue = Nothing- }---- | The cache node type for which this value applies.-cntsvCacheNodeType :: Lens' CacheNodeTypeSpecificValue (Maybe Text)-cntsvCacheNodeType =- lens _cntsvCacheNodeType (\s a -> s { _cntsvCacheNodeType = a })---- | The value for the cache node type.-cntsvValue :: Lens' CacheNodeTypeSpecificValue (Maybe Text)-cntsvValue = lens _cntsvValue (\s a -> s { _cntsvValue = a })--instance FromXML CacheNodeTypeSpecificValue where- parseXML x = CacheNodeTypeSpecificValue- <$> x .@? "CacheNodeType"- <*> x .@? "Value"--instance ToQuery CacheNodeTypeSpecificValue where- toQuery CacheNodeTypeSpecificValue{..} = mconcat- [ "CacheNodeType" =? _cntsvCacheNodeType- , "Value" =? _cntsvValue- ]--data Tag = Tag- { _tagKey :: Maybe Text- , _tagValue :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'Tag' constructor.------ The fields accessible through corresponding lenses are:------ * 'tagKey' @::@ 'Maybe' 'Text'------ * 'tagValue' @::@ 'Maybe' 'Text'----tag :: Tag-tag = Tag- { _tagKey = Nothing- , _tagValue = Nothing- }---- | The key for the tag.-tagKey :: Lens' Tag (Maybe Text)-tagKey = lens _tagKey (\s a -> s { _tagKey = a })---- | The tag's value. May not be null.-tagValue :: Lens' Tag (Maybe Text)-tagValue = lens _tagValue (\s a -> s { _tagValue = a })--instance FromXML Tag where- parseXML x = Tag- <$> x .@? "Key"- <*> x .@? "Value"--instance ToQuery Tag where- toQuery Tag{..} = mconcat- [ "Key" =? _tagKey- , "Value" =? _tagValue- ]--data PendingAutomaticFailoverStatus- = Disabled -- ^ disabled- | Enabled -- ^ enabled- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable PendingAutomaticFailoverStatus--instance FromText PendingAutomaticFailoverStatus where- parser = takeLowerText >>= \case- "disabled" -> pure Disabled- "enabled" -> pure Enabled- e -> fail $- "Failure parsing PendingAutomaticFailoverStatus from " ++ show e--instance ToText PendingAutomaticFailoverStatus where- toText = \case- Disabled -> "disabled"- Enabled -> "enabled"--instance ToByteString PendingAutomaticFailoverStatus-instance ToHeader PendingAutomaticFailoverStatus-instance ToQuery PendingAutomaticFailoverStatus--instance FromXML PendingAutomaticFailoverStatus where- parseXML = parseXMLText "PendingAutomaticFailoverStatus"--data NotificationConfiguration = NotificationConfiguration- { _ncTopicArn :: Maybe Text- , _ncTopicStatus :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'NotificationConfiguration' constructor.------ The fields accessible through corresponding lenses are:------ * 'ncTopicArn' @::@ 'Maybe' 'Text'------ * 'ncTopicStatus' @::@ 'Maybe' 'Text'----notificationConfiguration :: NotificationConfiguration-notificationConfiguration = NotificationConfiguration- { _ncTopicArn = Nothing- , _ncTopicStatus = Nothing- }---- | The Amazon Resource Name (ARN) that identifies the topic.-ncTopicArn :: Lens' NotificationConfiguration (Maybe Text)-ncTopicArn = lens _ncTopicArn (\s a -> s { _ncTopicArn = a })---- | The current state of the topic.-ncTopicStatus :: Lens' NotificationConfiguration (Maybe Text)-ncTopicStatus = lens _ncTopicStatus (\s a -> s { _ncTopicStatus = a })--instance FromXML NotificationConfiguration where- parseXML x = NotificationConfiguration- <$> x .@? "TopicArn"- <*> x .@? "TopicStatus"--instance ToQuery NotificationConfiguration where- toQuery NotificationConfiguration{..} = mconcat- [ "TopicArn" =? _ncTopicArn- , "TopicStatus" =? _ncTopicStatus- ]--data ReplicationGroupPendingModifiedValues = ReplicationGroupPendingModifiedValues- { _rgpmvAutomaticFailoverStatus :: Maybe PendingAutomaticFailoverStatus- , _rgpmvPrimaryClusterId :: Maybe Text- } deriving (Eq, Read, Show)---- | 'ReplicationGroupPendingModifiedValues' constructor.------ The fields accessible through corresponding lenses are:------ * 'rgpmvAutomaticFailoverStatus' @::@ 'Maybe' 'PendingAutomaticFailoverStatus'------ * 'rgpmvPrimaryClusterId' @::@ 'Maybe' 'Text'----replicationGroupPendingModifiedValues :: ReplicationGroupPendingModifiedValues-replicationGroupPendingModifiedValues = ReplicationGroupPendingModifiedValues- { _rgpmvPrimaryClusterId = Nothing- , _rgpmvAutomaticFailoverStatus = Nothing- }---- | Indicates the status of Multi-AZ for this replication group.------ ElastiCache Multi-AZ replication groups are not supported on:------ Redis versions earlier than 2.8.6. T1 and T2 cache node types.-rgpmvAutomaticFailoverStatus :: Lens' ReplicationGroupPendingModifiedValues (Maybe PendingAutomaticFailoverStatus)-rgpmvAutomaticFailoverStatus =- lens _rgpmvAutomaticFailoverStatus- (\s a -> s { _rgpmvAutomaticFailoverStatus = a })---- | The primary cluster ID which will be applied immediately (if '--apply-immediately' was specified), or during the next maintenance window.-rgpmvPrimaryClusterId :: Lens' ReplicationGroupPendingModifiedValues (Maybe Text)-rgpmvPrimaryClusterId =- lens _rgpmvPrimaryClusterId (\s a -> s { _rgpmvPrimaryClusterId = a })--instance FromXML ReplicationGroupPendingModifiedValues where- parseXML x = ReplicationGroupPendingModifiedValues- <$> x .@? "AutomaticFailoverStatus"- <*> x .@? "PrimaryClusterId"--instance ToQuery ReplicationGroupPendingModifiedValues where- toQuery ReplicationGroupPendingModifiedValues{..} = mconcat- [ "AutomaticFailoverStatus" =? _rgpmvAutomaticFailoverStatus- , "PrimaryClusterId" =? _rgpmvPrimaryClusterId- ]--data EC2SecurityGroup = EC2SecurityGroup- { _ecsgEC2SecurityGroupName :: Maybe Text- , _ecsgEC2SecurityGroupOwnerId :: Maybe Text- , _ecsgStatus :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'EC2SecurityGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'ecsgEC2SecurityGroupName' @::@ 'Maybe' 'Text'------ * 'ecsgEC2SecurityGroupOwnerId' @::@ 'Maybe' 'Text'------ * 'ecsgStatus' @::@ 'Maybe' 'Text'----ec2SecurityGroup :: EC2SecurityGroup-ec2SecurityGroup = EC2SecurityGroup- { _ecsgStatus = Nothing- , _ecsgEC2SecurityGroupName = Nothing- , _ecsgEC2SecurityGroupOwnerId = Nothing- }---- | The name of the Amazon EC2 security group.-ecsgEC2SecurityGroupName :: Lens' EC2SecurityGroup (Maybe Text)-ecsgEC2SecurityGroupName =- lens _ecsgEC2SecurityGroupName- (\s a -> s { _ecsgEC2SecurityGroupName = a })---- | The AWS account ID of the Amazon EC2 security group owner.-ecsgEC2SecurityGroupOwnerId :: Lens' EC2SecurityGroup (Maybe Text)-ecsgEC2SecurityGroupOwnerId =- lens _ecsgEC2SecurityGroupOwnerId- (\s a -> s { _ecsgEC2SecurityGroupOwnerId = a })---- | The status of the Amazon EC2 security group.-ecsgStatus :: Lens' EC2SecurityGroup (Maybe Text)-ecsgStatus = lens _ecsgStatus (\s a -> s { _ecsgStatus = a })--instance FromXML EC2SecurityGroup where- parseXML x = EC2SecurityGroup- <$> x .@? "EC2SecurityGroupName"- <*> x .@? "EC2SecurityGroupOwnerId"- <*> x .@? "Status"--instance ToQuery EC2SecurityGroup where- toQuery EC2SecurityGroup{..} = mconcat- [ "EC2SecurityGroupName" =? _ecsgEC2SecurityGroupName- , "EC2SecurityGroupOwnerId" =? _ecsgEC2SecurityGroupOwnerId- , "Status" =? _ecsgStatus- ]--data ParameterNameValue = ParameterNameValue- { _pnvParameterName :: Maybe Text- , _pnvParameterValue :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'ParameterNameValue' constructor.------ The fields accessible through corresponding lenses are:------ * 'pnvParameterName' @::@ 'Maybe' 'Text'------ * 'pnvParameterValue' @::@ 'Maybe' 'Text'----parameterNameValue :: ParameterNameValue-parameterNameValue = ParameterNameValue- { _pnvParameterName = Nothing- , _pnvParameterValue = Nothing- }---- | The name of the parameter.-pnvParameterName :: Lens' ParameterNameValue (Maybe Text)-pnvParameterName = lens _pnvParameterName (\s a -> s { _pnvParameterName = a })---- | The value of the parameter.-pnvParameterValue :: Lens' ParameterNameValue (Maybe Text)-pnvParameterValue =- lens _pnvParameterValue (\s a -> s { _pnvParameterValue = a })--instance FromXML ParameterNameValue where- parseXML x = ParameterNameValue- <$> x .@? "ParameterName"- <*> x .@? "ParameterValue"--instance ToQuery ParameterNameValue where- toQuery ParameterNameValue{..} = mconcat- [ "ParameterName" =? _pnvParameterName- , "ParameterValue" =? _pnvParameterValue- ]--data SourceType- = STCacheCluster -- ^ cache-cluster- | STCacheParameterGroup -- ^ cache-parameter-group- | STCacheSecurityGroup -- ^ cache-security-group- | STCacheSubnetGroup -- ^ cache-subnet-group- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable SourceType--instance FromText SourceType where- parser = takeLowerText >>= \case- "cache-cluster" -> pure STCacheCluster- "cache-parameter-group" -> pure STCacheParameterGroup- "cache-security-group" -> pure STCacheSecurityGroup- "cache-subnet-group" -> pure STCacheSubnetGroup- e -> fail $- "Failure parsing SourceType from " ++ show e--instance ToText SourceType where- toText = \case- STCacheCluster -> "cache-cluster"- STCacheParameterGroup -> "cache-parameter-group"- STCacheSecurityGroup -> "cache-security-group"- STCacheSubnetGroup -> "cache-subnet-group"--instance ToByteString SourceType-instance ToHeader SourceType-instance ToQuery SourceType--instance FromXML SourceType where- parseXML = parseXMLText "SourceType"--data CacheSubnetGroup = CacheSubnetGroup- { _csgCacheSubnetGroupDescription :: Maybe Text- , _csgCacheSubnetGroupName :: Maybe Text- , _csgSubnets :: List "member" Subnet- , _csgVpcId :: Maybe Text- } deriving (Eq, Read, Show)---- | 'CacheSubnetGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'csgCacheSubnetGroupDescription' @::@ 'Maybe' 'Text'------ * 'csgCacheSubnetGroupName' @::@ 'Maybe' 'Text'------ * 'csgSubnets' @::@ ['Subnet']------ * 'csgVpcId' @::@ 'Maybe' 'Text'----cacheSubnetGroup :: CacheSubnetGroup-cacheSubnetGroup = CacheSubnetGroup- { _csgCacheSubnetGroupName = Nothing- , _csgCacheSubnetGroupDescription = Nothing- , _csgVpcId = Nothing- , _csgSubnets = mempty- }---- | The description of the cache subnet group.-csgCacheSubnetGroupDescription :: Lens' CacheSubnetGroup (Maybe Text)-csgCacheSubnetGroupDescription =- lens _csgCacheSubnetGroupDescription- (\s a -> s { _csgCacheSubnetGroupDescription = a })---- | The name of the cache subnet group.-csgCacheSubnetGroupName :: Lens' CacheSubnetGroup (Maybe Text)-csgCacheSubnetGroupName =- lens _csgCacheSubnetGroupName (\s a -> s { _csgCacheSubnetGroupName = a })---- | A list of subnets associated with the cache subnet group.-csgSubnets :: Lens' CacheSubnetGroup [Subnet]-csgSubnets = lens _csgSubnets (\s a -> s { _csgSubnets = a }) . _List---- | The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet--- group.-csgVpcId :: Lens' CacheSubnetGroup (Maybe Text)-csgVpcId = lens _csgVpcId (\s a -> s { _csgVpcId = a })--instance FromXML CacheSubnetGroup where- parseXML x = CacheSubnetGroup- <$> x .@? "CacheSubnetGroupDescription"- <*> x .@? "CacheSubnetGroupName"- <*> x .@? "Subnets" .!@ mempty- <*> x .@? "VpcId"--instance ToQuery CacheSubnetGroup where- toQuery CacheSubnetGroup{..} = mconcat- [ "CacheSubnetGroupDescription" =? _csgCacheSubnetGroupDescription- , "CacheSubnetGroupName" =? _csgCacheSubnetGroupName- , "Subnets" =? _csgSubnets- , "VpcId" =? _csgVpcId- ]--data ReservedCacheNode = ReservedCacheNode- { _rcnCacheNodeCount :: Maybe Int- , _rcnCacheNodeType :: Maybe Text- , _rcnDuration :: Maybe Int- , _rcnFixedPrice :: Maybe Double- , _rcnOfferingType :: Maybe Text- , _rcnProductDescription :: Maybe Text- , _rcnRecurringCharges :: List "member" RecurringCharge- , _rcnReservedCacheNodeId :: Maybe Text- , _rcnReservedCacheNodesOfferingId :: Maybe Text- , _rcnStartTime :: Maybe ISO8601- , _rcnState :: Maybe Text- , _rcnUsagePrice :: Maybe Double- } deriving (Eq, Read, Show)---- | 'ReservedCacheNode' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcnCacheNodeCount' @::@ 'Maybe' 'Int'------ * 'rcnCacheNodeType' @::@ 'Maybe' 'Text'------ * 'rcnDuration' @::@ 'Maybe' 'Int'------ * 'rcnFixedPrice' @::@ 'Maybe' 'Double'------ * 'rcnOfferingType' @::@ 'Maybe' 'Text'------ * 'rcnProductDescription' @::@ 'Maybe' 'Text'------ * 'rcnRecurringCharges' @::@ ['RecurringCharge']------ * 'rcnReservedCacheNodeId' @::@ 'Maybe' 'Text'------ * 'rcnReservedCacheNodesOfferingId' @::@ 'Maybe' 'Text'------ * 'rcnStartTime' @::@ 'Maybe' 'UTCTime'------ * 'rcnState' @::@ 'Maybe' 'Text'------ * 'rcnUsagePrice' @::@ 'Maybe' 'Double'----reservedCacheNode :: ReservedCacheNode-reservedCacheNode = ReservedCacheNode- { _rcnReservedCacheNodeId = Nothing- , _rcnReservedCacheNodesOfferingId = Nothing- , _rcnCacheNodeType = Nothing- , _rcnStartTime = Nothing- , _rcnDuration = Nothing- , _rcnFixedPrice = Nothing- , _rcnUsagePrice = Nothing- , _rcnCacheNodeCount = Nothing- , _rcnProductDescription = Nothing- , _rcnOfferingType = Nothing- , _rcnState = Nothing- , _rcnRecurringCharges = mempty- }---- | The number of cache nodes that have been reserved.-rcnCacheNodeCount :: Lens' ReservedCacheNode (Maybe Int)-rcnCacheNodeCount =- lens _rcnCacheNodeCount (\s a -> s { _rcnCacheNodeCount = a })---- | The cache node type for the reserved cache nodes.------ Valid node types are as follows:------ General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:------ All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-rcnCacheNodeType :: Lens' ReservedCacheNode (Maybe Text)-rcnCacheNodeType = lens _rcnCacheNodeType (\s a -> s { _rcnCacheNodeType = a })---- | The duration of the reservation in seconds.-rcnDuration :: Lens' ReservedCacheNode (Maybe Int)-rcnDuration = lens _rcnDuration (\s a -> s { _rcnDuration = a })---- | The fixed price charged for this reserved cache node.-rcnFixedPrice :: Lens' ReservedCacheNode (Maybe Double)-rcnFixedPrice = lens _rcnFixedPrice (\s a -> s { _rcnFixedPrice = a })---- | The offering type of this reserved cache node.-rcnOfferingType :: Lens' ReservedCacheNode (Maybe Text)-rcnOfferingType = lens _rcnOfferingType (\s a -> s { _rcnOfferingType = a })---- | The description of the reserved cache node.-rcnProductDescription :: Lens' ReservedCacheNode (Maybe Text)-rcnProductDescription =- lens _rcnProductDescription (\s a -> s { _rcnProductDescription = a })---- | The recurring price charged to run this reserved cache node.-rcnRecurringCharges :: Lens' ReservedCacheNode [RecurringCharge]-rcnRecurringCharges =- lens _rcnRecurringCharges (\s a -> s { _rcnRecurringCharges = a })- . _List---- | The unique identifier for the reservation.-rcnReservedCacheNodeId :: Lens' ReservedCacheNode (Maybe Text)-rcnReservedCacheNodeId =- lens _rcnReservedCacheNodeId (\s a -> s { _rcnReservedCacheNodeId = a })---- | The offering identifier.-rcnReservedCacheNodesOfferingId :: Lens' ReservedCacheNode (Maybe Text)-rcnReservedCacheNodesOfferingId =- lens _rcnReservedCacheNodesOfferingId- (\s a -> s { _rcnReservedCacheNodesOfferingId = a })---- | The time the reservation started.-rcnStartTime :: Lens' ReservedCacheNode (Maybe UTCTime)-rcnStartTime = lens _rcnStartTime (\s a -> s { _rcnStartTime = a }) . mapping _Time---- | The state of the reserved cache node.-rcnState :: Lens' ReservedCacheNode (Maybe Text)-rcnState = lens _rcnState (\s a -> s { _rcnState = a })---- | The hourly price charged for this reserved cache node.-rcnUsagePrice :: Lens' ReservedCacheNode (Maybe Double)-rcnUsagePrice = lens _rcnUsagePrice (\s a -> s { _rcnUsagePrice = a })--instance FromXML ReservedCacheNode where- parseXML x = ReservedCacheNode- <$> x .@? "CacheNodeCount"- <*> x .@? "CacheNodeType"- <*> x .@? "Duration"- <*> x .@? "FixedPrice"- <*> x .@? "OfferingType"- <*> x .@? "ProductDescription"- <*> x .@? "RecurringCharges" .!@ mempty- <*> x .@? "ReservedCacheNodeId"- <*> x .@? "ReservedCacheNodesOfferingId"- <*> x .@? "StartTime"- <*> x .@? "State"- <*> x .@? "UsagePrice"--instance ToQuery ReservedCacheNode where- toQuery ReservedCacheNode{..} = mconcat- [ "CacheNodeCount" =? _rcnCacheNodeCount- , "CacheNodeType" =? _rcnCacheNodeType- , "Duration" =? _rcnDuration- , "FixedPrice" =? _rcnFixedPrice- , "OfferingType" =? _rcnOfferingType- , "ProductDescription" =? _rcnProductDescription- , "RecurringCharges" =? _rcnRecurringCharges- , "ReservedCacheNodeId" =? _rcnReservedCacheNodeId- , "ReservedCacheNodesOfferingId" =? _rcnReservedCacheNodesOfferingId- , "StartTime" =? _rcnStartTime- , "State" =? _rcnState- , "UsagePrice" =? _rcnUsagePrice- ]--data Subnet = Subnet- { _sSubnetAvailabilityZone :: Maybe AvailabilityZone- , _sSubnetIdentifier :: Maybe Text- } deriving (Eq, Read, Show)---- | 'Subnet' constructor.------ The fields accessible through corresponding lenses are:------ * 'sSubnetAvailabilityZone' @::@ 'Maybe' 'AvailabilityZone'------ * 'sSubnetIdentifier' @::@ 'Maybe' 'Text'----subnet :: Subnet-subnet = Subnet- { _sSubnetIdentifier = Nothing- , _sSubnetAvailabilityZone = Nothing- }---- | The Availability Zone associated with the subnet.-sSubnetAvailabilityZone :: Lens' Subnet (Maybe AvailabilityZone)-sSubnetAvailabilityZone =- lens _sSubnetAvailabilityZone (\s a -> s { _sSubnetAvailabilityZone = a })---- | The unique identifier for the subnet.-sSubnetIdentifier :: Lens' Subnet (Maybe Text)-sSubnetIdentifier =- lens _sSubnetIdentifier (\s a -> s { _sSubnetIdentifier = a })--instance FromXML Subnet where- parseXML x = Subnet- <$> x .@? "SubnetAvailabilityZone"- <*> x .@? "SubnetIdentifier"--instance ToQuery Subnet where- toQuery Subnet{..} = mconcat- [ "SubnetAvailabilityZone" =? _sSubnetAvailabilityZone- , "SubnetIdentifier" =? _sSubnetIdentifier- ]--data SecurityGroupMembership = SecurityGroupMembership- { _sgmSecurityGroupId :: Maybe Text- , _sgmStatus :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'SecurityGroupMembership' constructor.------ The fields accessible through corresponding lenses are:------ * 'sgmSecurityGroupId' @::@ 'Maybe' 'Text'------ * 'sgmStatus' @::@ 'Maybe' 'Text'----securityGroupMembership :: SecurityGroupMembership-securityGroupMembership = SecurityGroupMembership- { _sgmSecurityGroupId = Nothing- , _sgmStatus = Nothing- }---- | The identifier of the cache security group.-sgmSecurityGroupId :: Lens' SecurityGroupMembership (Maybe Text)-sgmSecurityGroupId =- lens _sgmSecurityGroupId (\s a -> s { _sgmSecurityGroupId = a })---- | The status of the cache security group membership. The status changes--- whenever a cache security group is modified, or when the cache security--- groups assigned to a cache cluster are modified.-sgmStatus :: Lens' SecurityGroupMembership (Maybe Text)-sgmStatus = lens _sgmStatus (\s a -> s { _sgmStatus = a })--instance FromXML SecurityGroupMembership where- parseXML x = SecurityGroupMembership- <$> x .@? "SecurityGroupId"- <*> x .@? "Status"--instance ToQuery SecurityGroupMembership where- toQuery SecurityGroupMembership{..} = mconcat- [ "SecurityGroupId" =? _sgmSecurityGroupId- , "Status" =? _sgmStatus- ]--data CacheCluster = CacheCluster- { _ccAutoMinorVersionUpgrade :: Maybe Bool- , _ccCacheClusterCreateTime :: Maybe ISO8601- , _ccCacheClusterId :: Maybe Text- , _ccCacheClusterStatus :: Maybe Text- , _ccCacheNodeType :: Maybe Text- , _ccCacheNodes :: List "member" CacheNode- , _ccCacheParameterGroup :: Maybe CacheParameterGroupStatus- , _ccCacheSecurityGroups :: List "member" CacheSecurityGroupMembership- , _ccCacheSubnetGroupName :: Maybe Text- , _ccClientDownloadLandingPage :: Maybe Text- , _ccConfigurationEndpoint :: Maybe Endpoint- , _ccEngine :: Maybe Text- , _ccEngineVersion :: Maybe Text- , _ccNotificationConfiguration :: Maybe NotificationConfiguration- , _ccNumCacheNodes :: Maybe Int- , _ccPendingModifiedValues :: Maybe PendingModifiedValues- , _ccPreferredAvailabilityZone :: Maybe Text- , _ccPreferredMaintenanceWindow :: Maybe Text- , _ccReplicationGroupId :: Maybe Text- , _ccSecurityGroups :: List "member" SecurityGroupMembership- , _ccSnapshotRetentionLimit :: Maybe Int- , _ccSnapshotWindow :: Maybe Text- } deriving (Eq, Read, Show)---- | 'CacheCluster' constructor.------ The fields accessible through corresponding lenses are:------ * 'ccAutoMinorVersionUpgrade' @::@ 'Maybe' 'Bool'------ * 'ccCacheClusterCreateTime' @::@ 'Maybe' 'UTCTime'------ * 'ccCacheClusterId' @::@ 'Maybe' 'Text'------ * 'ccCacheClusterStatus' @::@ 'Maybe' 'Text'------ * 'ccCacheNodeType' @::@ 'Maybe' 'Text'------ * 'ccCacheNodes' @::@ ['CacheNode']------ * 'ccCacheParameterGroup' @::@ 'Maybe' 'CacheParameterGroupStatus'------ * 'ccCacheSecurityGroups' @::@ ['CacheSecurityGroupMembership']------ * 'ccCacheSubnetGroupName' @::@ 'Maybe' 'Text'------ * 'ccClientDownloadLandingPage' @::@ 'Maybe' 'Text'------ * 'ccConfigurationEndpoint' @::@ 'Maybe' 'Endpoint'------ * 'ccEngine' @::@ 'Maybe' 'Text'------ * 'ccEngineVersion' @::@ 'Maybe' 'Text'------ * 'ccNotificationConfiguration' @::@ 'Maybe' 'NotificationConfiguration'------ * 'ccNumCacheNodes' @::@ 'Maybe' 'Int'------ * 'ccPendingModifiedValues' @::@ 'Maybe' 'PendingModifiedValues'------ * 'ccPreferredAvailabilityZone' @::@ 'Maybe' 'Text'------ * 'ccPreferredMaintenanceWindow' @::@ 'Maybe' 'Text'------ * 'ccReplicationGroupId' @::@ 'Maybe' 'Text'------ * 'ccSecurityGroups' @::@ ['SecurityGroupMembership']------ * 'ccSnapshotRetentionLimit' @::@ 'Maybe' 'Int'------ * 'ccSnapshotWindow' @::@ 'Maybe' 'Text'----cacheCluster :: CacheCluster-cacheCluster = CacheCluster- { _ccCacheClusterId = Nothing- , _ccConfigurationEndpoint = Nothing- , _ccClientDownloadLandingPage = Nothing- , _ccCacheNodeType = Nothing- , _ccEngine = Nothing- , _ccEngineVersion = Nothing- , _ccCacheClusterStatus = Nothing- , _ccNumCacheNodes = Nothing- , _ccPreferredAvailabilityZone = Nothing- , _ccCacheClusterCreateTime = Nothing- , _ccPreferredMaintenanceWindow = Nothing- , _ccPendingModifiedValues = Nothing- , _ccNotificationConfiguration = Nothing- , _ccCacheSecurityGroups = mempty- , _ccCacheParameterGroup = Nothing- , _ccCacheSubnetGroupName = Nothing- , _ccCacheNodes = mempty- , _ccAutoMinorVersionUpgrade = Nothing- , _ccSecurityGroups = mempty- , _ccReplicationGroupId = Nothing- , _ccSnapshotRetentionLimit = Nothing- , _ccSnapshotWindow = Nothing- }---- | This parameter is currently disabled.-ccAutoMinorVersionUpgrade :: Lens' CacheCluster (Maybe Bool)-ccAutoMinorVersionUpgrade =- lens _ccAutoMinorVersionUpgrade- (\s a -> s { _ccAutoMinorVersionUpgrade = a })---- | The date and time when the cache cluster was created.-ccCacheClusterCreateTime :: Lens' CacheCluster (Maybe UTCTime)-ccCacheClusterCreateTime =- lens _ccCacheClusterCreateTime- (\s a -> s { _ccCacheClusterCreateTime = a })- . mapping _Time---- | The user-supplied identifier of the cache cluster. This identifier is a--- unique key that identifies a cache cluster.-ccCacheClusterId :: Lens' CacheCluster (Maybe Text)-ccCacheClusterId = lens _ccCacheClusterId (\s a -> s { _ccCacheClusterId = a })---- | The current state of this cache cluster, one of the following values: /available/, /creating/, /deleted/, /deleting/, /incompatible-network/, /modifying/, /rebootingcache cluster nodes/, /restore-failed/, or /snapshotting/.-ccCacheClusterStatus :: Lens' CacheCluster (Maybe Text)-ccCacheClusterStatus =- lens _ccCacheClusterStatus (\s a -> s { _ccCacheClusterStatus = a })---- | The name of the compute and memory capacity node type for the cache cluster.------ Valid node types are as follows:------ General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:------ All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-ccCacheNodeType :: Lens' CacheCluster (Maybe Text)-ccCacheNodeType = lens _ccCacheNodeType (\s a -> s { _ccCacheNodeType = a })---- | A list of cache nodes that are members of the cache cluster.-ccCacheNodes :: Lens' CacheCluster [CacheNode]-ccCacheNodes = lens _ccCacheNodes (\s a -> s { _ccCacheNodes = a }) . _List--ccCacheParameterGroup :: Lens' CacheCluster (Maybe CacheParameterGroupStatus)-ccCacheParameterGroup =- lens _ccCacheParameterGroup (\s a -> s { _ccCacheParameterGroup = a })---- | A list of cache security group elements, composed of name and status--- sub-elements.-ccCacheSecurityGroups :: Lens' CacheCluster [CacheSecurityGroupMembership]-ccCacheSecurityGroups =- lens _ccCacheSecurityGroups (\s a -> s { _ccCacheSecurityGroups = a })- . _List---- | The name of the cache subnet group associated with the cache cluster.-ccCacheSubnetGroupName :: Lens' CacheCluster (Maybe Text)-ccCacheSubnetGroupName =- lens _ccCacheSubnetGroupName (\s a -> s { _ccCacheSubnetGroupName = a })---- | The URL of the web page where you can download the latest ElastiCache client--- library.-ccClientDownloadLandingPage :: Lens' CacheCluster (Maybe Text)-ccClientDownloadLandingPage =- lens _ccClientDownloadLandingPage- (\s a -> s { _ccClientDownloadLandingPage = a })--ccConfigurationEndpoint :: Lens' CacheCluster (Maybe Endpoint)-ccConfigurationEndpoint =- lens _ccConfigurationEndpoint (\s a -> s { _ccConfigurationEndpoint = a })---- | The name of the cache engine (/memcached/ or /redis/) to be used for this cache--- cluster.-ccEngine :: Lens' CacheCluster (Maybe Text)-ccEngine = lens _ccEngine (\s a -> s { _ccEngine = a })---- | The version of the cache engine version that is used in this cache cluster.-ccEngineVersion :: Lens' CacheCluster (Maybe Text)-ccEngineVersion = lens _ccEngineVersion (\s a -> s { _ccEngineVersion = a })--ccNotificationConfiguration :: Lens' CacheCluster (Maybe NotificationConfiguration)-ccNotificationConfiguration =- lens _ccNotificationConfiguration- (\s a -> s { _ccNotificationConfiguration = a })---- | The number of cache nodes in the cache cluster.------ For clusters running Redis, this value must be 1. For clusters running--- Memcached, this value must be between 1 and 20.-ccNumCacheNodes :: Lens' CacheCluster (Maybe Int)-ccNumCacheNodes = lens _ccNumCacheNodes (\s a -> s { _ccNumCacheNodes = a })--ccPendingModifiedValues :: Lens' CacheCluster (Maybe PendingModifiedValues)-ccPendingModifiedValues =- lens _ccPendingModifiedValues (\s a -> s { _ccPendingModifiedValues = a })---- | The name of the Availability Zone in which the cache cluster is located or--- "Multiple" if the cache nodes are located in different Availability Zones.-ccPreferredAvailabilityZone :: Lens' CacheCluster (Maybe Text)-ccPreferredAvailabilityZone =- lens _ccPreferredAvailabilityZone- (\s a -> s { _ccPreferredAvailabilityZone = a })---- | Specifies the weekly time range during which maintenance on the cache cluster--- is performed. It is specified as a range in the format--- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a--- 60 minute period. Valid values for 'ddd' are:------ 'sun' 'mon' 'tue' 'wed' 'thu' 'fri' 'sat' Example: 'sun:05:00-sun:09:00'-ccPreferredMaintenanceWindow :: Lens' CacheCluster (Maybe Text)-ccPreferredMaintenanceWindow =- lens _ccPreferredMaintenanceWindow- (\s a -> s { _ccPreferredMaintenanceWindow = a })---- | The replication group to which this cache cluster belongs. If this field is--- empty, the cache cluster is not associated with any replication group.-ccReplicationGroupId :: Lens' CacheCluster (Maybe Text)-ccReplicationGroupId =- lens _ccReplicationGroupId (\s a -> s { _ccReplicationGroupId = a })---- | A list of VPC Security Groups associated with the cache cluster.-ccSecurityGroups :: Lens' CacheCluster [SecurityGroupMembership]-ccSecurityGroups = lens _ccSecurityGroups (\s a -> s { _ccSecurityGroups = a }) . _List---- | The number of days for which ElastiCache will retain automatic cache cluster--- snapshots before deleting them. For example, if you set /SnapshotRetentionLimit/--- to 5, then a snapshot that was taken today will be retained for 5 days--- before being deleted.------ Important--- If the value of SnapshotRetentionLimit is set to zero (0), backups--- are turned off.-ccSnapshotRetentionLimit :: Lens' CacheCluster (Maybe Int)-ccSnapshotRetentionLimit =- lens _ccSnapshotRetentionLimit- (\s a -> s { _ccSnapshotRetentionLimit = a })---- | The daily time range (in UTC) during which ElastiCache will begin taking a--- daily snapshot of your cache cluster.------ Example: '05:00-09:00'-ccSnapshotWindow :: Lens' CacheCluster (Maybe Text)-ccSnapshotWindow = lens _ccSnapshotWindow (\s a -> s { _ccSnapshotWindow = a })--instance FromXML CacheCluster where- parseXML x = CacheCluster- <$> x .@? "AutoMinorVersionUpgrade"- <*> x .@? "CacheClusterCreateTime"- <*> x .@? "CacheClusterId"- <*> x .@? "CacheClusterStatus"- <*> x .@? "CacheNodeType"- <*> x .@? "CacheNodes" .!@ mempty- <*> x .@? "CacheParameterGroup"- <*> x .@? "CacheSecurityGroups" .!@ mempty- <*> x .@? "CacheSubnetGroupName"- <*> x .@? "ClientDownloadLandingPage"- <*> x .@? "ConfigurationEndpoint"- <*> x .@? "Engine"- <*> x .@? "EngineVersion"- <*> x .@? "NotificationConfiguration"- <*> x .@? "NumCacheNodes"- <*> x .@? "PendingModifiedValues"- <*> x .@? "PreferredAvailabilityZone"- <*> x .@? "PreferredMaintenanceWindow"- <*> x .@? "ReplicationGroupId"- <*> x .@? "SecurityGroups" .!@ mempty- <*> x .@? "SnapshotRetentionLimit"- <*> x .@? "SnapshotWindow"--instance ToQuery CacheCluster where- toQuery CacheCluster{..} = mconcat- [ "AutoMinorVersionUpgrade" =? _ccAutoMinorVersionUpgrade- , "CacheClusterCreateTime" =? _ccCacheClusterCreateTime- , "CacheClusterId" =? _ccCacheClusterId- , "CacheClusterStatus" =? _ccCacheClusterStatus- , "CacheNodeType" =? _ccCacheNodeType- , "CacheNodes" =? _ccCacheNodes- , "CacheParameterGroup" =? _ccCacheParameterGroup- , "CacheSecurityGroups" =? _ccCacheSecurityGroups- , "CacheSubnetGroupName" =? _ccCacheSubnetGroupName- , "ClientDownloadLandingPage" =? _ccClientDownloadLandingPage- , "ConfigurationEndpoint" =? _ccConfigurationEndpoint- , "Engine" =? _ccEngine- , "EngineVersion" =? _ccEngineVersion- , "NotificationConfiguration" =? _ccNotificationConfiguration- , "NumCacheNodes" =? _ccNumCacheNodes- , "PendingModifiedValues" =? _ccPendingModifiedValues- , "PreferredAvailabilityZone" =? _ccPreferredAvailabilityZone- , "PreferredMaintenanceWindow" =? _ccPreferredMaintenanceWindow- , "ReplicationGroupId" =? _ccReplicationGroupId- , "SecurityGroups" =? _ccSecurityGroups- , "SnapshotRetentionLimit" =? _ccSnapshotRetentionLimit- , "SnapshotWindow" =? _ccSnapshotWindow- ]--data EngineDefaults = EngineDefaults- { _edCacheNodeTypeSpecificParameters :: List "member" CacheNodeTypeSpecificParameter- , _edCacheParameterGroupFamily :: Maybe Text- , _edMarker :: Maybe Text- , _edParameters :: List "member" Parameter- } deriving (Eq, Read, Show)---- | 'EngineDefaults' constructor.------ The fields accessible through corresponding lenses are:------ * 'edCacheNodeTypeSpecificParameters' @::@ ['CacheNodeTypeSpecificParameter']------ * 'edCacheParameterGroupFamily' @::@ 'Maybe' 'Text'------ * 'edMarker' @::@ 'Maybe' 'Text'------ * 'edParameters' @::@ ['Parameter']----engineDefaults :: EngineDefaults-engineDefaults = EngineDefaults- { _edCacheParameterGroupFamily = Nothing- , _edMarker = Nothing- , _edParameters = mempty- , _edCacheNodeTypeSpecificParameters = mempty- }---- | A list of parameters specific to a particular cache node type. Each element--- in the list contains detailed information about one parameter.-edCacheNodeTypeSpecificParameters :: Lens' EngineDefaults [CacheNodeTypeSpecificParameter]-edCacheNodeTypeSpecificParameters =- lens _edCacheNodeTypeSpecificParameters- (\s a -> s { _edCacheNodeTypeSpecificParameters = a })- . _List---- | Specifies the name of the cache parameter group family to which the engine--- default parameters apply.-edCacheParameterGroupFamily :: Lens' EngineDefaults (Maybe Text)-edCacheParameterGroupFamily =- lens _edCacheParameterGroupFamily- (\s a -> s { _edCacheParameterGroupFamily = a })---- | Provides an identifier to allow retrieval of paginated results.-edMarker :: Lens' EngineDefaults (Maybe Text)-edMarker = lens _edMarker (\s a -> s { _edMarker = a })---- | Contains a list of engine default parameters.-edParameters :: Lens' EngineDefaults [Parameter]-edParameters = lens _edParameters (\s a -> s { _edParameters = a }) . _List--instance FromXML EngineDefaults where- parseXML x = EngineDefaults- <$> x .@? "CacheNodeTypeSpecificParameters" .!@ mempty- <*> x .@? "CacheParameterGroupFamily"- <*> x .@? "Marker"- <*> x .@? "Parameters" .!@ mempty--instance ToQuery EngineDefaults where- toQuery EngineDefaults{..} = mconcat- [ "CacheNodeTypeSpecificParameters" =? _edCacheNodeTypeSpecificParameters- , "CacheParameterGroupFamily" =? _edCacheParameterGroupFamily- , "Marker" =? _edMarker- , "Parameters" =? _edParameters- ]--data CacheParameterGroupStatus = CacheParameterGroupStatus- { _cpgsCacheNodeIdsToReboot :: List "member" Text- , _cpgsCacheParameterGroupName :: Maybe Text- , _cpgsParameterApplyStatus :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'CacheParameterGroupStatus' constructor.------ The fields accessible through corresponding lenses are:------ * 'cpgsCacheNodeIdsToReboot' @::@ ['Text']------ * 'cpgsCacheParameterGroupName' @::@ 'Maybe' 'Text'------ * 'cpgsParameterApplyStatus' @::@ 'Maybe' 'Text'----cacheParameterGroupStatus :: CacheParameterGroupStatus-cacheParameterGroupStatus = CacheParameterGroupStatus- { _cpgsCacheParameterGroupName = Nothing- , _cpgsParameterApplyStatus = Nothing- , _cpgsCacheNodeIdsToReboot = mempty- }---- | A list of the cache node IDs which need to be rebooted for parameter changes--- to be applied. A node ID is a numeric identifier (0001, 0002, etc.).-cpgsCacheNodeIdsToReboot :: Lens' CacheParameterGroupStatus [Text]-cpgsCacheNodeIdsToReboot =- lens _cpgsCacheNodeIdsToReboot- (\s a -> s { _cpgsCacheNodeIdsToReboot = a })- . _List---- | The name of the cache parameter group.-cpgsCacheParameterGroupName :: Lens' CacheParameterGroupStatus (Maybe Text)-cpgsCacheParameterGroupName =- lens _cpgsCacheParameterGroupName- (\s a -> s { _cpgsCacheParameterGroupName = a })---- | The status of parameter updates.-cpgsParameterApplyStatus :: Lens' CacheParameterGroupStatus (Maybe Text)-cpgsParameterApplyStatus =- lens _cpgsParameterApplyStatus- (\s a -> s { _cpgsParameterApplyStatus = a })--instance FromXML CacheParameterGroupStatus where- parseXML x = CacheParameterGroupStatus- <$> x .@? "CacheNodeIdsToReboot" .!@ mempty- <*> x .@? "CacheParameterGroupName"- <*> x .@? "ParameterApplyStatus"--instance ToQuery CacheParameterGroupStatus where- toQuery CacheParameterGroupStatus{..} = mconcat- [ "CacheNodeIdsToReboot" =? _cpgsCacheNodeIdsToReboot- , "CacheParameterGroupName" =? _cpgsCacheParameterGroupName- , "ParameterApplyStatus" =? _cpgsParameterApplyStatus- ]--data CacheNode = CacheNode- { _cnCacheNodeCreateTime :: Maybe ISO8601- , _cnCacheNodeId :: Maybe Text- , _cnCacheNodeStatus :: Maybe Text- , _cnCustomerAvailabilityZone :: Maybe Text- , _cnEndpoint :: Maybe Endpoint- , _cnParameterGroupStatus :: Maybe Text- , _cnSourceCacheNodeId :: Maybe Text- } deriving (Eq, Read, Show)---- | 'CacheNode' constructor.------ The fields accessible through corresponding lenses are:------ * 'cnCacheNodeCreateTime' @::@ 'Maybe' 'UTCTime'------ * 'cnCacheNodeId' @::@ 'Maybe' 'Text'------ * 'cnCacheNodeStatus' @::@ 'Maybe' 'Text'------ * 'cnCustomerAvailabilityZone' @::@ 'Maybe' 'Text'------ * 'cnEndpoint' @::@ 'Maybe' 'Endpoint'------ * 'cnParameterGroupStatus' @::@ 'Maybe' 'Text'------ * 'cnSourceCacheNodeId' @::@ 'Maybe' 'Text'----cacheNode :: CacheNode-cacheNode = CacheNode- { _cnCacheNodeId = Nothing- , _cnCacheNodeStatus = Nothing- , _cnCacheNodeCreateTime = Nothing- , _cnEndpoint = Nothing- , _cnParameterGroupStatus = Nothing- , _cnSourceCacheNodeId = Nothing- , _cnCustomerAvailabilityZone = Nothing- }---- | The date and time when the cache node was created.-cnCacheNodeCreateTime :: Lens' CacheNode (Maybe UTCTime)-cnCacheNodeCreateTime =- lens _cnCacheNodeCreateTime (\s a -> s { _cnCacheNodeCreateTime = a })- . mapping _Time---- | The cache node identifier. A node ID is a numeric identifier (0001, 0002,--- etc.). The combination of cluster ID and node ID uniquely identifies every--- cache node used in a customer's AWS account.-cnCacheNodeId :: Lens' CacheNode (Maybe Text)-cnCacheNodeId = lens _cnCacheNodeId (\s a -> s { _cnCacheNodeId = a })---- | The current state of this cache node.-cnCacheNodeStatus :: Lens' CacheNode (Maybe Text)-cnCacheNodeStatus =- lens _cnCacheNodeStatus (\s a -> s { _cnCacheNodeStatus = a })---- | The Availability Zone where this node was created and now resides.-cnCustomerAvailabilityZone :: Lens' CacheNode (Maybe Text)-cnCustomerAvailabilityZone =- lens _cnCustomerAvailabilityZone- (\s a -> s { _cnCustomerAvailabilityZone = a })---- | The hostname for connecting to this cache node.-cnEndpoint :: Lens' CacheNode (Maybe Endpoint)-cnEndpoint = lens _cnEndpoint (\s a -> s { _cnEndpoint = a })---- | The status of the parameter group applied to this cache node.-cnParameterGroupStatus :: Lens' CacheNode (Maybe Text)-cnParameterGroupStatus =- lens _cnParameterGroupStatus (\s a -> s { _cnParameterGroupStatus = a })---- | The ID of the primary node to which this read replica node is synchronized.--- If this field is empty, then this node is not associated with a primary cache--- cluster.-cnSourceCacheNodeId :: Lens' CacheNode (Maybe Text)-cnSourceCacheNodeId =- lens _cnSourceCacheNodeId (\s a -> s { _cnSourceCacheNodeId = a })--instance FromXML CacheNode where- parseXML x = CacheNode- <$> x .@? "CacheNodeCreateTime"- <*> x .@? "CacheNodeId"- <*> x .@? "CacheNodeStatus"- <*> x .@? "CustomerAvailabilityZone"- <*> x .@? "Endpoint"- <*> x .@? "ParameterGroupStatus"- <*> x .@? "SourceCacheNodeId"--instance ToQuery CacheNode where- toQuery CacheNode{..} = mconcat- [ "CacheNodeCreateTime" =? _cnCacheNodeCreateTime- , "CacheNodeId" =? _cnCacheNodeId- , "CacheNodeStatus" =? _cnCacheNodeStatus- , "CustomerAvailabilityZone" =? _cnCustomerAvailabilityZone- , "Endpoint" =? _cnEndpoint- , "ParameterGroupStatus" =? _cnParameterGroupStatus- , "SourceCacheNodeId" =? _cnSourceCacheNodeId- ]--data CacheSecurityGroupMembership = CacheSecurityGroupMembership- { _csgmCacheSecurityGroupName :: Maybe Text- , _csgmStatus :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'CacheSecurityGroupMembership' constructor.------ The fields accessible through corresponding lenses are:------ * 'csgmCacheSecurityGroupName' @::@ 'Maybe' 'Text'------ * 'csgmStatus' @::@ 'Maybe' 'Text'----cacheSecurityGroupMembership :: CacheSecurityGroupMembership-cacheSecurityGroupMembership = CacheSecurityGroupMembership- { _csgmCacheSecurityGroupName = Nothing- , _csgmStatus = Nothing- }---- | The name of the cache security group.-csgmCacheSecurityGroupName :: Lens' CacheSecurityGroupMembership (Maybe Text)-csgmCacheSecurityGroupName =- lens _csgmCacheSecurityGroupName- (\s a -> s { _csgmCacheSecurityGroupName = a })---- | The membership status in the cache security group. The status changes when a--- cache security group is modified, or when the cache security groups assigned--- to a cache cluster are modified.-csgmStatus :: Lens' CacheSecurityGroupMembership (Maybe Text)-csgmStatus = lens _csgmStatus (\s a -> s { _csgmStatus = a })--instance FromXML CacheSecurityGroupMembership where- parseXML x = CacheSecurityGroupMembership- <$> x .@? "CacheSecurityGroupName"- <*> x .@? "Status"--instance ToQuery CacheSecurityGroupMembership where- toQuery CacheSecurityGroupMembership{..} = mconcat- [ "CacheSecurityGroupName" =? _csgmCacheSecurityGroupName- , "Status" =? _csgmStatus- ]--newtype AvailabilityZone = AvailabilityZone- { _azName :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)---- | 'AvailabilityZone' constructor.------ The fields accessible through corresponding lenses are:------ * 'azName' @::@ 'Maybe' 'Text'----availabilityZone :: AvailabilityZone-availabilityZone = AvailabilityZone- { _azName = Nothing- }---- | The name of the Availability Zone.-azName :: Lens' AvailabilityZone (Maybe Text)-azName = lens _azName (\s a -> s { _azName = a })--instance FromXML AvailabilityZone where- parseXML x = AvailabilityZone- <$> x .@? "Name"--instance ToQuery AvailabilityZone where- toQuery AvailabilityZone{..} = mconcat- [ "Name" =? _azName- ]--data NodeGroupMember = NodeGroupMember- { _ngmCacheClusterId :: Maybe Text- , _ngmCacheNodeId :: Maybe Text- , _ngmCurrentRole :: Maybe Text- , _ngmPreferredAvailabilityZone :: Maybe Text- , _ngmReadEndpoint :: Maybe Endpoint- } deriving (Eq, Read, Show)---- | 'NodeGroupMember' constructor.------ The fields accessible through corresponding lenses are:------ * 'ngmCacheClusterId' @::@ 'Maybe' 'Text'------ * 'ngmCacheNodeId' @::@ 'Maybe' 'Text'------ * 'ngmCurrentRole' @::@ 'Maybe' 'Text'------ * 'ngmPreferredAvailabilityZone' @::@ 'Maybe' 'Text'------ * 'ngmReadEndpoint' @::@ 'Maybe' 'Endpoint'----nodeGroupMember :: NodeGroupMember-nodeGroupMember = NodeGroupMember- { _ngmCacheClusterId = Nothing- , _ngmCacheNodeId = Nothing- , _ngmReadEndpoint = Nothing- , _ngmPreferredAvailabilityZone = Nothing- , _ngmCurrentRole = Nothing- }---- | The ID of the cache cluster to which the node belongs.-ngmCacheClusterId :: Lens' NodeGroupMember (Maybe Text)-ngmCacheClusterId =- lens _ngmCacheClusterId (\s a -> s { _ngmCacheClusterId = a })---- | The ID of the node within its cache cluster. A node ID is a numeric--- identifier (0001, 0002, etc.).-ngmCacheNodeId :: Lens' NodeGroupMember (Maybe Text)-ngmCacheNodeId = lens _ngmCacheNodeId (\s a -> s { _ngmCacheNodeId = a })---- | The role that is currently assigned to the node - /primary/ or /replica/.-ngmCurrentRole :: Lens' NodeGroupMember (Maybe Text)-ngmCurrentRole = lens _ngmCurrentRole (\s a -> s { _ngmCurrentRole = a })---- | The name of the Availability Zone in which the node is located.-ngmPreferredAvailabilityZone :: Lens' NodeGroupMember (Maybe Text)-ngmPreferredAvailabilityZone =- lens _ngmPreferredAvailabilityZone- (\s a -> s { _ngmPreferredAvailabilityZone = a })--ngmReadEndpoint :: Lens' NodeGroupMember (Maybe Endpoint)-ngmReadEndpoint = lens _ngmReadEndpoint (\s a -> s { _ngmReadEndpoint = a })--instance FromXML NodeGroupMember where- parseXML x = NodeGroupMember- <$> x .@? "CacheClusterId"- <*> x .@? "CacheNodeId"- <*> x .@? "CurrentRole"- <*> x .@? "PreferredAvailabilityZone"- <*> x .@? "ReadEndpoint"--instance ToQuery NodeGroupMember where- toQuery NodeGroupMember{..} = mconcat- [ "CacheClusterId" =? _ngmCacheClusterId- , "CacheNodeId" =? _ngmCacheNodeId- , "CurrentRole" =? _ngmCurrentRole- , "PreferredAvailabilityZone" =? _ngmPreferredAvailabilityZone- , "ReadEndpoint" =? _ngmReadEndpoint- ]--data CacheParameterGroup = CacheParameterGroup- { _cpgCacheParameterGroupFamily :: Maybe Text- , _cpgCacheParameterGroupName :: Maybe Text- , _cpgDescription :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'CacheParameterGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'cpgCacheParameterGroupFamily' @::@ 'Maybe' 'Text'------ * 'cpgCacheParameterGroupName' @::@ 'Maybe' 'Text'------ * 'cpgDescription' @::@ 'Maybe' 'Text'----cacheParameterGroup :: CacheParameterGroup-cacheParameterGroup = CacheParameterGroup- { _cpgCacheParameterGroupName = Nothing- , _cpgCacheParameterGroupFamily = Nothing- , _cpgDescription = Nothing- }---- | The name of the cache parameter group family that this cache parameter group--- is compatible with.-cpgCacheParameterGroupFamily :: Lens' CacheParameterGroup (Maybe Text)-cpgCacheParameterGroupFamily =- lens _cpgCacheParameterGroupFamily- (\s a -> s { _cpgCacheParameterGroupFamily = a })---- | The name of the cache parameter group.-cpgCacheParameterGroupName :: Lens' CacheParameterGroup (Maybe Text)-cpgCacheParameterGroupName =- lens _cpgCacheParameterGroupName- (\s a -> s { _cpgCacheParameterGroupName = a })---- | The description for this cache parameter group.-cpgDescription :: Lens' CacheParameterGroup (Maybe Text)-cpgDescription = lens _cpgDescription (\s a -> s { _cpgDescription = a })--instance FromXML CacheParameterGroup where- parseXML x = CacheParameterGroup- <$> x .@? "CacheParameterGroupFamily"- <*> x .@? "CacheParameterGroupName"- <*> x .@? "Description"--instance ToQuery CacheParameterGroup where- toQuery CacheParameterGroup{..} = mconcat- [ "CacheParameterGroupFamily" =? _cpgCacheParameterGroupFamily- , "CacheParameterGroupName" =? _cpgCacheParameterGroupName- , "Description" =? _cpgDescription- ]--data AutomaticFailoverStatus- = AFSDisabled -- ^ disabled- | AFSDisabling -- ^ disabling- | AFSEnabled -- ^ enabled- | AFSEnabling -- ^ enabling- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable AutomaticFailoverStatus--instance FromText AutomaticFailoverStatus where- parser = takeLowerText >>= \case- "disabled" -> pure AFSDisabled- "disabling" -> pure AFSDisabling- "enabled" -> pure AFSEnabled- "enabling" -> pure AFSEnabling- e -> fail $- "Failure parsing AutomaticFailoverStatus from " ++ show e--instance ToText AutomaticFailoverStatus where- toText = \case- AFSDisabled -> "disabled"- AFSDisabling -> "disabling"- AFSEnabled -> "enabled"- AFSEnabling -> "enabling"--instance ToByteString AutomaticFailoverStatus-instance ToHeader AutomaticFailoverStatus-instance ToQuery AutomaticFailoverStatus--instance FromXML AutomaticFailoverStatus where- parseXML = parseXMLText "AutomaticFailoverStatus"--data CacheSecurityGroup = CacheSecurityGroup- { _csgCacheSecurityGroupName :: Maybe Text- , _csgDescription :: Maybe Text- , _csgEC2SecurityGroups :: List "member" EC2SecurityGroup- , _csgOwnerId :: Maybe Text- } deriving (Eq, Read, Show)---- | 'CacheSecurityGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'csgCacheSecurityGroupName' @::@ 'Maybe' 'Text'------ * 'csgDescription' @::@ 'Maybe' 'Text'------ * 'csgEC2SecurityGroups' @::@ ['EC2SecurityGroup']------ * 'csgOwnerId' @::@ 'Maybe' 'Text'----cacheSecurityGroup :: CacheSecurityGroup-cacheSecurityGroup = CacheSecurityGroup- { _csgOwnerId = Nothing- , _csgCacheSecurityGroupName = Nothing- , _csgDescription = Nothing- , _csgEC2SecurityGroups = mempty- }---- | The name of the cache security group.-csgCacheSecurityGroupName :: Lens' CacheSecurityGroup (Maybe Text)-csgCacheSecurityGroupName =- lens _csgCacheSecurityGroupName- (\s a -> s { _csgCacheSecurityGroupName = a })---- | The description of the cache security group.-csgDescription :: Lens' CacheSecurityGroup (Maybe Text)-csgDescription = lens _csgDescription (\s a -> s { _csgDescription = a })---- | A list of Amazon EC2 security groups that are associated with this cache--- security group.-csgEC2SecurityGroups :: Lens' CacheSecurityGroup [EC2SecurityGroup]-csgEC2SecurityGroups =- lens _csgEC2SecurityGroups (\s a -> s { _csgEC2SecurityGroups = a })- . _List---- | The AWS account ID of the cache security group owner.-csgOwnerId :: Lens' CacheSecurityGroup (Maybe Text)-csgOwnerId = lens _csgOwnerId (\s a -> s { _csgOwnerId = a })--instance FromXML CacheSecurityGroup where- parseXML x = CacheSecurityGroup- <$> x .@? "CacheSecurityGroupName"- <*> x .@? "Description"- <*> x .@? "EC2SecurityGroups" .!@ mempty- <*> x .@? "OwnerId"--instance ToQuery CacheSecurityGroup where- toQuery CacheSecurityGroup{..} = mconcat- [ "CacheSecurityGroupName" =? _csgCacheSecurityGroupName- , "Description" =? _csgDescription- , "EC2SecurityGroups" =? _csgEC2SecurityGroups- , "OwnerId" =? _csgOwnerId- ]--data CacheNodeTypeSpecificParameter = CacheNodeTypeSpecificParameter- { _cntspAllowedValues :: Maybe Text- , _cntspCacheNodeTypeSpecificValues :: List "member" CacheNodeTypeSpecificValue- , _cntspDataType :: Maybe Text- , _cntspDescription :: Maybe Text- , _cntspIsModifiable :: Maybe Bool- , _cntspMinimumEngineVersion :: Maybe Text- , _cntspParameterName :: Maybe Text- , _cntspSource :: Maybe Text- } deriving (Eq, Read, Show)---- | 'CacheNodeTypeSpecificParameter' constructor.------ The fields accessible through corresponding lenses are:------ * 'cntspAllowedValues' @::@ 'Maybe' 'Text'------ * 'cntspCacheNodeTypeSpecificValues' @::@ ['CacheNodeTypeSpecificValue']------ * 'cntspDataType' @::@ 'Maybe' 'Text'------ * 'cntspDescription' @::@ 'Maybe' 'Text'------ * 'cntspIsModifiable' @::@ 'Maybe' 'Bool'------ * 'cntspMinimumEngineVersion' @::@ 'Maybe' 'Text'------ * 'cntspParameterName' @::@ 'Maybe' 'Text'------ * 'cntspSource' @::@ 'Maybe' 'Text'----cacheNodeTypeSpecificParameter :: CacheNodeTypeSpecificParameter-cacheNodeTypeSpecificParameter = CacheNodeTypeSpecificParameter- { _cntspParameterName = Nothing- , _cntspDescription = Nothing- , _cntspSource = Nothing- , _cntspDataType = Nothing- , _cntspAllowedValues = Nothing- , _cntspIsModifiable = Nothing- , _cntspMinimumEngineVersion = Nothing- , _cntspCacheNodeTypeSpecificValues = mempty- }---- | The valid range of values for the parameter.-cntspAllowedValues :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspAllowedValues =- lens _cntspAllowedValues (\s a -> s { _cntspAllowedValues = a })---- | A list of cache node types and their corresponding values for this parameter.-cntspCacheNodeTypeSpecificValues :: Lens' CacheNodeTypeSpecificParameter [CacheNodeTypeSpecificValue]-cntspCacheNodeTypeSpecificValues =- lens _cntspCacheNodeTypeSpecificValues- (\s a -> s { _cntspCacheNodeTypeSpecificValues = a })- . _List---- | The valid data type for the parameter.-cntspDataType :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspDataType = lens _cntspDataType (\s a -> s { _cntspDataType = a })---- | A description of the parameter.-cntspDescription :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspDescription = lens _cntspDescription (\s a -> s { _cntspDescription = a })---- | Indicates whether ('true') or not ('false') the parameter can be modified. Some--- parameters have security or operational implications that prevent them from--- being changed.-cntspIsModifiable :: Lens' CacheNodeTypeSpecificParameter (Maybe Bool)-cntspIsModifiable =- lens _cntspIsModifiable (\s a -> s { _cntspIsModifiable = a })---- | The earliest cache engine version to which the parameter can apply.-cntspMinimumEngineVersion :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspMinimumEngineVersion =- lens _cntspMinimumEngineVersion- (\s a -> s { _cntspMinimumEngineVersion = a })---- | The name of the parameter.-cntspParameterName :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspParameterName =- lens _cntspParameterName (\s a -> s { _cntspParameterName = a })---- | The source of the parameter value.-cntspSource :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)-cntspSource = lens _cntspSource (\s a -> s { _cntspSource = a })--instance FromXML CacheNodeTypeSpecificParameter where- parseXML x = CacheNodeTypeSpecificParameter- <$> x .@? "AllowedValues"- <*> x .@? "CacheNodeTypeSpecificValues" .!@ mempty- <*> x .@? "DataType"- <*> x .@? "Description"- <*> x .@? "IsModifiable"- <*> x .@? "MinimumEngineVersion"- <*> x .@? "ParameterName"- <*> x .@? "Source"--instance ToQuery CacheNodeTypeSpecificParameter where- toQuery CacheNodeTypeSpecificParameter{..} = mconcat- [ "AllowedValues" =? _cntspAllowedValues- , "CacheNodeTypeSpecificValues" =? _cntspCacheNodeTypeSpecificValues- , "DataType" =? _cntspDataType- , "Description" =? _cntspDescription- , "IsModifiable" =? _cntspIsModifiable- , "MinimumEngineVersion" =? _cntspMinimumEngineVersion- , "ParameterName" =? _cntspParameterName- , "Source" =? _cntspSource- ]--data AZMode- = CrossAz -- ^ cross-az- | SingleAz -- ^ single-az- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable AZMode--instance FromText AZMode where- parser = takeLowerText >>= \case- "cross-az" -> pure CrossAz- "single-az" -> pure SingleAz- e -> fail $- "Failure parsing AZMode from " ++ show e--instance ToText AZMode where- toText = \case- CrossAz -> "cross-az"- SingleAz -> "single-az"--instance ToByteString AZMode-instance ToHeader AZMode-instance ToQuery AZMode--instance FromXML AZMode where- parseXML = parseXMLText "AZMode"--data CacheEngineVersion = CacheEngineVersion- { _cevCacheEngineDescription :: Maybe Text- , _cevCacheEngineVersionDescription :: Maybe Text- , _cevCacheParameterGroupFamily :: Maybe Text- , _cevEngine :: Maybe Text- , _cevEngineVersion :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'CacheEngineVersion' constructor.------ The fields accessible through corresponding lenses are:------ * 'cevCacheEngineDescription' @::@ 'Maybe' 'Text'------ * 'cevCacheEngineVersionDescription' @::@ 'Maybe' 'Text'------ * 'cevCacheParameterGroupFamily' @::@ 'Maybe' 'Text'------ * 'cevEngine' @::@ 'Maybe' 'Text'------ * 'cevEngineVersion' @::@ 'Maybe' 'Text'----cacheEngineVersion :: CacheEngineVersion-cacheEngineVersion = CacheEngineVersion- { _cevEngine = Nothing- , _cevEngineVersion = Nothing- , _cevCacheParameterGroupFamily = Nothing- , _cevCacheEngineDescription = Nothing- , _cevCacheEngineVersionDescription = Nothing- }---- | The description of the cache engine.-cevCacheEngineDescription :: Lens' CacheEngineVersion (Maybe Text)-cevCacheEngineDescription =- lens _cevCacheEngineDescription- (\s a -> s { _cevCacheEngineDescription = a })---- | The description of the cache engine version.-cevCacheEngineVersionDescription :: Lens' CacheEngineVersion (Maybe Text)-cevCacheEngineVersionDescription =- lens _cevCacheEngineVersionDescription- (\s a -> s { _cevCacheEngineVersionDescription = a })---- | The name of the cache parameter group family associated with this cache--- engine.-cevCacheParameterGroupFamily :: Lens' CacheEngineVersion (Maybe Text)-cevCacheParameterGroupFamily =- lens _cevCacheParameterGroupFamily- (\s a -> s { _cevCacheParameterGroupFamily = a })---- | The name of the cache engine.-cevEngine :: Lens' CacheEngineVersion (Maybe Text)-cevEngine = lens _cevEngine (\s a -> s { _cevEngine = a })---- | The version number of the cache engine.-cevEngineVersion :: Lens' CacheEngineVersion (Maybe Text)-cevEngineVersion = lens _cevEngineVersion (\s a -> s { _cevEngineVersion = a })--instance FromXML CacheEngineVersion where- parseXML x = CacheEngineVersion- <$> x .@? "CacheEngineDescription"- <*> x .@? "CacheEngineVersionDescription"- <*> x .@? "CacheParameterGroupFamily"- <*> x .@? "Engine"- <*> x .@? "EngineVersion"--instance ToQuery CacheEngineVersion where- toQuery CacheEngineVersion{..} = mconcat- [ "CacheEngineDescription" =? _cevCacheEngineDescription- , "CacheEngineVersionDescription" =? _cevCacheEngineVersionDescription- , "CacheParameterGroupFamily" =? _cevCacheParameterGroupFamily- , "Engine" =? _cevEngine- , "EngineVersion" =? _cevEngineVersion- ]--data ReplicationGroup = ReplicationGroup- { _rgAutomaticFailover :: Maybe AutomaticFailoverStatus- , _rgDescription :: Maybe Text- , _rgMemberClusters :: List "member" Text- , _rgNodeGroups :: List "member" NodeGroup- , _rgPendingModifiedValues :: Maybe ReplicationGroupPendingModifiedValues- , _rgReplicationGroupId :: Maybe Text- , _rgSnapshottingClusterId :: Maybe Text- , _rgStatus :: Maybe Text- } deriving (Eq, Read, Show)---- | 'ReplicationGroup' constructor.------ The fields accessible through corresponding lenses are:------ * 'rgAutomaticFailover' @::@ 'Maybe' 'AutomaticFailoverStatus'------ * 'rgDescription' @::@ 'Maybe' 'Text'------ * 'rgMemberClusters' @::@ ['Text']------ * 'rgNodeGroups' @::@ ['NodeGroup']------ * 'rgPendingModifiedValues' @::@ 'Maybe' 'ReplicationGroupPendingModifiedValues'------ * 'rgReplicationGroupId' @::@ 'Maybe' 'Text'------ * 'rgSnapshottingClusterId' @::@ 'Maybe' 'Text'------ * 'rgStatus' @::@ 'Maybe' 'Text'----replicationGroup :: ReplicationGroup-replicationGroup = ReplicationGroup- { _rgReplicationGroupId = Nothing- , _rgDescription = Nothing- , _rgStatus = Nothing- , _rgPendingModifiedValues = Nothing- , _rgMemberClusters = mempty- , _rgNodeGroups = mempty- , _rgSnapshottingClusterId = Nothing- , _rgAutomaticFailover = Nothing- }---- | Indicates the status of Multi-AZ for this replication group.------ ElastiCache Multi-AZ replication groups are not supported on:------ Redis versions earlier than 2.8.6. T1 and T2 cache node types.-rgAutomaticFailover :: Lens' ReplicationGroup (Maybe AutomaticFailoverStatus)-rgAutomaticFailover =- lens _rgAutomaticFailover (\s a -> s { _rgAutomaticFailover = a })---- | The description of the replication group.-rgDescription :: Lens' ReplicationGroup (Maybe Text)-rgDescription = lens _rgDescription (\s a -> s { _rgDescription = a })---- | The names of all the cache clusters that are part of this replication group.-rgMemberClusters :: Lens' ReplicationGroup [Text]-rgMemberClusters = lens _rgMemberClusters (\s a -> s { _rgMemberClusters = a }) . _List---- | A single element list with information about the nodes in the replication--- group.-rgNodeGroups :: Lens' ReplicationGroup [NodeGroup]-rgNodeGroups = lens _rgNodeGroups (\s a -> s { _rgNodeGroups = a }) . _List---- | A group of settings to be applied to the replication group, either--- immediately or during the next maintenance window.-rgPendingModifiedValues :: Lens' ReplicationGroup (Maybe ReplicationGroupPendingModifiedValues)-rgPendingModifiedValues =- lens _rgPendingModifiedValues (\s a -> s { _rgPendingModifiedValues = a })---- | The identifier for the replication group.-rgReplicationGroupId :: Lens' ReplicationGroup (Maybe Text)-rgReplicationGroupId =- lens _rgReplicationGroupId (\s a -> s { _rgReplicationGroupId = a })---- | The cache cluster ID that is used as the daily snapshot source for the--- replication group.-rgSnapshottingClusterId :: Lens' ReplicationGroup (Maybe Text)-rgSnapshottingClusterId =- lens _rgSnapshottingClusterId (\s a -> s { _rgSnapshottingClusterId = a })---- | The current state of this replication group - /creating/, /available/, etc.-rgStatus :: Lens' ReplicationGroup (Maybe Text)-rgStatus = lens _rgStatus (\s a -> s { _rgStatus = a })--instance FromXML ReplicationGroup where- parseXML x = ReplicationGroup- <$> x .@? "AutomaticFailover"- <*> x .@? "Description"- <*> x .@? "MemberClusters" .!@ mempty- <*> x .@? "NodeGroups" .!@ mempty- <*> x .@? "PendingModifiedValues"- <*> x .@? "ReplicationGroupId"- <*> x .@? "SnapshottingClusterId"- <*> x .@? "Status"--instance ToQuery ReplicationGroup where- toQuery ReplicationGroup{..} = mconcat- [ "AutomaticFailover" =? _rgAutomaticFailover- , "Description" =? _rgDescription- , "MemberClusters" =? _rgMemberClusters- , "NodeGroups" =? _rgNodeGroups- , "PendingModifiedValues" =? _rgPendingModifiedValues- , "ReplicationGroupId" =? _rgReplicationGroupId- , "SnapshottingClusterId" =? _rgSnapshottingClusterId- , "Status" =? _rgStatus- ]--data RecurringCharge = RecurringCharge- { _rcRecurringChargeAmount :: Maybe Double- , _rcRecurringChargeFrequency :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'RecurringCharge' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcRecurringChargeAmount' @::@ 'Maybe' 'Double'------ * 'rcRecurringChargeFrequency' @::@ 'Maybe' 'Text'----recurringCharge :: RecurringCharge-recurringCharge = RecurringCharge- { _rcRecurringChargeAmount = Nothing- , _rcRecurringChargeFrequency = Nothing- }---- | The monetary amount of the recurring charge.-rcRecurringChargeAmount :: Lens' RecurringCharge (Maybe Double)-rcRecurringChargeAmount =- lens _rcRecurringChargeAmount (\s a -> s { _rcRecurringChargeAmount = a })---- | The frequency of the recurring charge.-rcRecurringChargeFrequency :: Lens' RecurringCharge (Maybe Text)-rcRecurringChargeFrequency =- lens _rcRecurringChargeFrequency- (\s a -> s { _rcRecurringChargeFrequency = a })--instance FromXML RecurringCharge where- parseXML x = RecurringCharge- <$> x .@? "RecurringChargeAmount"- <*> x .@? "RecurringChargeFrequency"--instance ToQuery RecurringCharge where- toQuery RecurringCharge{..} = mconcat- [ "RecurringChargeAmount" =? _rcRecurringChargeAmount- , "RecurringChargeFrequency" =? _rcRecurringChargeFrequency- ]--data ReservedCacheNodesOffering = ReservedCacheNodesOffering- { _rcnoCacheNodeType :: Maybe Text- , _rcnoDuration :: Maybe Int- , _rcnoFixedPrice :: Maybe Double- , _rcnoOfferingType :: Maybe Text- , _rcnoProductDescription :: Maybe Text- , _rcnoRecurringCharges :: List "member" RecurringCharge- , _rcnoReservedCacheNodesOfferingId :: Maybe Text- , _rcnoUsagePrice :: Maybe Double- } deriving (Eq, Read, Show)---- | 'ReservedCacheNodesOffering' constructor.------ The fields accessible through corresponding lenses are:------ * 'rcnoCacheNodeType' @::@ 'Maybe' 'Text'------ * 'rcnoDuration' @::@ 'Maybe' 'Int'------ * 'rcnoFixedPrice' @::@ 'Maybe' 'Double'------ * 'rcnoOfferingType' @::@ 'Maybe' 'Text'------ * 'rcnoProductDescription' @::@ 'Maybe' 'Text'------ * 'rcnoRecurringCharges' @::@ ['RecurringCharge']------ * 'rcnoReservedCacheNodesOfferingId' @::@ 'Maybe' 'Text'------ * 'rcnoUsagePrice' @::@ 'Maybe' 'Double'----reservedCacheNodesOffering :: ReservedCacheNodesOffering-reservedCacheNodesOffering = ReservedCacheNodesOffering- { _rcnoReservedCacheNodesOfferingId = Nothing- , _rcnoCacheNodeType = Nothing- , _rcnoDuration = Nothing- , _rcnoFixedPrice = Nothing- , _rcnoUsagePrice = Nothing- , _rcnoProductDescription = Nothing- , _rcnoOfferingType = Nothing- , _rcnoRecurringCharges = mempty- }---- | The cache node type for the reserved cache node.------ Valid node types are as follows:------ General purpose: Current generation: 'cache.t2.micro', 'cache.t2.small', 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large', 'cache.m3.xlarge', 'cache.m3.2xlarge' Previous--- generation: 'cache.t1.micro', 'cache.m1.small', 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge' Compute optimized: 'cache.c1.xlarge' Memory optimized Current generation: 'cache.r3.large', 'cache.r3.xlarge', 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge' Previous generation:--- 'cache.m2.xlarge', 'cache.m2.2xlarge', 'cache.m2.4xlarge' Notes:------ All t2 instances are created in an Amazon Virtual Private Cloud (VPC). Redis backup/restore is not supported for t2 instances.--- Redis Append-only files (AOF) functionality is not supported for t1 or t2--- instances. For a complete listing of cache node types and specifications,--- see <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details> and <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache NodeType-Specific Parameters for Memcached> or <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parametersfor Redis>.-rcnoCacheNodeType :: Lens' ReservedCacheNodesOffering (Maybe Text)-rcnoCacheNodeType =- lens _rcnoCacheNodeType (\s a -> s { _rcnoCacheNodeType = a })---- | The duration of the offering. in seconds.-rcnoDuration :: Lens' ReservedCacheNodesOffering (Maybe Int)-rcnoDuration = lens _rcnoDuration (\s a -> s { _rcnoDuration = a })---- | The fixed price charged for this offering.-rcnoFixedPrice :: Lens' ReservedCacheNodesOffering (Maybe Double)-rcnoFixedPrice = lens _rcnoFixedPrice (\s a -> s { _rcnoFixedPrice = a })---- | The offering type.-rcnoOfferingType :: Lens' ReservedCacheNodesOffering (Maybe Text)-rcnoOfferingType = lens _rcnoOfferingType (\s a -> s { _rcnoOfferingType = a })---- | The cache engine used by the offering.-rcnoProductDescription :: Lens' ReservedCacheNodesOffering (Maybe Text)-rcnoProductDescription =- lens _rcnoProductDescription (\s a -> s { _rcnoProductDescription = a })---- | The recurring price charged to run this reserved cache node.-rcnoRecurringCharges :: Lens' ReservedCacheNodesOffering [RecurringCharge]-rcnoRecurringCharges =- lens _rcnoRecurringCharges (\s a -> s { _rcnoRecurringCharges = a })- . _List---- | A unique identifier for the reserved cache node offering.-rcnoReservedCacheNodesOfferingId :: Lens' ReservedCacheNodesOffering (Maybe Text)-rcnoReservedCacheNodesOfferingId =- lens _rcnoReservedCacheNodesOfferingId- (\s a -> s { _rcnoReservedCacheNodesOfferingId = a })---- | The hourly price charged for this offering.-rcnoUsagePrice :: Lens' ReservedCacheNodesOffering (Maybe Double)-rcnoUsagePrice = lens _rcnoUsagePrice (\s a -> s { _rcnoUsagePrice = a })--instance FromXML ReservedCacheNodesOffering where- parseXML x = ReservedCacheNodesOffering- <$> x .@? "CacheNodeType"- <*> x .@? "Duration"- <*> x .@? "FixedPrice"- <*> x .@? "OfferingType"- <*> x .@? "ProductDescription"- <*> x .@? "RecurringCharges" .!@ mempty- <*> x .@? "ReservedCacheNodesOfferingId"- <*> x .@? "UsagePrice"--instance ToQuery ReservedCacheNodesOffering where- toQuery ReservedCacheNodesOffering{..} = mconcat- [ "CacheNodeType" =? _rcnoCacheNodeType- , "Duration" =? _rcnoDuration- , "FixedPrice" =? _rcnoFixedPrice- , "OfferingType" =? _rcnoOfferingType- , "ProductDescription" =? _rcnoProductDescription- , "RecurringCharges" =? _rcnoRecurringCharges- , "ReservedCacheNodesOfferingId" =? _rcnoReservedCacheNodesOfferingId- , "UsagePrice" =? _rcnoUsagePrice- ]--newtype TagListMessage = TagListMessage- { _tlmTagList :: List "member" Tag- } deriving (Eq, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList TagListMessage where- type Item TagListMessage = Tag-- fromList = TagListMessage . GHC.Exts.fromList- toList = GHC.Exts.toList . _tlmTagList---- | 'TagListMessage' constructor.------ The fields accessible through corresponding lenses are:------ * 'tlmTagList' @::@ ['Tag']----tagListMessage :: TagListMessage-tagListMessage = TagListMessage- { _tlmTagList = mempty- }---- | A list of cost allocation tags as key-value pairs.-tlmTagList :: Lens' TagListMessage [Tag]-tlmTagList = lens _tlmTagList (\s a -> s { _tlmTagList = a }) . _List--instance FromXML TagListMessage where- parseXML x = TagListMessage- <$> x .@? "TagList" .!@ mempty--instance ToQuery TagListMessage where- toQuery TagListMessage{..} = mconcat- [ "TagList" =? _tlmTagList- ]--data Endpoint = Endpoint- { _eAddress :: Maybe Text- , _ePort :: Maybe Int- } deriving (Eq, Ord, Read, Show)---- | 'Endpoint' constructor.------ The fields accessible through corresponding lenses are:------ * 'eAddress' @::@ 'Maybe' 'Text'------ * 'ePort' @::@ 'Maybe' 'Int'----endpoint :: Endpoint-endpoint = Endpoint- { _eAddress = Nothing- , _ePort = Nothing- }---- | The DNS hostname of the cache node.-eAddress :: Lens' Endpoint (Maybe Text)-eAddress = lens _eAddress (\s a -> s { _eAddress = a })---- | The port number that the cache engine is listening on.-ePort :: Lens' Endpoint (Maybe Int)-ePort = lens _ePort (\s a -> s { _ePort = a })--instance FromXML Endpoint where- parseXML x = Endpoint- <$> x .@? "Address"- <*> x .@? "Port"--instance ToQuery Endpoint where- toQuery Endpoint{..} = mconcat- [ "Address" =? _eAddress- , "Port" =? _ePort- ]--data PendingModifiedValues = PendingModifiedValues- { _pmvCacheNodeIdsToRemove :: List "member" Text- , _pmvEngineVersion :: Maybe Text- , _pmvNumCacheNodes :: Maybe Int- } deriving (Eq, Ord, Read, Show)---- | 'PendingModifiedValues' constructor.------ The fields accessible through corresponding lenses are:------ * 'pmvCacheNodeIdsToRemove' @::@ ['Text']------ * 'pmvEngineVersion' @::@ 'Maybe' 'Text'------ * 'pmvNumCacheNodes' @::@ 'Maybe' 'Int'----pendingModifiedValues :: PendingModifiedValues-pendingModifiedValues = PendingModifiedValues- { _pmvNumCacheNodes = Nothing- , _pmvCacheNodeIdsToRemove = mempty- , _pmvEngineVersion = Nothing- }---- | A list of cache node IDs that are being removed (or will be removed) from the--- cache cluster. A node ID is a numeric identifier (0001, 0002, etc.).-pmvCacheNodeIdsToRemove :: Lens' PendingModifiedValues [Text]-pmvCacheNodeIdsToRemove =- lens _pmvCacheNodeIdsToRemove (\s a -> s { _pmvCacheNodeIdsToRemove = a })- . _List---- | The new cache engine version that the cache cluster will run.-pmvEngineVersion :: Lens' PendingModifiedValues (Maybe Text)-pmvEngineVersion = lens _pmvEngineVersion (\s a -> s { _pmvEngineVersion = a })---- | The new number of cache nodes for the cache cluster.------ For clusters running Redis, this value must be 1. For clusters running--- Memcached, this value must be between 1 and 20.-pmvNumCacheNodes :: Lens' PendingModifiedValues (Maybe Int)-pmvNumCacheNodes = lens _pmvNumCacheNodes (\s a -> s { _pmvNumCacheNodes = a })--instance FromXML PendingModifiedValues where- parseXML x = PendingModifiedValues- <$> x .@? "CacheNodeIdsToRemove" .!@ mempty- <*> x .@? "EngineVersion"- <*> x .@? "NumCacheNodes"--instance ToQuery PendingModifiedValues where- toQuery PendingModifiedValues{..} = mconcat- [ "CacheNodeIdsToRemove" =? _pmvCacheNodeIdsToRemove- , "EngineVersion" =? _pmvEngineVersion- , "NumCacheNodes" =? _pmvNumCacheNodes- ]--newtype CacheParameterGroupNameMessage = CacheParameterGroupNameMessage- { _cpgnmCacheParameterGroupName :: Maybe Text- } deriving (Eq, Ord, Read, Show, Monoid)---- | 'CacheParameterGroupNameMessage' constructor.------ The fields accessible through corresponding lenses are:------ * 'cpgnmCacheParameterGroupName' @::@ 'Maybe' 'Text'----cacheParameterGroupNameMessage :: CacheParameterGroupNameMessage-cacheParameterGroupNameMessage = CacheParameterGroupNameMessage- { _cpgnmCacheParameterGroupName = Nothing- }---- | The name of the cache parameter group.-cpgnmCacheParameterGroupName :: Lens' CacheParameterGroupNameMessage (Maybe Text)-cpgnmCacheParameterGroupName =- lens _cpgnmCacheParameterGroupName- (\s a -> s { _cpgnmCacheParameterGroupName = a })--instance FromXML CacheParameterGroupNameMessage where- parseXML x = CacheParameterGroupNameMessage- <$> x .@? "CacheParameterGroupName"--instance ToQuery CacheParameterGroupNameMessage where- toQuery CacheParameterGroupNameMessage{..} = mconcat- [ "CacheParameterGroupName" =? _cpgnmCacheParameterGroupName- ]--data Parameter = Parameter- { _pAllowedValues :: Maybe Text- , _pDataType :: Maybe Text- , _pDescription :: Maybe Text- , _pIsModifiable :: Maybe Bool- , _pMinimumEngineVersion :: Maybe Text- , _pParameterName :: Maybe Text- , _pParameterValue :: Maybe Text- , _pSource :: Maybe Text- } deriving (Eq, Ord, Read, Show)---- | 'Parameter' constructor.------ The fields accessible through corresponding lenses are:------ * 'pAllowedValues' @::@ 'Maybe' 'Text'------ * 'pDataType' @::@ 'Maybe' 'Text'------ * 'pDescription' @::@ 'Maybe' 'Text'------ * 'pIsModifiable' @::@ 'Maybe' 'Bool'------ * 'pMinimumEngineVersion' @::@ 'Maybe' 'Text'------ * 'pParameterName' @::@ 'Maybe' 'Text'------ * 'pParameterValue' @::@ 'Maybe' 'Text'------ * 'pSource' @::@ 'Maybe' 'Text'----parameter :: Parameter-parameter = Parameter- { _pParameterName = Nothing- , _pParameterValue = Nothing- , _pDescription = Nothing- , _pSource = Nothing- , _pDataType = Nothing- , _pAllowedValues = Nothing- , _pIsModifiable = Nothing- , _pMinimumEngineVersion = Nothing- }---- | The valid range of values for the parameter.-pAllowedValues :: Lens' Parameter (Maybe Text)-pAllowedValues = lens _pAllowedValues (\s a -> s { _pAllowedValues = a })---- | The valid data type for the parameter.-pDataType :: Lens' Parameter (Maybe Text)-pDataType = lens _pDataType (\s a -> s { _pDataType = a })---- | A description of the parameter.-pDescription :: Lens' Parameter (Maybe Text)-pDescription = lens _pDescription (\s a -> s { _pDescription = a })---- | Indicates whether ('true') or not ('false') the parameter can be modified. Some--- parameters have security or operational implications that prevent them from--- being changed.-pIsModifiable :: Lens' Parameter (Maybe Bool)-pIsModifiable = lens _pIsModifiable (\s a -> s { _pIsModifiable = a })---- | The earliest cache engine version to which the parameter can apply.-pMinimumEngineVersion :: Lens' Parameter (Maybe Text)-pMinimumEngineVersion =- lens _pMinimumEngineVersion (\s a -> s { _pMinimumEngineVersion = a })---- | The name of the parameter.-pParameterName :: Lens' Parameter (Maybe Text)-pParameterName = lens _pParameterName (\s a -> s { _pParameterName = a })---- | The value of the parameter.-pParameterValue :: Lens' Parameter (Maybe Text)-pParameterValue = lens _pParameterValue (\s a -> s { _pParameterValue = a })---- | The source of the parameter.-pSource :: Lens' Parameter (Maybe Text)-pSource = lens _pSource (\s a -> s { _pSource = a })--instance FromXML Parameter where- parseXML x = Parameter- <$> x .@? "AllowedValues"- <*> x .@? "DataType"- <*> x .@? "Description"- <*> x .@? "IsModifiable"- <*> x .@? "MinimumEngineVersion"- <*> x .@? "ParameterName"- <*> x .@? "ParameterValue"- <*> x .@? "Source"--instance ToQuery Parameter where- toQuery Parameter{..} = mconcat- [ "AllowedValues" =? _pAllowedValues- , "DataType" =? _pDataType- , "Description" =? _pDescription- , "IsModifiable" =? _pIsModifiable- , "MinimumEngineVersion" =? _pMinimumEngineVersion- , "ParameterName" =? _pParameterName- , "ParameterValue" =? _pParameterValue- , "Source" =? _pSource- ]+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ElastiCache.Types+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ElastiCache.Types+ (+ -- * Service+ ElastiCache++ -- * Errors+ , _CacheSubnetGroupAlreadyExistsFault+ , _CacheSubnetGroupInUse+ , _CacheSecurityGroupNotFoundFault+ , _ReservedCacheNodeAlreadyExistsFault+ , _AuthorizationAlreadyExistsFault+ , _ReservedCacheNodeQuotaExceededFault+ , _CacheSubnetGroupQuotaExceededFault+ , _ReplicationGroupNotFoundFault+ , _ReservedCacheNodesOfferingNotFoundFault+ , _TagQuotaPerResourceExceeded+ , _InvalidSubnet+ , _SnapshotNotFoundFault+ , _InsufficientCacheClusterCapacityFault+ , _InvalidSnapshotStateFault+ , _SnapshotAlreadyExistsFault+ , _TagNotFoundFault+ , _SnapshotQuotaExceededFault+ , _CacheParameterGroupAlreadyExistsFault+ , _NodeQuotaForClusterExceededFault+ , _SnapshotFeatureNotSupportedFault+ , _CacheSubnetGroupNotFoundFault+ , _ReservedCacheNodeNotFoundFault+ , _InvalidParameterValueException+ , _InvalidVPCNetworkStateFault+ , _CacheClusterNotFoundFault+ , _InvalidReplicationGroupStateFault+ , _ReplicationGroupAlreadyExistsFault+ , _SubnetInUse+ , _CacheClusterAlreadyExistsFault+ , _ClusterQuotaForCustomerExceededFault+ , _AuthorizationNotFoundFault+ , _CacheSecurityGroupQuotaExceededFault+ , _InvalidCacheClusterStateFault+ , _CacheParameterGroupQuotaExceededFault+ , _NodeQuotaForCustomerExceededFault+ , _CacheSubnetQuotaExceededFault+ , _CacheParameterGroupNotFoundFault+ , _InvalidParameterCombinationException+ , _InvalidARNFault+ , _InvalidCacheParameterGroupStateFault+ , _CacheSecurityGroupAlreadyExistsFault+ , _InvalidCacheSecurityGroupStateFault++ -- * AZMode+ , AZMode (..)++ -- * AutomaticFailoverStatus+ , AutomaticFailoverStatus (..)++ -- * PendingAutomaticFailoverStatus+ , PendingAutomaticFailoverStatus (..)++ -- * SourceType+ , SourceType (..)++ -- * AvailabilityZone+ , AvailabilityZone+ , availabilityZone+ , azName++ -- * CacheCluster+ , CacheCluster+ , cacheCluster+ , ccCacheNodeType+ , ccEngineVersion+ , ccCacheNodes+ , ccCacheClusterCreateTime+ , ccAutoMinorVersionUpgrade+ , ccSecurityGroups+ , ccNotificationConfiguration+ , ccSnapshotWindow+ , ccCacheClusterId+ , ccConfigurationEndpoint+ , ccEngine+ , ccCacheSecurityGroups+ , ccClientDownloadLandingPage+ , ccPreferredMaintenanceWindow+ , ccCacheSubnetGroupName+ , ccCacheClusterStatus+ , ccPreferredAvailabilityZone+ , ccCacheParameterGroup+ , ccSnapshotRetentionLimit+ , ccReplicationGroupId+ , ccPendingModifiedValues+ , ccNumCacheNodes++ -- * CacheEngineVersion+ , CacheEngineVersion+ , cacheEngineVersion+ , cevCacheEngineDescription+ , cevCacheParameterGroupFamily+ , cevEngineVersion+ , cevCacheEngineVersionDescription+ , cevEngine++ -- * CacheNode+ , CacheNode+ , cacheNode+ , cnSourceCacheNodeId+ , cnParameterGroupStatus+ , cnCacheNodeCreateTime+ , cnCustomerAvailabilityZone+ , cnCacheNodeId+ , cnCacheNodeStatus+ , cnEndpoint++ -- * CacheNodeTypeSpecificParameter+ , CacheNodeTypeSpecificParameter+ , cacheNodeTypeSpecificParameter+ , cntspCacheNodeTypeSpecificValues+ , cntspMinimumEngineVersion+ , cntspSource+ , cntspIsModifiable+ , cntspAllowedValues+ , cntspDataType+ , cntspParameterName+ , cntspDescription++ -- * CacheNodeTypeSpecificValue+ , CacheNodeTypeSpecificValue+ , cacheNodeTypeSpecificValue+ , cntsvCacheNodeType+ , cntsvValue++ -- * CacheParameterGroup+ , CacheParameterGroup+ , cacheParameterGroup+ , cpgCacheParameterGroupFamily+ , cpgCacheParameterGroupName+ , cpgDescription++ -- * CacheParameterGroupNameMessage+ , CacheParameterGroupNameMessage+ , cacheParameterGroupNameMessage+ , cpgnmCacheParameterGroupName++ -- * CacheParameterGroupStatus+ , CacheParameterGroupStatus+ , cacheParameterGroupStatus+ , cpgsCacheParameterGroupName+ , cpgsCacheNodeIdsToReboot+ , cpgsParameterApplyStatus++ -- * CacheSecurityGroup+ , CacheSecurityGroup+ , cacheSecurityGroup+ , csgCacheSecurityGroupName+ , csgOwnerId+ , csgEC2SecurityGroups+ , csgDescription++ -- * CacheSecurityGroupMembership+ , CacheSecurityGroupMembership+ , cacheSecurityGroupMembership+ , csgmStatus+ , csgmCacheSecurityGroupName++ -- * CacheSubnetGroup+ , CacheSubnetGroup+ , cacheSubnetGroup+ , csgVPCId+ , csgSubnets+ , csgCacheSubnetGroupName+ , csgCacheSubnetGroupDescription++ -- * EC2SecurityGroup+ , EC2SecurityGroup+ , ec2SecurityGroup+ , esgStatus+ , esgEC2SecurityGroupOwnerId+ , esgEC2SecurityGroupName++ -- * Endpoint+ , Endpoint+ , endpoint+ , eAddress+ , ePort++ -- * EngineDefaults+ , EngineDefaults+ , engineDefaults+ , edCacheParameterGroupFamily+ , edCacheNodeTypeSpecificParameters+ , edParameters+ , edMarker++ -- * Event+ , Event+ , event+ , eSourceType+ , eSourceIdentifier+ , eDate+ , eMessage++ -- * NodeGroup+ , NodeGroup+ , nodeGroup+ , ngStatus+ , ngPrimaryEndpoint+ , ngNodeGroupMembers+ , ngNodeGroupId++ -- * NodeGroupMember+ , NodeGroupMember+ , nodeGroupMember+ , ngmCacheClusterId+ , ngmCacheNodeId+ , ngmPreferredAvailabilityZone+ , ngmCurrentRole+ , ngmReadEndpoint++ -- * NodeSnapshot+ , NodeSnapshot+ , nodeSnapshot+ , nsCacheNodeCreateTime+ , nsCacheNodeId+ , nsSnapshotCreateTime+ , nsCacheSize++ -- * NotificationConfiguration+ , NotificationConfiguration+ , notificationConfiguration+ , ncTopicStatus+ , ncTopicARN++ -- * Parameter+ , Parameter+ , parameter+ , pParameterValue+ , pMinimumEngineVersion+ , pSource+ , pIsModifiable+ , pAllowedValues+ , pDataType+ , pParameterName+ , pDescription++ -- * ParameterNameValue+ , ParameterNameValue+ , parameterNameValue+ , pnvParameterValue+ , pnvParameterName++ -- * PendingModifiedValues+ , PendingModifiedValues+ , pendingModifiedValues+ , pmvEngineVersion+ , pmvCacheNodeIdsToRemove+ , pmvNumCacheNodes++ -- * RecurringCharge+ , RecurringCharge+ , recurringCharge+ , rcRecurringChargeFrequency+ , rcRecurringChargeAmount++ -- * ReplicationGroup+ , ReplicationGroup+ , replicationGroup+ , rgNodeGroups+ , rgStatus+ , rgSnapshottingClusterId+ , rgMemberClusters+ , rgReplicationGroupId+ , rgPendingModifiedValues+ , rgDescription+ , rgAutomaticFailover++ -- * ReplicationGroupPendingModifiedValues+ , ReplicationGroupPendingModifiedValues+ , replicationGroupPendingModifiedValues+ , rgpmvPrimaryClusterId+ , rgpmvAutomaticFailoverStatus++ -- * ReservedCacheNode+ , ReservedCacheNode+ , reservedCacheNode+ , rcnCacheNodeType+ , rcnState+ , rcnProductDescription+ , rcnStartTime+ , rcnCacheNodeCount+ , rcnReservedCacheNodeId+ , rcnOfferingType+ , rcnUsagePrice+ , rcnRecurringCharges+ , rcnFixedPrice+ , rcnDuration+ , rcnReservedCacheNodesOfferingId++ -- * ReservedCacheNodesOffering+ , ReservedCacheNodesOffering+ , reservedCacheNodesOffering+ , rcnoCacheNodeType+ , rcnoProductDescription+ , rcnoOfferingType+ , rcnoUsagePrice+ , rcnoRecurringCharges+ , rcnoFixedPrice+ , rcnoDuration+ , rcnoReservedCacheNodesOfferingId++ -- * SecurityGroupMembership+ , SecurityGroupMembership+ , securityGroupMembership+ , sgmStatus+ , sgmSecurityGroupId++ -- * Snapshot+ , Snapshot+ , snapshot+ , sCacheNodeType+ , sEngineVersion+ , sCacheClusterCreateTime+ , sAutoMinorVersionUpgrade+ , sCacheParameterGroupName+ , sSnapshotStatus+ , sSnapshotWindow+ , sVPCId+ , sCacheClusterId+ , sEngine+ , sPreferredMaintenanceWindow+ , sTopicARN+ , sCacheSubnetGroupName+ , sNodeSnapshots+ , sPreferredAvailabilityZone+ , sSnapshotRetentionLimit+ , sSnapshotName+ , sSnapshotSource+ , sNumCacheNodes+ , sPort++ -- * Subnet+ , Subnet+ , subnet+ , sSubnetIdentifier+ , sSubnetAvailabilityZone++ -- * Tag+ , Tag+ , tag+ , tagValue+ , tagKey++ -- * TagListMessage+ , TagListMessage+ , tagListMessage+ , tlmTagList+ ) where++import Network.AWS.ElastiCache.Types.Product+import Network.AWS.ElastiCache.Types.Sum+import Network.AWS.Prelude+import Network.AWS.Sign.V4++-- | Version @2015-02-02@ of the Amazon ElastiCache SDK.+data ElastiCache++instance AWSService ElastiCache where+ type Sg ElastiCache = V4+ service = const svc+ where+ svc =+ Service+ { _svcAbbrev = "ElastiCache"+ , _svcPrefix = "elasticache"+ , _svcVersion = "2015-02-02"+ , _svcEndpoint = defaultEndpoint svc+ , _svcTimeout = Just 70+ , _svcStatus = statusSuccess+ , _svcError = parseXMLError+ , _svcRetry = retry+ }+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2+ , _retryAttempts = 5+ , _retryCheck = check+ }+ check e+ | has (hasCode "ThrottlingException" . hasStatus 400) e =+ Just "throttling_exception"+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+ | has (hasStatus 503) e = Just "service_unavailable"+ | has (hasStatus 500) e = Just "general_server_error"+ | has (hasStatus 509) e = Just "limit_exceeded"+ | otherwise = Nothing++-- | The requested cache subnet group name is already in use by an existing+-- cache subnet group.+_CacheSubnetGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSubnetGroupAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "CacheSubnetGroupAlreadyExists"++-- | The requested cache subnet group is currently in use.+_CacheSubnetGroupInUse :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSubnetGroupInUse =+ _ServiceError . hasStatus 400 . hasCode "CacheSubnetGroupInUse"++-- | The requested cache security group name does not refer to an existing+-- cache security group.+_CacheSecurityGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSecurityGroupNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "CacheSecurityGroupNotFound"++-- | You already have a reservation with the given identifier.+_ReservedCacheNodeAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReservedCacheNodeAlreadyExistsFault =+ _ServiceError . hasStatus 404 . hasCode "ReservedCacheNodeAlreadyExists"++-- | The specified Amazon EC2 security group is already authorized for the+-- specified cache security group.+_AuthorizationAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_AuthorizationAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "AuthorizationAlreadyExists"++-- | The request cannot be processed because it would exceed the user\'s+-- cache node quota.+_ReservedCacheNodeQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReservedCacheNodeQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "ReservedCacheNodeQuotaExceeded"++-- | The request cannot be processed because it would exceed the allowed+-- number of cache subnet groups.+_CacheSubnetGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSubnetGroupQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "CacheSubnetGroupQuotaExceeded"++-- | The specified replication group does not exist.+_ReplicationGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReplicationGroupNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "ReplicationGroupNotFoundFault"++-- | The requested cache node offering does not exist.+_ReservedCacheNodesOfferingNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReservedCacheNodesOfferingNotFoundFault =+ _ServiceError .+ hasStatus 404 . hasCode "ReservedCacheNodesOfferingNotFound"++-- | The request cannot be processed because it would cause the resource to+-- have more than the allowed number of tags. The maximum number of tags+-- permitted on a resource is 10.+_TagQuotaPerResourceExceeded :: AsError a => Getting (First ServiceError) a ServiceError+_TagQuotaPerResourceExceeded =+ _ServiceError . hasStatus 400 . hasCode "TagQuotaPerResourceExceeded"++-- | An invalid subnet identifier was specified.+_InvalidSubnet :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidSubnet = _ServiceError . hasStatus 400 . hasCode "InvalidSubnet"++-- | The requested snapshot name does not refer to an existing snapshot.+_SnapshotNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_SnapshotNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "SnapshotNotFoundFault"++-- | The requested cache node type is not available in the specified+-- Availability Zone.+_InsufficientCacheClusterCapacityFault :: AsError a => Getting (First ServiceError) a ServiceError+_InsufficientCacheClusterCapacityFault =+ _ServiceError . hasStatus 400 . hasCode "InsufficientCacheClusterCapacity"++-- | The current state of the snapshot does not allow the requested action to+-- occur.+_InvalidSnapshotStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidSnapshotStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidSnapshotState"++-- | You already have a snapshot with the given name.+_SnapshotAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_SnapshotAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "SnapshotAlreadyExistsFault"++-- | The requested tag was not found on this resource.+_TagNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_TagNotFoundFault = _ServiceError . hasStatus 404 . hasCode "TagNotFound"++-- | The request cannot be processed because it would exceed the maximum+-- number of snapshots.+_SnapshotQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_SnapshotQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "SnapshotQuotaExceededFault"++-- | A cache parameter group with the requested name already exists.+_CacheParameterGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheParameterGroupAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "CacheParameterGroupAlreadyExists"++-- | The request cannot be processed because it would exceed the allowed+-- number of cache nodes in a single cache cluster.+_NodeQuotaForClusterExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_NodeQuotaForClusterExceededFault =+ _ServiceError . hasStatus 400 . hasCode "NodeQuotaForClusterExceeded"++-- | You attempted one of the following actions:+--+-- - Creating a snapshot of a Redis cache cluster running on a /t1.micro/+-- cache node.+--+-- - Creating a snapshot of a cache cluster that is running Memcached+-- rather than Redis.+--+-- Neither of these are supported by ElastiCache.+_SnapshotFeatureNotSupportedFault :: AsError a => Getting (First ServiceError) a ServiceError+_SnapshotFeatureNotSupportedFault =+ _ServiceError . hasStatus 400 . hasCode "SnapshotFeatureNotSupportedFault"++-- | The requested cache subnet group name does not refer to an existing+-- cache subnet group.+_CacheSubnetGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSubnetGroupNotFoundFault =+ _ServiceError . hasStatus 400 . hasCode "CacheSubnetGroupNotFoundFault"++-- | The requested reserved cache node was not found.+_ReservedCacheNodeNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReservedCacheNodeNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "ReservedCacheNodeNotFound"++-- | The value for a parameter is invalid.+_InvalidParameterValueException :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidParameterValueException =+ _ServiceError . hasStatus 400 . hasCode "InvalidParameterValue"++-- | The VPC network is in an invalid state.+_InvalidVPCNetworkStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidVPCNetworkStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidVPCNetworkStateFault"++-- | The requested cache cluster ID does not refer to an existing cache+-- cluster.+_CacheClusterNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheClusterNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "CacheClusterNotFound"++-- | The requested replication group is not in the /available/ state.+_InvalidReplicationGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidReplicationGroupStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidReplicationGroupState"++-- | The specified replication group already exists.+_ReplicationGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_ReplicationGroupAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "ReplicationGroupAlreadyExists"++-- | The requested subnet is being used by another cache subnet group.+_SubnetInUse :: AsError a => Getting (First ServiceError) a ServiceError+_SubnetInUse = _ServiceError . hasStatus 400 . hasCode "SubnetInUse"++-- | You already have a cache cluster with the given identifier.+_CacheClusterAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheClusterAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "CacheClusterAlreadyExists"++-- | The request cannot be processed because it would exceed the allowed+-- number of cache clusters per customer.+_ClusterQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_ClusterQuotaForCustomerExceededFault =+ _ServiceError . hasStatus 400 . hasCode "ClusterQuotaForCustomerExceeded"++-- | The specified Amazon EC2 security group is not authorized for the+-- specified cache security group.+_AuthorizationNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_AuthorizationNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "AuthorizationNotFound"++-- | The request cannot be processed because it would exceed the allowed+-- number of cache security groups.+_CacheSecurityGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSecurityGroupQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "QuotaExceeded.CacheSecurityGroup"++-- | The requested cache cluster is not in the /available/ state.+_InvalidCacheClusterStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidCacheClusterStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidCacheClusterState"++-- | The request cannot be processed because it would exceed the maximum+-- number of cache security groups.+_CacheParameterGroupQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheParameterGroupQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "CacheParameterGroupQuotaExceeded"++-- | The request cannot be processed because it would exceed the allowed+-- number of cache nodes per customer.+_NodeQuotaForCustomerExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_NodeQuotaForCustomerExceededFault =+ _ServiceError . hasStatus 400 . hasCode "NodeQuotaForCustomerExceeded"++-- | The request cannot be processed because it would exceed the allowed+-- number of subnets in a cache subnet group.+_CacheSubnetQuotaExceededFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSubnetQuotaExceededFault =+ _ServiceError . hasStatus 400 . hasCode "CacheSubnetQuotaExceededFault"++-- | The requested cache parameter group name does not refer to an existing+-- cache parameter group.+_CacheParameterGroupNotFoundFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheParameterGroupNotFoundFault =+ _ServiceError . hasStatus 404 . hasCode "CacheParameterGroupNotFound"++-- | Two or more incompatible parameters were specified.+_InvalidParameterCombinationException :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidParameterCombinationException =+ _ServiceError . hasStatus 400 . hasCode "InvalidParameterCombination"++-- | The requested Amazon Resource Name (ARN) does not refer to an existing+-- resource.+_InvalidARNFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidARNFault = _ServiceError . hasStatus 400 . hasCode "InvalidARN"++-- | The current state of the cache parameter group does not allow the+-- requested action to occur.+_InvalidCacheParameterGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidCacheParameterGroupStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidCacheParameterGroupState"++-- | A cache security group with the specified name already exists.+_CacheSecurityGroupAlreadyExistsFault :: AsError a => Getting (First ServiceError) a ServiceError+_CacheSecurityGroupAlreadyExistsFault =+ _ServiceError . hasStatus 400 . hasCode "CacheSecurityGroupAlreadyExists"++-- | The current state of the cache security group does not allow deletion.+_InvalidCacheSecurityGroupStateFault :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidCacheSecurityGroupStateFault =+ _ServiceError . hasStatus 400 . hasCode "InvalidCacheSecurityGroupState"
+ gen/Network/AWS/ElastiCache/Types/Product.hs view
@@ -0,0 +1,2436 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ElastiCache.Types.Product+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ElastiCache.Types.Product where++import Network.AWS.ElastiCache.Types.Sum+import Network.AWS.Prelude++-- | Describes an Availability Zone in which the cache cluster is launched.+--+-- /See:/ 'availabilityZone' smart constructor.+newtype AvailabilityZone = AvailabilityZone'+ { _azName :: Maybe Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'AvailabilityZone' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'azName'+availabilityZone+ :: AvailabilityZone+availabilityZone =+ AvailabilityZone'+ { _azName = Nothing+ }++-- | The name of the Availability Zone.+azName :: Lens' AvailabilityZone (Maybe Text)+azName = lens _azName (\ s a -> s{_azName = a});++instance FromXML AvailabilityZone where+ parseXML x = AvailabilityZone' <$> (x .@? "Name")++-- | Contains all of the attributes of a specific cache cluster.+--+-- /See:/ 'cacheCluster' smart constructor.+data CacheCluster = CacheCluster'+ { _ccCacheNodeType :: !(Maybe Text)+ , _ccEngineVersion :: !(Maybe Text)+ , _ccCacheNodes :: !(Maybe [CacheNode])+ , _ccCacheClusterCreateTime :: !(Maybe ISO8601)+ , _ccAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _ccSecurityGroups :: !(Maybe [SecurityGroupMembership])+ , _ccNotificationConfiguration :: !(Maybe NotificationConfiguration)+ , _ccSnapshotWindow :: !(Maybe Text)+ , _ccCacheClusterId :: !(Maybe Text)+ , _ccConfigurationEndpoint :: !(Maybe Endpoint)+ , _ccEngine :: !(Maybe Text)+ , _ccCacheSecurityGroups :: !(Maybe [CacheSecurityGroupMembership])+ , _ccClientDownloadLandingPage :: !(Maybe Text)+ , _ccPreferredMaintenanceWindow :: !(Maybe Text)+ , _ccCacheSubnetGroupName :: !(Maybe Text)+ , _ccCacheClusterStatus :: !(Maybe Text)+ , _ccPreferredAvailabilityZone :: !(Maybe Text)+ , _ccCacheParameterGroup :: !(Maybe CacheParameterGroupStatus)+ , _ccSnapshotRetentionLimit :: !(Maybe Int)+ , _ccReplicationGroupId :: !(Maybe Text)+ , _ccPendingModifiedValues :: !(Maybe PendingModifiedValues)+ , _ccNumCacheNodes :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheCluster' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccCacheNodeType'+--+-- * 'ccEngineVersion'+--+-- * 'ccCacheNodes'+--+-- * 'ccCacheClusterCreateTime'+--+-- * 'ccAutoMinorVersionUpgrade'+--+-- * 'ccSecurityGroups'+--+-- * 'ccNotificationConfiguration'+--+-- * 'ccSnapshotWindow'+--+-- * 'ccCacheClusterId'+--+-- * 'ccConfigurationEndpoint'+--+-- * 'ccEngine'+--+-- * 'ccCacheSecurityGroups'+--+-- * 'ccClientDownloadLandingPage'+--+-- * 'ccPreferredMaintenanceWindow'+--+-- * 'ccCacheSubnetGroupName'+--+-- * 'ccCacheClusterStatus'+--+-- * 'ccPreferredAvailabilityZone'+--+-- * 'ccCacheParameterGroup'+--+-- * 'ccSnapshotRetentionLimit'+--+-- * 'ccReplicationGroupId'+--+-- * 'ccPendingModifiedValues'+--+-- * 'ccNumCacheNodes'+cacheCluster+ :: CacheCluster+cacheCluster =+ CacheCluster'+ { _ccCacheNodeType = Nothing+ , _ccEngineVersion = Nothing+ , _ccCacheNodes = Nothing+ , _ccCacheClusterCreateTime = Nothing+ , _ccAutoMinorVersionUpgrade = Nothing+ , _ccSecurityGroups = Nothing+ , _ccNotificationConfiguration = Nothing+ , _ccSnapshotWindow = Nothing+ , _ccCacheClusterId = Nothing+ , _ccConfigurationEndpoint = Nothing+ , _ccEngine = Nothing+ , _ccCacheSecurityGroups = Nothing+ , _ccClientDownloadLandingPage = Nothing+ , _ccPreferredMaintenanceWindow = Nothing+ , _ccCacheSubnetGroupName = Nothing+ , _ccCacheClusterStatus = Nothing+ , _ccPreferredAvailabilityZone = Nothing+ , _ccCacheParameterGroup = Nothing+ , _ccSnapshotRetentionLimit = Nothing+ , _ccReplicationGroupId = Nothing+ , _ccPendingModifiedValues = Nothing+ , _ccNumCacheNodes = Nothing+ }++-- | The name of the compute and memory capacity node type for the cache+-- cluster.+--+-- Valid node types are as follows:+--+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge'+--+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+ccCacheNodeType :: Lens' CacheCluster (Maybe Text)+ccCacheNodeType = lens _ccCacheNodeType (\ s a -> s{_ccCacheNodeType = a});++-- | The version of the cache engine version that is used in this cache+-- cluster.+ccEngineVersion :: Lens' CacheCluster (Maybe Text)+ccEngineVersion = lens _ccEngineVersion (\ s a -> s{_ccEngineVersion = a});++-- | A list of cache nodes that are members of the cache cluster.+ccCacheNodes :: Lens' CacheCluster [CacheNode]+ccCacheNodes = lens _ccCacheNodes (\ s a -> s{_ccCacheNodes = a}) . _Default . _Coerce;++-- | The date and time when the cache cluster was created.+ccCacheClusterCreateTime :: Lens' CacheCluster (Maybe UTCTime)+ccCacheClusterCreateTime = lens _ccCacheClusterCreateTime (\ s a -> s{_ccCacheClusterCreateTime = a}) . mapping _Time;++-- | This parameter is currently disabled.+ccAutoMinorVersionUpgrade :: Lens' CacheCluster (Maybe Bool)+ccAutoMinorVersionUpgrade = lens _ccAutoMinorVersionUpgrade (\ s a -> s{_ccAutoMinorVersionUpgrade = a});++-- | A list of VPC Security Groups associated with the cache cluster.+ccSecurityGroups :: Lens' CacheCluster [SecurityGroupMembership]+ccSecurityGroups = lens _ccSecurityGroups (\ s a -> s{_ccSecurityGroups = a}) . _Default . _Coerce;++-- | Undocumented member.+ccNotificationConfiguration :: Lens' CacheCluster (Maybe NotificationConfiguration)+ccNotificationConfiguration = lens _ccNotificationConfiguration (\ s a -> s{_ccNotificationConfiguration = a});++-- | The daily time range (in UTC) during which ElastiCache will begin taking+-- a daily snapshot of your cache cluster.+--+-- Example: '05:00-09:00'+ccSnapshotWindow :: Lens' CacheCluster (Maybe Text)+ccSnapshotWindow = lens _ccSnapshotWindow (\ s a -> s{_ccSnapshotWindow = a});++-- | The user-supplied identifier of the cache cluster. This identifier is a+-- unique key that identifies a cache cluster.+ccCacheClusterId :: Lens' CacheCluster (Maybe Text)+ccCacheClusterId = lens _ccCacheClusterId (\ s a -> s{_ccCacheClusterId = a});++-- | Undocumented member.+ccConfigurationEndpoint :: Lens' CacheCluster (Maybe Endpoint)+ccConfigurationEndpoint = lens _ccConfigurationEndpoint (\ s a -> s{_ccConfigurationEndpoint = a});++-- | The name of the cache engine (/memcached/ or /redis/) to be used for+-- this cache cluster.+ccEngine :: Lens' CacheCluster (Maybe Text)+ccEngine = lens _ccEngine (\ s a -> s{_ccEngine = a});++-- | A list of cache security group elements, composed of name and status+-- sub-elements.+ccCacheSecurityGroups :: Lens' CacheCluster [CacheSecurityGroupMembership]+ccCacheSecurityGroups = lens _ccCacheSecurityGroups (\ s a -> s{_ccCacheSecurityGroups = a}) . _Default . _Coerce;++-- | The URL of the web page where you can download the latest ElastiCache+-- client library.+ccClientDownloadLandingPage :: Lens' CacheCluster (Maybe Text)+ccClientDownloadLandingPage = lens _ccClientDownloadLandingPage (\ s a -> s{_ccClientDownloadLandingPage = a});++-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are:+--+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat'+--+-- Example: 'sun:05:00-sun:09:00'+ccPreferredMaintenanceWindow :: Lens' CacheCluster (Maybe Text)+ccPreferredMaintenanceWindow = lens _ccPreferredMaintenanceWindow (\ s a -> s{_ccPreferredMaintenanceWindow = a});++-- | The name of the cache subnet group associated with the cache cluster.+ccCacheSubnetGroupName :: Lens' CacheCluster (Maybe Text)+ccCacheSubnetGroupName = lens _ccCacheSubnetGroupName (\ s a -> s{_ccCacheSubnetGroupName = a});++-- | The current state of this cache cluster, one of the following values:+-- /available/, /creating/, /deleted/, /deleting/, /incompatible-network/,+-- /modifying/, /rebooting cache cluster nodes/, /restore-failed/, or+-- /snapshotting/.+ccCacheClusterStatus :: Lens' CacheCluster (Maybe Text)+ccCacheClusterStatus = lens _ccCacheClusterStatus (\ s a -> s{_ccCacheClusterStatus = a});++-- | The name of the Availability Zone in which the cache cluster is located+-- or \"Multiple\" if the cache nodes are located in different Availability+-- Zones.+ccPreferredAvailabilityZone :: Lens' CacheCluster (Maybe Text)+ccPreferredAvailabilityZone = lens _ccPreferredAvailabilityZone (\ s a -> s{_ccPreferredAvailabilityZone = a});++-- | Undocumented member.+ccCacheParameterGroup :: Lens' CacheCluster (Maybe CacheParameterGroupStatus)+ccCacheParameterGroup = lens _ccCacheParameterGroup (\ s a -> s{_ccCacheParameterGroup = a});++-- | The number of days for which ElastiCache will retain automatic cache+-- cluster snapshots before deleting them. For example, if you set+-- /SnapshotRetentionLimit/ to 5, then a snapshot that was taken today will+-- be retained for 5 days before being deleted.+--+-- __Important__+-- If the value of SnapshotRetentionLimit is set to zero (0), backups are+-- turned off.+ccSnapshotRetentionLimit :: Lens' CacheCluster (Maybe Int)+ccSnapshotRetentionLimit = lens _ccSnapshotRetentionLimit (\ s a -> s{_ccSnapshotRetentionLimit = a});++-- | The replication group to which this cache cluster belongs. If this field+-- is empty, the cache cluster is not associated with any replication+-- group.+ccReplicationGroupId :: Lens' CacheCluster (Maybe Text)+ccReplicationGroupId = lens _ccReplicationGroupId (\ s a -> s{_ccReplicationGroupId = a});++-- | Undocumented member.+ccPendingModifiedValues :: Lens' CacheCluster (Maybe PendingModifiedValues)+ccPendingModifiedValues = lens _ccPendingModifiedValues (\ s a -> s{_ccPendingModifiedValues = a});++-- | The number of cache nodes in the cache cluster.+--+-- For clusters running Redis, this value must be 1. For clusters running+-- Memcached, this value must be between 1 and 20.+ccNumCacheNodes :: Lens' CacheCluster (Maybe Int)+ccNumCacheNodes = lens _ccNumCacheNodes (\ s a -> s{_ccNumCacheNodes = a});++instance FromXML CacheCluster where+ parseXML x+ = CacheCluster' <$>+ (x .@? "CacheNodeType") <*> (x .@? "EngineVersion")+ <*>+ (x .@? "CacheNodes" .!@ mempty >>=+ may (parseXMLList "CacheNode"))+ <*> (x .@? "CacheClusterCreateTime")+ <*> (x .@? "AutoMinorVersionUpgrade")+ <*>+ (x .@? "SecurityGroups" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@? "NotificationConfiguration")+ <*> (x .@? "SnapshotWindow")+ <*> (x .@? "CacheClusterId")+ <*> (x .@? "ConfigurationEndpoint")+ <*> (x .@? "Engine")+ <*>+ (x .@? "CacheSecurityGroups" .!@ mempty >>=+ may (parseXMLList "CacheSecurityGroup"))+ <*> (x .@? "ClientDownloadLandingPage")+ <*> (x .@? "PreferredMaintenanceWindow")+ <*> (x .@? "CacheSubnetGroupName")+ <*> (x .@? "CacheClusterStatus")+ <*> (x .@? "PreferredAvailabilityZone")+ <*> (x .@? "CacheParameterGroup")+ <*> (x .@? "SnapshotRetentionLimit")+ <*> (x .@? "ReplicationGroupId")+ <*> (x .@? "PendingModifiedValues")+ <*> (x .@? "NumCacheNodes")++-- | Provides all of the details about a particular cache engine version.+--+-- /See:/ 'cacheEngineVersion' smart constructor.+data CacheEngineVersion = CacheEngineVersion'+ { _cevCacheEngineDescription :: !(Maybe Text)+ , _cevCacheParameterGroupFamily :: !(Maybe Text)+ , _cevEngineVersion :: !(Maybe Text)+ , _cevCacheEngineVersionDescription :: !(Maybe Text)+ , _cevEngine :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheEngineVersion' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cevCacheEngineDescription'+--+-- * 'cevCacheParameterGroupFamily'+--+-- * 'cevEngineVersion'+--+-- * 'cevCacheEngineVersionDescription'+--+-- * 'cevEngine'+cacheEngineVersion+ :: CacheEngineVersion+cacheEngineVersion =+ CacheEngineVersion'+ { _cevCacheEngineDescription = Nothing+ , _cevCacheParameterGroupFamily = Nothing+ , _cevEngineVersion = Nothing+ , _cevCacheEngineVersionDescription = Nothing+ , _cevEngine = Nothing+ }++-- | The description of the cache engine.+cevCacheEngineDescription :: Lens' CacheEngineVersion (Maybe Text)+cevCacheEngineDescription = lens _cevCacheEngineDescription (\ s a -> s{_cevCacheEngineDescription = a});++-- | The name of the cache parameter group family associated with this cache+-- engine.+cevCacheParameterGroupFamily :: Lens' CacheEngineVersion (Maybe Text)+cevCacheParameterGroupFamily = lens _cevCacheParameterGroupFamily (\ s a -> s{_cevCacheParameterGroupFamily = a});++-- | The version number of the cache engine.+cevEngineVersion :: Lens' CacheEngineVersion (Maybe Text)+cevEngineVersion = lens _cevEngineVersion (\ s a -> s{_cevEngineVersion = a});++-- | The description of the cache engine version.+cevCacheEngineVersionDescription :: Lens' CacheEngineVersion (Maybe Text)+cevCacheEngineVersionDescription = lens _cevCacheEngineVersionDescription (\ s a -> s{_cevCacheEngineVersionDescription = a});++-- | The name of the cache engine.+cevEngine :: Lens' CacheEngineVersion (Maybe Text)+cevEngine = lens _cevEngine (\ s a -> s{_cevEngine = a});++instance FromXML CacheEngineVersion where+ parseXML x+ = CacheEngineVersion' <$>+ (x .@? "CacheEngineDescription") <*>+ (x .@? "CacheParameterGroupFamily")+ <*> (x .@? "EngineVersion")+ <*> (x .@? "CacheEngineVersionDescription")+ <*> (x .@? "Engine")++-- | Represents an individual cache node within a cache cluster. Each cache+-- node runs its own instance of the cluster\'s protocol-compliant caching+-- software - either Memcached or Redis.+--+-- Valid node types are as follows:+--+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge'+--+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+--+-- /See:/ 'cacheNode' smart constructor.+data CacheNode = CacheNode'+ { _cnSourceCacheNodeId :: !(Maybe Text)+ , _cnParameterGroupStatus :: !(Maybe Text)+ , _cnCacheNodeCreateTime :: !(Maybe ISO8601)+ , _cnCustomerAvailabilityZone :: !(Maybe Text)+ , _cnCacheNodeId :: !(Maybe Text)+ , _cnCacheNodeStatus :: !(Maybe Text)+ , _cnEndpoint :: !(Maybe Endpoint)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheNode' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cnSourceCacheNodeId'+--+-- * 'cnParameterGroupStatus'+--+-- * 'cnCacheNodeCreateTime'+--+-- * 'cnCustomerAvailabilityZone'+--+-- * 'cnCacheNodeId'+--+-- * 'cnCacheNodeStatus'+--+-- * 'cnEndpoint'+cacheNode+ :: CacheNode+cacheNode =+ CacheNode'+ { _cnSourceCacheNodeId = Nothing+ , _cnParameterGroupStatus = Nothing+ , _cnCacheNodeCreateTime = Nothing+ , _cnCustomerAvailabilityZone = Nothing+ , _cnCacheNodeId = Nothing+ , _cnCacheNodeStatus = Nothing+ , _cnEndpoint = Nothing+ }++-- | The ID of the primary node to which this read replica node is+-- synchronized. If this field is empty, then this node is not associated+-- with a primary cache cluster.+cnSourceCacheNodeId :: Lens' CacheNode (Maybe Text)+cnSourceCacheNodeId = lens _cnSourceCacheNodeId (\ s a -> s{_cnSourceCacheNodeId = a});++-- | The status of the parameter group applied to this cache node.+cnParameterGroupStatus :: Lens' CacheNode (Maybe Text)+cnParameterGroupStatus = lens _cnParameterGroupStatus (\ s a -> s{_cnParameterGroupStatus = a});++-- | The date and time when the cache node was created.+cnCacheNodeCreateTime :: Lens' CacheNode (Maybe UTCTime)+cnCacheNodeCreateTime = lens _cnCacheNodeCreateTime (\ s a -> s{_cnCacheNodeCreateTime = a}) . mapping _Time;++-- | The Availability Zone where this node was created and now resides.+cnCustomerAvailabilityZone :: Lens' CacheNode (Maybe Text)+cnCustomerAvailabilityZone = lens _cnCustomerAvailabilityZone (\ s a -> s{_cnCustomerAvailabilityZone = a});++-- | The cache node identifier. A node ID is a numeric identifier (0001,+-- 0002, etc.). The combination of cluster ID and node ID uniquely+-- identifies every cache node used in a customer\'s AWS account.+cnCacheNodeId :: Lens' CacheNode (Maybe Text)+cnCacheNodeId = lens _cnCacheNodeId (\ s a -> s{_cnCacheNodeId = a});++-- | The current state of this cache node.+cnCacheNodeStatus :: Lens' CacheNode (Maybe Text)+cnCacheNodeStatus = lens _cnCacheNodeStatus (\ s a -> s{_cnCacheNodeStatus = a});++-- | The hostname for connecting to this cache node.+cnEndpoint :: Lens' CacheNode (Maybe Endpoint)+cnEndpoint = lens _cnEndpoint (\ s a -> s{_cnEndpoint = a});++instance FromXML CacheNode where+ parseXML x+ = CacheNode' <$>+ (x .@? "SourceCacheNodeId") <*>+ (x .@? "ParameterGroupStatus")+ <*> (x .@? "CacheNodeCreateTime")+ <*> (x .@? "CustomerAvailabilityZone")+ <*> (x .@? "CacheNodeId")+ <*> (x .@? "CacheNodeStatus")+ <*> (x .@? "Endpoint")++-- | A parameter that has a different value for each cache node type it is+-- applied to. For example, in a Redis cache cluster, a /cache.m1.large/+-- cache node type would have a larger /maxmemory/ value than a+-- /cache.m1.small/ type.+--+-- /See:/ 'cacheNodeTypeSpecificParameter' smart constructor.+data CacheNodeTypeSpecificParameter = CacheNodeTypeSpecificParameter'+ { _cntspCacheNodeTypeSpecificValues :: !(Maybe [CacheNodeTypeSpecificValue])+ , _cntspMinimumEngineVersion :: !(Maybe Text)+ , _cntspSource :: !(Maybe Text)+ , _cntspIsModifiable :: !(Maybe Bool)+ , _cntspAllowedValues :: !(Maybe Text)+ , _cntspDataType :: !(Maybe Text)+ , _cntspParameterName :: !(Maybe Text)+ , _cntspDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheNodeTypeSpecificParameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cntspCacheNodeTypeSpecificValues'+--+-- * 'cntspMinimumEngineVersion'+--+-- * 'cntspSource'+--+-- * 'cntspIsModifiable'+--+-- * 'cntspAllowedValues'+--+-- * 'cntspDataType'+--+-- * 'cntspParameterName'+--+-- * 'cntspDescription'+cacheNodeTypeSpecificParameter+ :: CacheNodeTypeSpecificParameter+cacheNodeTypeSpecificParameter =+ CacheNodeTypeSpecificParameter'+ { _cntspCacheNodeTypeSpecificValues = Nothing+ , _cntspMinimumEngineVersion = Nothing+ , _cntspSource = Nothing+ , _cntspIsModifiable = Nothing+ , _cntspAllowedValues = Nothing+ , _cntspDataType = Nothing+ , _cntspParameterName = Nothing+ , _cntspDescription = Nothing+ }++-- | A list of cache node types and their corresponding values for this+-- parameter.+cntspCacheNodeTypeSpecificValues :: Lens' CacheNodeTypeSpecificParameter [CacheNodeTypeSpecificValue]+cntspCacheNodeTypeSpecificValues = lens _cntspCacheNodeTypeSpecificValues (\ s a -> s{_cntspCacheNodeTypeSpecificValues = a}) . _Default . _Coerce;++-- | The earliest cache engine version to which the parameter can apply.+cntspMinimumEngineVersion :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspMinimumEngineVersion = lens _cntspMinimumEngineVersion (\ s a -> s{_cntspMinimumEngineVersion = a});++-- | The source of the parameter value.+cntspSource :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspSource = lens _cntspSource (\ s a -> s{_cntspSource = a});++-- | Indicates whether ('true') or not ('false') the parameter can be+-- modified. Some parameters have security or operational implications that+-- prevent them from being changed.+cntspIsModifiable :: Lens' CacheNodeTypeSpecificParameter (Maybe Bool)+cntspIsModifiable = lens _cntspIsModifiable (\ s a -> s{_cntspIsModifiable = a});++-- | The valid range of values for the parameter.+cntspAllowedValues :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspAllowedValues = lens _cntspAllowedValues (\ s a -> s{_cntspAllowedValues = a});++-- | The valid data type for the parameter.+cntspDataType :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspDataType = lens _cntspDataType (\ s a -> s{_cntspDataType = a});++-- | The name of the parameter.+cntspParameterName :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspParameterName = lens _cntspParameterName (\ s a -> s{_cntspParameterName = a});++-- | A description of the parameter.+cntspDescription :: Lens' CacheNodeTypeSpecificParameter (Maybe Text)+cntspDescription = lens _cntspDescription (\ s a -> s{_cntspDescription = a});++instance FromXML CacheNodeTypeSpecificParameter where+ parseXML x+ = CacheNodeTypeSpecificParameter' <$>+ (x .@? "CacheNodeTypeSpecificValues" .!@ mempty >>=+ may (parseXMLList "CacheNodeTypeSpecificValue"))+ <*> (x .@? "MinimumEngineVersion")+ <*> (x .@? "Source")+ <*> (x .@? "IsModifiable")+ <*> (x .@? "AllowedValues")+ <*> (x .@? "DataType")+ <*> (x .@? "ParameterName")+ <*> (x .@? "Description")++-- | A value that applies only to a certain cache node type.+--+-- /See:/ 'cacheNodeTypeSpecificValue' smart constructor.+data CacheNodeTypeSpecificValue = CacheNodeTypeSpecificValue'+ { _cntsvCacheNodeType :: !(Maybe Text)+ , _cntsvValue :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheNodeTypeSpecificValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cntsvCacheNodeType'+--+-- * 'cntsvValue'+cacheNodeTypeSpecificValue+ :: CacheNodeTypeSpecificValue+cacheNodeTypeSpecificValue =+ CacheNodeTypeSpecificValue'+ { _cntsvCacheNodeType = Nothing+ , _cntsvValue = Nothing+ }++-- | The cache node type for which this value applies.+cntsvCacheNodeType :: Lens' CacheNodeTypeSpecificValue (Maybe Text)+cntsvCacheNodeType = lens _cntsvCacheNodeType (\ s a -> s{_cntsvCacheNodeType = a});++-- | The value for the cache node type.+cntsvValue :: Lens' CacheNodeTypeSpecificValue (Maybe Text)+cntsvValue = lens _cntsvValue (\ s a -> s{_cntsvValue = a});++instance FromXML CacheNodeTypeSpecificValue where+ parseXML x+ = CacheNodeTypeSpecificValue' <$>+ (x .@? "CacheNodeType") <*> (x .@? "Value")++-- | Represents the output of a /CreateCacheParameterGroup/ action.+--+-- /See:/ 'cacheParameterGroup' smart constructor.+data CacheParameterGroup = CacheParameterGroup'+ { _cpgCacheParameterGroupFamily :: !(Maybe Text)+ , _cpgCacheParameterGroupName :: !(Maybe Text)+ , _cpgDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheParameterGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpgCacheParameterGroupFamily'+--+-- * 'cpgCacheParameterGroupName'+--+-- * 'cpgDescription'+cacheParameterGroup+ :: CacheParameterGroup+cacheParameterGroup =+ CacheParameterGroup'+ { _cpgCacheParameterGroupFamily = Nothing+ , _cpgCacheParameterGroupName = Nothing+ , _cpgDescription = Nothing+ }++-- | The name of the cache parameter group family that this cache parameter+-- group is compatible with.+cpgCacheParameterGroupFamily :: Lens' CacheParameterGroup (Maybe Text)+cpgCacheParameterGroupFamily = lens _cpgCacheParameterGroupFamily (\ s a -> s{_cpgCacheParameterGroupFamily = a});++-- | The name of the cache parameter group.+cpgCacheParameterGroupName :: Lens' CacheParameterGroup (Maybe Text)+cpgCacheParameterGroupName = lens _cpgCacheParameterGroupName (\ s a -> s{_cpgCacheParameterGroupName = a});++-- | The description for this cache parameter group.+cpgDescription :: Lens' CacheParameterGroup (Maybe Text)+cpgDescription = lens _cpgDescription (\ s a -> s{_cpgDescription = a});++instance FromXML CacheParameterGroup where+ parseXML x+ = CacheParameterGroup' <$>+ (x .@? "CacheParameterGroupFamily") <*>+ (x .@? "CacheParameterGroupName")+ <*> (x .@? "Description")++-- | Represents the output of one of the following actions:+--+-- - /ModifyCacheParameterGroup/+-- - /ResetCacheParameterGroup/+--+-- /See:/ 'cacheParameterGroupNameMessage' smart constructor.+newtype CacheParameterGroupNameMessage = CacheParameterGroupNameMessage'+ { _cpgnmCacheParameterGroupName :: Maybe Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheParameterGroupNameMessage' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpgnmCacheParameterGroupName'+cacheParameterGroupNameMessage+ :: CacheParameterGroupNameMessage+cacheParameterGroupNameMessage =+ CacheParameterGroupNameMessage'+ { _cpgnmCacheParameterGroupName = Nothing+ }++-- | The name of the cache parameter group.+cpgnmCacheParameterGroupName :: Lens' CacheParameterGroupNameMessage (Maybe Text)+cpgnmCacheParameterGroupName = lens _cpgnmCacheParameterGroupName (\ s a -> s{_cpgnmCacheParameterGroupName = a});++instance FromXML CacheParameterGroupNameMessage where+ parseXML x+ = CacheParameterGroupNameMessage' <$>+ (x .@? "CacheParameterGroupName")++-- | The status of the cache parameter group.+--+-- /See:/ 'cacheParameterGroupStatus' smart constructor.+data CacheParameterGroupStatus = CacheParameterGroupStatus'+ { _cpgsCacheParameterGroupName :: !(Maybe Text)+ , _cpgsCacheNodeIdsToReboot :: !(Maybe [Text])+ , _cpgsParameterApplyStatus :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheParameterGroupStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cpgsCacheParameterGroupName'+--+-- * 'cpgsCacheNodeIdsToReboot'+--+-- * 'cpgsParameterApplyStatus'+cacheParameterGroupStatus+ :: CacheParameterGroupStatus+cacheParameterGroupStatus =+ CacheParameterGroupStatus'+ { _cpgsCacheParameterGroupName = Nothing+ , _cpgsCacheNodeIdsToReboot = Nothing+ , _cpgsParameterApplyStatus = Nothing+ }++-- | The name of the cache parameter group.+cpgsCacheParameterGroupName :: Lens' CacheParameterGroupStatus (Maybe Text)+cpgsCacheParameterGroupName = lens _cpgsCacheParameterGroupName (\ s a -> s{_cpgsCacheParameterGroupName = a});++-- | A list of the cache node IDs which need to be rebooted for parameter+-- changes to be applied. A node ID is a numeric identifier (0001, 0002,+-- etc.).+cpgsCacheNodeIdsToReboot :: Lens' CacheParameterGroupStatus [Text]+cpgsCacheNodeIdsToReboot = lens _cpgsCacheNodeIdsToReboot (\ s a -> s{_cpgsCacheNodeIdsToReboot = a}) . _Default . _Coerce;++-- | The status of parameter updates.+cpgsParameterApplyStatus :: Lens' CacheParameterGroupStatus (Maybe Text)+cpgsParameterApplyStatus = lens _cpgsParameterApplyStatus (\ s a -> s{_cpgsParameterApplyStatus = a});++instance FromXML CacheParameterGroupStatus where+ parseXML x+ = CacheParameterGroupStatus' <$>+ (x .@? "CacheParameterGroupName") <*>+ (x .@? "CacheNodeIdsToReboot" .!@ mempty >>=+ may (parseXMLList "CacheNodeId"))+ <*> (x .@? "ParameterApplyStatus")++-- | Represents the output of one of the following actions:+--+-- - /AuthorizeCacheSecurityGroupIngress/+-- - /CreateCacheSecurityGroup/+-- - /RevokeCacheSecurityGroupIngress/+--+-- /See:/ 'cacheSecurityGroup' smart constructor.+data CacheSecurityGroup = CacheSecurityGroup'+ { _csgCacheSecurityGroupName :: !(Maybe Text)+ , _csgOwnerId :: !(Maybe Text)+ , _csgEC2SecurityGroups :: !(Maybe [EC2SecurityGroup])+ , _csgDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheSecurityGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csgCacheSecurityGroupName'+--+-- * 'csgOwnerId'+--+-- * 'csgEC2SecurityGroups'+--+-- * 'csgDescription'+cacheSecurityGroup+ :: CacheSecurityGroup+cacheSecurityGroup =+ CacheSecurityGroup'+ { _csgCacheSecurityGroupName = Nothing+ , _csgOwnerId = Nothing+ , _csgEC2SecurityGroups = Nothing+ , _csgDescription = Nothing+ }++-- | The name of the cache security group.+csgCacheSecurityGroupName :: Lens' CacheSecurityGroup (Maybe Text)+csgCacheSecurityGroupName = lens _csgCacheSecurityGroupName (\ s a -> s{_csgCacheSecurityGroupName = a});++-- | The AWS account ID of the cache security group owner.+csgOwnerId :: Lens' CacheSecurityGroup (Maybe Text)+csgOwnerId = lens _csgOwnerId (\ s a -> s{_csgOwnerId = a});++-- | A list of Amazon EC2 security groups that are associated with this cache+-- security group.+csgEC2SecurityGroups :: Lens' CacheSecurityGroup [EC2SecurityGroup]+csgEC2SecurityGroups = lens _csgEC2SecurityGroups (\ s a -> s{_csgEC2SecurityGroups = a}) . _Default . _Coerce;++-- | The description of the cache security group.+csgDescription :: Lens' CacheSecurityGroup (Maybe Text)+csgDescription = lens _csgDescription (\ s a -> s{_csgDescription = a});++instance FromXML CacheSecurityGroup where+ parseXML x+ = CacheSecurityGroup' <$>+ (x .@? "CacheSecurityGroupName") <*>+ (x .@? "OwnerId")+ <*>+ (x .@? "EC2SecurityGroups" .!@ mempty >>=+ may (parseXMLList "EC2SecurityGroup"))+ <*> (x .@? "Description")++-- | Represents a cache cluster\'s status within a particular cache security+-- group.+--+-- /See:/ 'cacheSecurityGroupMembership' smart constructor.+data CacheSecurityGroupMembership = CacheSecurityGroupMembership'+ { _csgmStatus :: !(Maybe Text)+ , _csgmCacheSecurityGroupName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheSecurityGroupMembership' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csgmStatus'+--+-- * 'csgmCacheSecurityGroupName'+cacheSecurityGroupMembership+ :: CacheSecurityGroupMembership+cacheSecurityGroupMembership =+ CacheSecurityGroupMembership'+ { _csgmStatus = Nothing+ , _csgmCacheSecurityGroupName = Nothing+ }++-- | The membership status in the cache security group. The status changes+-- when a cache security group is modified, or when the cache security+-- groups assigned to a cache cluster are modified.+csgmStatus :: Lens' CacheSecurityGroupMembership (Maybe Text)+csgmStatus = lens _csgmStatus (\ s a -> s{_csgmStatus = a});++-- | The name of the cache security group.+csgmCacheSecurityGroupName :: Lens' CacheSecurityGroupMembership (Maybe Text)+csgmCacheSecurityGroupName = lens _csgmCacheSecurityGroupName (\ s a -> s{_csgmCacheSecurityGroupName = a});++instance FromXML CacheSecurityGroupMembership where+ parseXML x+ = CacheSecurityGroupMembership' <$>+ (x .@? "Status") <*> (x .@? "CacheSecurityGroupName")++-- | Represents the output of one of the following actions:+--+-- - /CreateCacheSubnetGroup/+-- - /ModifyCacheSubnetGroup/+--+-- /See:/ 'cacheSubnetGroup' smart constructor.+data CacheSubnetGroup = CacheSubnetGroup'+ { _csgVPCId :: !(Maybe Text)+ , _csgSubnets :: !(Maybe [Subnet])+ , _csgCacheSubnetGroupName :: !(Maybe Text)+ , _csgCacheSubnetGroupDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'CacheSubnetGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csgVPCId'+--+-- * 'csgSubnets'+--+-- * 'csgCacheSubnetGroupName'+--+-- * 'csgCacheSubnetGroupDescription'+cacheSubnetGroup+ :: CacheSubnetGroup+cacheSubnetGroup =+ CacheSubnetGroup'+ { _csgVPCId = Nothing+ , _csgSubnets = Nothing+ , _csgCacheSubnetGroupName = Nothing+ , _csgCacheSubnetGroupDescription = Nothing+ }++-- | The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet+-- group.+csgVPCId :: Lens' CacheSubnetGroup (Maybe Text)+csgVPCId = lens _csgVPCId (\ s a -> s{_csgVPCId = a});++-- | A list of subnets associated with the cache subnet group.+csgSubnets :: Lens' CacheSubnetGroup [Subnet]+csgSubnets = lens _csgSubnets (\ s a -> s{_csgSubnets = a}) . _Default . _Coerce;++-- | The name of the cache subnet group.+csgCacheSubnetGroupName :: Lens' CacheSubnetGroup (Maybe Text)+csgCacheSubnetGroupName = lens _csgCacheSubnetGroupName (\ s a -> s{_csgCacheSubnetGroupName = a});++-- | The description of the cache subnet group.+csgCacheSubnetGroupDescription :: Lens' CacheSubnetGroup (Maybe Text)+csgCacheSubnetGroupDescription = lens _csgCacheSubnetGroupDescription (\ s a -> s{_csgCacheSubnetGroupDescription = a});++instance FromXML CacheSubnetGroup where+ parseXML x+ = CacheSubnetGroup' <$>+ (x .@? "VpcId") <*>+ (x .@? "Subnets" .!@ mempty >>=+ may (parseXMLList "Subnet"))+ <*> (x .@? "CacheSubnetGroupName")+ <*> (x .@? "CacheSubnetGroupDescription")++-- | Provides ownership and status information for an Amazon EC2 security+-- group.+--+-- /See:/ 'ec2SecurityGroup' smart constructor.+data EC2SecurityGroup = EC2SecurityGroup'+ { _esgStatus :: !(Maybe Text)+ , _esgEC2SecurityGroupOwnerId :: !(Maybe Text)+ , _esgEC2SecurityGroupName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'EC2SecurityGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'esgStatus'+--+-- * 'esgEC2SecurityGroupOwnerId'+--+-- * 'esgEC2SecurityGroupName'+ec2SecurityGroup+ :: EC2SecurityGroup+ec2SecurityGroup =+ EC2SecurityGroup'+ { _esgStatus = Nothing+ , _esgEC2SecurityGroupOwnerId = Nothing+ , _esgEC2SecurityGroupName = Nothing+ }++-- | The status of the Amazon EC2 security group.+esgStatus :: Lens' EC2SecurityGroup (Maybe Text)+esgStatus = lens _esgStatus (\ s a -> s{_esgStatus = a});++-- | The AWS account ID of the Amazon EC2 security group owner.+esgEC2SecurityGroupOwnerId :: Lens' EC2SecurityGroup (Maybe Text)+esgEC2SecurityGroupOwnerId = lens _esgEC2SecurityGroupOwnerId (\ s a -> s{_esgEC2SecurityGroupOwnerId = a});++-- | The name of the Amazon EC2 security group.+esgEC2SecurityGroupName :: Lens' EC2SecurityGroup (Maybe Text)+esgEC2SecurityGroupName = lens _esgEC2SecurityGroupName (\ s a -> s{_esgEC2SecurityGroupName = a});++instance FromXML EC2SecurityGroup where+ parseXML x+ = EC2SecurityGroup' <$>+ (x .@? "Status") <*>+ (x .@? "EC2SecurityGroupOwnerId")+ <*> (x .@? "EC2SecurityGroupName")++-- | Represents the information required for client programs to connect to a+-- cache node.+--+-- /See:/ 'endpoint' smart constructor.+data Endpoint = Endpoint'+ { _eAddress :: !(Maybe Text)+ , _ePort :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Endpoint' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eAddress'+--+-- * 'ePort'+endpoint+ :: Endpoint+endpoint =+ Endpoint'+ { _eAddress = Nothing+ , _ePort = Nothing+ }++-- | The DNS hostname of the cache node.+eAddress :: Lens' Endpoint (Maybe Text)+eAddress = lens _eAddress (\ s a -> s{_eAddress = a});++-- | The port number that the cache engine is listening on.+ePort :: Lens' Endpoint (Maybe Int)+ePort = lens _ePort (\ s a -> s{_ePort = a});++instance FromXML Endpoint where+ parseXML x+ = Endpoint' <$> (x .@? "Address") <*> (x .@? "Port")++-- | Represents the output of a /DescribeEngineDefaultParameters/ action.+--+-- /See:/ 'engineDefaults' smart constructor.+data EngineDefaults = EngineDefaults'+ { _edCacheParameterGroupFamily :: !(Maybe Text)+ , _edCacheNodeTypeSpecificParameters :: !(Maybe [CacheNodeTypeSpecificParameter])+ , _edParameters :: !(Maybe [Parameter])+ , _edMarker :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'EngineDefaults' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'edCacheParameterGroupFamily'+--+-- * 'edCacheNodeTypeSpecificParameters'+--+-- * 'edParameters'+--+-- * 'edMarker'+engineDefaults+ :: EngineDefaults+engineDefaults =+ EngineDefaults'+ { _edCacheParameterGroupFamily = Nothing+ , _edCacheNodeTypeSpecificParameters = Nothing+ , _edParameters = Nothing+ , _edMarker = Nothing+ }++-- | Specifies the name of the cache parameter group family to which the+-- engine default parameters apply.+edCacheParameterGroupFamily :: Lens' EngineDefaults (Maybe Text)+edCacheParameterGroupFamily = lens _edCacheParameterGroupFamily (\ s a -> s{_edCacheParameterGroupFamily = a});++-- | A list of parameters specific to a particular cache node type. Each+-- element in the list contains detailed information about one parameter.+edCacheNodeTypeSpecificParameters :: Lens' EngineDefaults [CacheNodeTypeSpecificParameter]+edCacheNodeTypeSpecificParameters = lens _edCacheNodeTypeSpecificParameters (\ s a -> s{_edCacheNodeTypeSpecificParameters = a}) . _Default . _Coerce;++-- | Contains a list of engine default parameters.+edParameters :: Lens' EngineDefaults [Parameter]+edParameters = lens _edParameters (\ s a -> s{_edParameters = a}) . _Default . _Coerce;++-- | Provides an identifier to allow retrieval of paginated results.+edMarker :: Lens' EngineDefaults (Maybe Text)+edMarker = lens _edMarker (\ s a -> s{_edMarker = a});++instance FromXML EngineDefaults where+ parseXML x+ = EngineDefaults' <$>+ (x .@? "CacheParameterGroupFamily") <*>+ (x .@? "CacheNodeTypeSpecificParameters" .!@ mempty+ >>=+ may (parseXMLList "CacheNodeTypeSpecificParameter"))+ <*>+ (x .@? "Parameters" .!@ mempty >>=+ may (parseXMLList "Parameter"))+ <*> (x .@? "Marker")++-- | Represents a single occurrence of something interesting within the+-- system. Some examples of events are creating a cache cluster, adding or+-- removing a cache node, or rebooting a node.+--+-- /See:/ 'event' smart constructor.+data Event = Event'+ { _eSourceType :: !(Maybe SourceType)+ , _eSourceIdentifier :: !(Maybe Text)+ , _eDate :: !(Maybe ISO8601)+ , _eMessage :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Event' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eSourceType'+--+-- * 'eSourceIdentifier'+--+-- * 'eDate'+--+-- * 'eMessage'+event+ :: Event+event =+ Event'+ { _eSourceType = Nothing+ , _eSourceIdentifier = Nothing+ , _eDate = Nothing+ , _eMessage = Nothing+ }++-- | Specifies the origin of this event - a cache cluster, a parameter group,+-- a security group, etc.+eSourceType :: Lens' Event (Maybe SourceType)+eSourceType = lens _eSourceType (\ s a -> s{_eSourceType = a});++-- | The identifier for the source of the event. For example, if the event+-- occurred at the cache cluster level, the identifier would be the name of+-- the cache cluster.+eSourceIdentifier :: Lens' Event (Maybe Text)+eSourceIdentifier = lens _eSourceIdentifier (\ s a -> s{_eSourceIdentifier = a});++-- | The date and time when the event occurred.+eDate :: Lens' Event (Maybe UTCTime)+eDate = lens _eDate (\ s a -> s{_eDate = a}) . mapping _Time;++-- | The text of the event.+eMessage :: Lens' Event (Maybe Text)+eMessage = lens _eMessage (\ s a -> s{_eMessage = a});++instance FromXML Event where+ parseXML x+ = Event' <$>+ (x .@? "SourceType") <*> (x .@? "SourceIdentifier")+ <*> (x .@? "Date")+ <*> (x .@? "Message")++-- | Represents a collection of cache nodes in a replication group.+--+-- /See:/ 'nodeGroup' smart constructor.+data NodeGroup = NodeGroup'+ { _ngStatus :: !(Maybe Text)+ , _ngPrimaryEndpoint :: !(Maybe Endpoint)+ , _ngNodeGroupMembers :: !(Maybe [NodeGroupMember])+ , _ngNodeGroupId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'NodeGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ngStatus'+--+-- * 'ngPrimaryEndpoint'+--+-- * 'ngNodeGroupMembers'+--+-- * 'ngNodeGroupId'+nodeGroup+ :: NodeGroup+nodeGroup =+ NodeGroup'+ { _ngStatus = Nothing+ , _ngPrimaryEndpoint = Nothing+ , _ngNodeGroupMembers = Nothing+ , _ngNodeGroupId = Nothing+ }++-- | The current state of this replication group - /creating/, /available/,+-- etc.+ngStatus :: Lens' NodeGroup (Maybe Text)+ngStatus = lens _ngStatus (\ s a -> s{_ngStatus = a});++-- | Undocumented member.+ngPrimaryEndpoint :: Lens' NodeGroup (Maybe Endpoint)+ngPrimaryEndpoint = lens _ngPrimaryEndpoint (\ s a -> s{_ngPrimaryEndpoint = a});++-- | A list containing information about individual nodes within the node+-- group.+ngNodeGroupMembers :: Lens' NodeGroup [NodeGroupMember]+ngNodeGroupMembers = lens _ngNodeGroupMembers (\ s a -> s{_ngNodeGroupMembers = a}) . _Default . _Coerce;++-- | The identifier for the node group. A replication group contains only one+-- node group; therefore, the node group ID is 0001.+ngNodeGroupId :: Lens' NodeGroup (Maybe Text)+ngNodeGroupId = lens _ngNodeGroupId (\ s a -> s{_ngNodeGroupId = a});++instance FromXML NodeGroup where+ parseXML x+ = NodeGroup' <$>+ (x .@? "Status") <*> (x .@? "PrimaryEndpoint") <*>+ (x .@? "NodeGroupMembers" .!@ mempty >>=+ may (parseXMLList "NodeGroupMember"))+ <*> (x .@? "NodeGroupId")++-- | Represents a single node within a node group.+--+-- /See:/ 'nodeGroupMember' smart constructor.+data NodeGroupMember = NodeGroupMember'+ { _ngmCacheClusterId :: !(Maybe Text)+ , _ngmCacheNodeId :: !(Maybe Text)+ , _ngmPreferredAvailabilityZone :: !(Maybe Text)+ , _ngmCurrentRole :: !(Maybe Text)+ , _ngmReadEndpoint :: !(Maybe Endpoint)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'NodeGroupMember' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ngmCacheClusterId'+--+-- * 'ngmCacheNodeId'+--+-- * 'ngmPreferredAvailabilityZone'+--+-- * 'ngmCurrentRole'+--+-- * 'ngmReadEndpoint'+nodeGroupMember+ :: NodeGroupMember+nodeGroupMember =+ NodeGroupMember'+ { _ngmCacheClusterId = Nothing+ , _ngmCacheNodeId = Nothing+ , _ngmPreferredAvailabilityZone = Nothing+ , _ngmCurrentRole = Nothing+ , _ngmReadEndpoint = Nothing+ }++-- | The ID of the cache cluster to which the node belongs.+ngmCacheClusterId :: Lens' NodeGroupMember (Maybe Text)+ngmCacheClusterId = lens _ngmCacheClusterId (\ s a -> s{_ngmCacheClusterId = a});++-- | The ID of the node within its cache cluster. A node ID is a numeric+-- identifier (0001, 0002, etc.).+ngmCacheNodeId :: Lens' NodeGroupMember (Maybe Text)+ngmCacheNodeId = lens _ngmCacheNodeId (\ s a -> s{_ngmCacheNodeId = a});++-- | The name of the Availability Zone in which the node is located.+ngmPreferredAvailabilityZone :: Lens' NodeGroupMember (Maybe Text)+ngmPreferredAvailabilityZone = lens _ngmPreferredAvailabilityZone (\ s a -> s{_ngmPreferredAvailabilityZone = a});++-- | The role that is currently assigned to the node - /primary/ or+-- /replica/.+ngmCurrentRole :: Lens' NodeGroupMember (Maybe Text)+ngmCurrentRole = lens _ngmCurrentRole (\ s a -> s{_ngmCurrentRole = a});++-- | Undocumented member.+ngmReadEndpoint :: Lens' NodeGroupMember (Maybe Endpoint)+ngmReadEndpoint = lens _ngmReadEndpoint (\ s a -> s{_ngmReadEndpoint = a});++instance FromXML NodeGroupMember where+ parseXML x+ = NodeGroupMember' <$>+ (x .@? "CacheClusterId") <*> (x .@? "CacheNodeId")+ <*> (x .@? "PreferredAvailabilityZone")+ <*> (x .@? "CurrentRole")+ <*> (x .@? "ReadEndpoint")++-- | Represents an individual cache node in a snapshot of a cache cluster.+--+-- /See:/ 'nodeSnapshot' smart constructor.+data NodeSnapshot = NodeSnapshot'+ { _nsCacheNodeCreateTime :: !(Maybe ISO8601)+ , _nsCacheNodeId :: !(Maybe Text)+ , _nsSnapshotCreateTime :: !(Maybe ISO8601)+ , _nsCacheSize :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'NodeSnapshot' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nsCacheNodeCreateTime'+--+-- * 'nsCacheNodeId'+--+-- * 'nsSnapshotCreateTime'+--+-- * 'nsCacheSize'+nodeSnapshot+ :: NodeSnapshot+nodeSnapshot =+ NodeSnapshot'+ { _nsCacheNodeCreateTime = Nothing+ , _nsCacheNodeId = Nothing+ , _nsSnapshotCreateTime = Nothing+ , _nsCacheSize = Nothing+ }++-- | The date and time when the cache node was created in the source cache+-- cluster.+nsCacheNodeCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)+nsCacheNodeCreateTime = lens _nsCacheNodeCreateTime (\ s a -> s{_nsCacheNodeCreateTime = a}) . mapping _Time;++-- | The cache node identifier for the node in the source cache cluster.+nsCacheNodeId :: Lens' NodeSnapshot (Maybe Text)+nsCacheNodeId = lens _nsCacheNodeId (\ s a -> s{_nsCacheNodeId = a});++-- | The date and time when the source node\'s metadata and cache data set+-- was obtained for the snapshot.+nsSnapshotCreateTime :: Lens' NodeSnapshot (Maybe UTCTime)+nsSnapshotCreateTime = lens _nsSnapshotCreateTime (\ s a -> s{_nsSnapshotCreateTime = a}) . mapping _Time;++-- | The size of the cache on the source cache node.+nsCacheSize :: Lens' NodeSnapshot (Maybe Text)+nsCacheSize = lens _nsCacheSize (\ s a -> s{_nsCacheSize = a});++instance FromXML NodeSnapshot where+ parseXML x+ = NodeSnapshot' <$>+ (x .@? "CacheNodeCreateTime") <*>+ (x .@? "CacheNodeId")+ <*> (x .@? "SnapshotCreateTime")+ <*> (x .@? "CacheSize")++-- | Describes a notification topic and its status. Notification topics are+-- used for publishing ElastiCache events to subscribers using Amazon+-- Simple Notification Service (SNS).+--+-- /See:/ 'notificationConfiguration' smart constructor.+data NotificationConfiguration = NotificationConfiguration'+ { _ncTopicStatus :: !(Maybe Text)+ , _ncTopicARN :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'NotificationConfiguration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ncTopicStatus'+--+-- * 'ncTopicARN'+notificationConfiguration+ :: NotificationConfiguration+notificationConfiguration =+ NotificationConfiguration'+ { _ncTopicStatus = Nothing+ , _ncTopicARN = Nothing+ }++-- | The current state of the topic.+ncTopicStatus :: Lens' NotificationConfiguration (Maybe Text)+ncTopicStatus = lens _ncTopicStatus (\ s a -> s{_ncTopicStatus = a});++-- | The Amazon Resource Name (ARN) that identifies the topic.+ncTopicARN :: Lens' NotificationConfiguration (Maybe Text)+ncTopicARN = lens _ncTopicARN (\ s a -> s{_ncTopicARN = a});++instance FromXML NotificationConfiguration where+ parseXML x+ = NotificationConfiguration' <$>+ (x .@? "TopicStatus") <*> (x .@? "TopicArn")++-- | Describes an individual setting that controls some aspect of ElastiCache+-- behavior.+--+-- /See:/ 'parameter' smart constructor.+data Parameter = Parameter'+ { _pParameterValue :: !(Maybe Text)+ , _pMinimumEngineVersion :: !(Maybe Text)+ , _pSource :: !(Maybe Text)+ , _pIsModifiable :: !(Maybe Bool)+ , _pAllowedValues :: !(Maybe Text)+ , _pDataType :: !(Maybe Text)+ , _pParameterName :: !(Maybe Text)+ , _pDescription :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Parameter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pParameterValue'+--+-- * 'pMinimumEngineVersion'+--+-- * 'pSource'+--+-- * 'pIsModifiable'+--+-- * 'pAllowedValues'+--+-- * 'pDataType'+--+-- * 'pParameterName'+--+-- * 'pDescription'+parameter+ :: Parameter+parameter =+ Parameter'+ { _pParameterValue = Nothing+ , _pMinimumEngineVersion = Nothing+ , _pSource = Nothing+ , _pIsModifiable = Nothing+ , _pAllowedValues = Nothing+ , _pDataType = Nothing+ , _pParameterName = Nothing+ , _pDescription = Nothing+ }++-- | The value of the parameter.+pParameterValue :: Lens' Parameter (Maybe Text)+pParameterValue = lens _pParameterValue (\ s a -> s{_pParameterValue = a});++-- | The earliest cache engine version to which the parameter can apply.+pMinimumEngineVersion :: Lens' Parameter (Maybe Text)+pMinimumEngineVersion = lens _pMinimumEngineVersion (\ s a -> s{_pMinimumEngineVersion = a});++-- | The source of the parameter.+pSource :: Lens' Parameter (Maybe Text)+pSource = lens _pSource (\ s a -> s{_pSource = a});++-- | Indicates whether ('true') or not ('false') the parameter can be+-- modified. Some parameters have security or operational implications that+-- prevent them from being changed.+pIsModifiable :: Lens' Parameter (Maybe Bool)+pIsModifiable = lens _pIsModifiable (\ s a -> s{_pIsModifiable = a});++-- | The valid range of values for the parameter.+pAllowedValues :: Lens' Parameter (Maybe Text)+pAllowedValues = lens _pAllowedValues (\ s a -> s{_pAllowedValues = a});++-- | The valid data type for the parameter.+pDataType :: Lens' Parameter (Maybe Text)+pDataType = lens _pDataType (\ s a -> s{_pDataType = a});++-- | The name of the parameter.+pParameterName :: Lens' Parameter (Maybe Text)+pParameterName = lens _pParameterName (\ s a -> s{_pParameterName = a});++-- | A description of the parameter.+pDescription :: Lens' Parameter (Maybe Text)+pDescription = lens _pDescription (\ s a -> s{_pDescription = a});++instance FromXML Parameter where+ parseXML x+ = Parameter' <$>+ (x .@? "ParameterValue") <*>+ (x .@? "MinimumEngineVersion")+ <*> (x .@? "Source")+ <*> (x .@? "IsModifiable")+ <*> (x .@? "AllowedValues")+ <*> (x .@? "DataType")+ <*> (x .@? "ParameterName")+ <*> (x .@? "Description")++-- | Describes a name-value pair that is used to update the value of a+-- parameter.+--+-- /See:/ 'parameterNameValue' smart constructor.+data ParameterNameValue = ParameterNameValue'+ { _pnvParameterValue :: !(Maybe Text)+ , _pnvParameterName :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ParameterNameValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pnvParameterValue'+--+-- * 'pnvParameterName'+parameterNameValue+ :: ParameterNameValue+parameterNameValue =+ ParameterNameValue'+ { _pnvParameterValue = Nothing+ , _pnvParameterName = Nothing+ }++-- | The value of the parameter.+pnvParameterValue :: Lens' ParameterNameValue (Maybe Text)+pnvParameterValue = lens _pnvParameterValue (\ s a -> s{_pnvParameterValue = a});++-- | The name of the parameter.+pnvParameterName :: Lens' ParameterNameValue (Maybe Text)+pnvParameterName = lens _pnvParameterName (\ s a -> s{_pnvParameterName = a});++instance ToQuery ParameterNameValue where+ toQuery ParameterNameValue'{..}+ = mconcat+ ["ParameterValue" =: _pnvParameterValue,+ "ParameterName" =: _pnvParameterName]++-- | A group of settings that will be applied to the cache cluster in the+-- future, or that are currently being applied.+--+-- /See:/ 'pendingModifiedValues' smart constructor.+data PendingModifiedValues = PendingModifiedValues'+ { _pmvEngineVersion :: !(Maybe Text)+ , _pmvCacheNodeIdsToRemove :: !(Maybe [Text])+ , _pmvNumCacheNodes :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'PendingModifiedValues' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pmvEngineVersion'+--+-- * 'pmvCacheNodeIdsToRemove'+--+-- * 'pmvNumCacheNodes'+pendingModifiedValues+ :: PendingModifiedValues+pendingModifiedValues =+ PendingModifiedValues'+ { _pmvEngineVersion = Nothing+ , _pmvCacheNodeIdsToRemove = Nothing+ , _pmvNumCacheNodes = Nothing+ }++-- | The new cache engine version that the cache cluster will run.+pmvEngineVersion :: Lens' PendingModifiedValues (Maybe Text)+pmvEngineVersion = lens _pmvEngineVersion (\ s a -> s{_pmvEngineVersion = a});++-- | A list of cache node IDs that are being removed (or will be removed)+-- from the cache cluster. A node ID is a numeric identifier (0001, 0002,+-- etc.).+pmvCacheNodeIdsToRemove :: Lens' PendingModifiedValues [Text]+pmvCacheNodeIdsToRemove = lens _pmvCacheNodeIdsToRemove (\ s a -> s{_pmvCacheNodeIdsToRemove = a}) . _Default . _Coerce;++-- | The new number of cache nodes for the cache cluster.+--+-- For clusters running Redis, this value must be 1. For clusters running+-- Memcached, this value must be between 1 and 20.+pmvNumCacheNodes :: Lens' PendingModifiedValues (Maybe Int)+pmvNumCacheNodes = lens _pmvNumCacheNodes (\ s a -> s{_pmvNumCacheNodes = a});++instance FromXML PendingModifiedValues where+ parseXML x+ = PendingModifiedValues' <$>+ (x .@? "EngineVersion") <*>+ (x .@? "CacheNodeIdsToRemove" .!@ mempty >>=+ may (parseXMLList "CacheNodeId"))+ <*> (x .@? "NumCacheNodes")++-- | Contains the specific price and frequency of a recurring charges for a+-- reserved cache node, or for a reserved cache node offering.+--+-- /See:/ 'recurringCharge' smart constructor.+data RecurringCharge = RecurringCharge'+ { _rcRecurringChargeFrequency :: !(Maybe Text)+ , _rcRecurringChargeAmount :: !(Maybe Double)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RecurringCharge' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcRecurringChargeFrequency'+--+-- * 'rcRecurringChargeAmount'+recurringCharge+ :: RecurringCharge+recurringCharge =+ RecurringCharge'+ { _rcRecurringChargeFrequency = Nothing+ , _rcRecurringChargeAmount = Nothing+ }++-- | The frequency of the recurring charge.+rcRecurringChargeFrequency :: Lens' RecurringCharge (Maybe Text)+rcRecurringChargeFrequency = lens _rcRecurringChargeFrequency (\ s a -> s{_rcRecurringChargeFrequency = a});++-- | The monetary amount of the recurring charge.+rcRecurringChargeAmount :: Lens' RecurringCharge (Maybe Double)+rcRecurringChargeAmount = lens _rcRecurringChargeAmount (\ s a -> s{_rcRecurringChargeAmount = a});++instance FromXML RecurringCharge where+ parseXML x+ = RecurringCharge' <$>+ (x .@? "RecurringChargeFrequency") <*>+ (x .@? "RecurringChargeAmount")++-- | Contains all of the attributes of a specific replication group.+--+-- /See:/ 'replicationGroup' smart constructor.+data ReplicationGroup = ReplicationGroup'+ { _rgNodeGroups :: !(Maybe [NodeGroup])+ , _rgStatus :: !(Maybe Text)+ , _rgSnapshottingClusterId :: !(Maybe Text)+ , _rgMemberClusters :: !(Maybe [Text])+ , _rgReplicationGroupId :: !(Maybe Text)+ , _rgPendingModifiedValues :: !(Maybe ReplicationGroupPendingModifiedValues)+ , _rgDescription :: !(Maybe Text)+ , _rgAutomaticFailover :: !(Maybe AutomaticFailoverStatus)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReplicationGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rgNodeGroups'+--+-- * 'rgStatus'+--+-- * 'rgSnapshottingClusterId'+--+-- * 'rgMemberClusters'+--+-- * 'rgReplicationGroupId'+--+-- * 'rgPendingModifiedValues'+--+-- * 'rgDescription'+--+-- * 'rgAutomaticFailover'+replicationGroup+ :: ReplicationGroup+replicationGroup =+ ReplicationGroup'+ { _rgNodeGroups = Nothing+ , _rgStatus = Nothing+ , _rgSnapshottingClusterId = Nothing+ , _rgMemberClusters = Nothing+ , _rgReplicationGroupId = Nothing+ , _rgPendingModifiedValues = Nothing+ , _rgDescription = Nothing+ , _rgAutomaticFailover = Nothing+ }++-- | A single element list with information about the nodes in the+-- replication group.+rgNodeGroups :: Lens' ReplicationGroup [NodeGroup]+rgNodeGroups = lens _rgNodeGroups (\ s a -> s{_rgNodeGroups = a}) . _Default . _Coerce;++-- | The current state of this replication group - /creating/, /available/,+-- etc.+rgStatus :: Lens' ReplicationGroup (Maybe Text)+rgStatus = lens _rgStatus (\ s a -> s{_rgStatus = a});++-- | The cache cluster ID that is used as the daily snapshot source for the+-- replication group.+rgSnapshottingClusterId :: Lens' ReplicationGroup (Maybe Text)+rgSnapshottingClusterId = lens _rgSnapshottingClusterId (\ s a -> s{_rgSnapshottingClusterId = a});++-- | The names of all the cache clusters that are part of this replication+-- group.+rgMemberClusters :: Lens' ReplicationGroup [Text]+rgMemberClusters = lens _rgMemberClusters (\ s a -> s{_rgMemberClusters = a}) . _Default . _Coerce;++-- | The identifier for the replication group.+rgReplicationGroupId :: Lens' ReplicationGroup (Maybe Text)+rgReplicationGroupId = lens _rgReplicationGroupId (\ s a -> s{_rgReplicationGroupId = a});++-- | A group of settings to be applied to the replication group, either+-- immediately or during the next maintenance window.+rgPendingModifiedValues :: Lens' ReplicationGroup (Maybe ReplicationGroupPendingModifiedValues)+rgPendingModifiedValues = lens _rgPendingModifiedValues (\ s a -> s{_rgPendingModifiedValues = a});++-- | The description of the replication group.+rgDescription :: Lens' ReplicationGroup (Maybe Text)+rgDescription = lens _rgDescription (\ s a -> s{_rgDescription = a});++-- | Indicates the status of Multi-AZ for this replication group.+--+-- ElastiCache Multi-AZ replication groups are not supported on:+--+-- - Redis versions earlier than 2.8.6.+-- - T1 and T2 cache node types.+rgAutomaticFailover :: Lens' ReplicationGroup (Maybe AutomaticFailoverStatus)+rgAutomaticFailover = lens _rgAutomaticFailover (\ s a -> s{_rgAutomaticFailover = a});++instance FromXML ReplicationGroup where+ parseXML x+ = ReplicationGroup' <$>+ (x .@? "NodeGroups" .!@ mempty >>=+ may (parseXMLList "NodeGroup"))+ <*> (x .@? "Status")+ <*> (x .@? "SnapshottingClusterId")+ <*>+ (x .@? "MemberClusters" .!@ mempty >>=+ may (parseXMLList "ClusterId"))+ <*> (x .@? "ReplicationGroupId")+ <*> (x .@? "PendingModifiedValues")+ <*> (x .@? "Description")+ <*> (x .@? "AutomaticFailover")++-- | The settings to be applied to the replication group, either immediately+-- or during the next maintenance window.+--+-- /See:/ 'replicationGroupPendingModifiedValues' smart constructor.+data ReplicationGroupPendingModifiedValues = ReplicationGroupPendingModifiedValues'+ { _rgpmvPrimaryClusterId :: !(Maybe Text)+ , _rgpmvAutomaticFailoverStatus :: !(Maybe PendingAutomaticFailoverStatus)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReplicationGroupPendingModifiedValues' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rgpmvPrimaryClusterId'+--+-- * 'rgpmvAutomaticFailoverStatus'+replicationGroupPendingModifiedValues+ :: ReplicationGroupPendingModifiedValues+replicationGroupPendingModifiedValues =+ ReplicationGroupPendingModifiedValues'+ { _rgpmvPrimaryClusterId = Nothing+ , _rgpmvAutomaticFailoverStatus = Nothing+ }++-- | The primary cluster ID which will be applied immediately (if+-- '--apply-immediately' was specified), or during the next maintenance+-- window.+rgpmvPrimaryClusterId :: Lens' ReplicationGroupPendingModifiedValues (Maybe Text)+rgpmvPrimaryClusterId = lens _rgpmvPrimaryClusterId (\ s a -> s{_rgpmvPrimaryClusterId = a});++-- | Indicates the status of Multi-AZ for this replication group.+--+-- ElastiCache Multi-AZ replication groups are not supported on:+--+-- - Redis versions earlier than 2.8.6.+-- - T1 and T2 cache node types.+rgpmvAutomaticFailoverStatus :: Lens' ReplicationGroupPendingModifiedValues (Maybe PendingAutomaticFailoverStatus)+rgpmvAutomaticFailoverStatus = lens _rgpmvAutomaticFailoverStatus (\ s a -> s{_rgpmvAutomaticFailoverStatus = a});++instance FromXML+ ReplicationGroupPendingModifiedValues where+ parseXML x+ = ReplicationGroupPendingModifiedValues' <$>+ (x .@? "PrimaryClusterId") <*>+ (x .@? "AutomaticFailoverStatus")++-- | Represents the output of a /PurchaseReservedCacheNodesOffering/ action.+--+-- /See:/ 'reservedCacheNode' smart constructor.+data ReservedCacheNode = ReservedCacheNode'+ { _rcnCacheNodeType :: !(Maybe Text)+ , _rcnState :: !(Maybe Text)+ , _rcnProductDescription :: !(Maybe Text)+ , _rcnStartTime :: !(Maybe ISO8601)+ , _rcnCacheNodeCount :: !(Maybe Int)+ , _rcnReservedCacheNodeId :: !(Maybe Text)+ , _rcnOfferingType :: !(Maybe Text)+ , _rcnUsagePrice :: !(Maybe Double)+ , _rcnRecurringCharges :: !(Maybe [RecurringCharge])+ , _rcnFixedPrice :: !(Maybe Double)+ , _rcnDuration :: !(Maybe Int)+ , _rcnReservedCacheNodesOfferingId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReservedCacheNode' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcnCacheNodeType'+--+-- * 'rcnState'+--+-- * 'rcnProductDescription'+--+-- * 'rcnStartTime'+--+-- * 'rcnCacheNodeCount'+--+-- * 'rcnReservedCacheNodeId'+--+-- * 'rcnOfferingType'+--+-- * 'rcnUsagePrice'+--+-- * 'rcnRecurringCharges'+--+-- * 'rcnFixedPrice'+--+-- * 'rcnDuration'+--+-- * 'rcnReservedCacheNodesOfferingId'+reservedCacheNode+ :: ReservedCacheNode+reservedCacheNode =+ ReservedCacheNode'+ { _rcnCacheNodeType = Nothing+ , _rcnState = Nothing+ , _rcnProductDescription = Nothing+ , _rcnStartTime = Nothing+ , _rcnCacheNodeCount = Nothing+ , _rcnReservedCacheNodeId = Nothing+ , _rcnOfferingType = Nothing+ , _rcnUsagePrice = Nothing+ , _rcnRecurringCharges = Nothing+ , _rcnFixedPrice = Nothing+ , _rcnDuration = Nothing+ , _rcnReservedCacheNodesOfferingId = Nothing+ }++-- | The cache node type for the reserved cache nodes.+--+-- Valid node types are as follows:+--+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge'+--+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+rcnCacheNodeType :: Lens' ReservedCacheNode (Maybe Text)+rcnCacheNodeType = lens _rcnCacheNodeType (\ s a -> s{_rcnCacheNodeType = a});++-- | The state of the reserved cache node.+rcnState :: Lens' ReservedCacheNode (Maybe Text)+rcnState = lens _rcnState (\ s a -> s{_rcnState = a});++-- | The description of the reserved cache node.+rcnProductDescription :: Lens' ReservedCacheNode (Maybe Text)+rcnProductDescription = lens _rcnProductDescription (\ s a -> s{_rcnProductDescription = a});++-- | The time the reservation started.+rcnStartTime :: Lens' ReservedCacheNode (Maybe UTCTime)+rcnStartTime = lens _rcnStartTime (\ s a -> s{_rcnStartTime = a}) . mapping _Time;++-- | The number of cache nodes that have been reserved.+rcnCacheNodeCount :: Lens' ReservedCacheNode (Maybe Int)+rcnCacheNodeCount = lens _rcnCacheNodeCount (\ s a -> s{_rcnCacheNodeCount = a});++-- | The unique identifier for the reservation.+rcnReservedCacheNodeId :: Lens' ReservedCacheNode (Maybe Text)+rcnReservedCacheNodeId = lens _rcnReservedCacheNodeId (\ s a -> s{_rcnReservedCacheNodeId = a});++-- | The offering type of this reserved cache node.+rcnOfferingType :: Lens' ReservedCacheNode (Maybe Text)+rcnOfferingType = lens _rcnOfferingType (\ s a -> s{_rcnOfferingType = a});++-- | The hourly price charged for this reserved cache node.+rcnUsagePrice :: Lens' ReservedCacheNode (Maybe Double)+rcnUsagePrice = lens _rcnUsagePrice (\ s a -> s{_rcnUsagePrice = a});++-- | The recurring price charged to run this reserved cache node.+rcnRecurringCharges :: Lens' ReservedCacheNode [RecurringCharge]+rcnRecurringCharges = lens _rcnRecurringCharges (\ s a -> s{_rcnRecurringCharges = a}) . _Default . _Coerce;++-- | The fixed price charged for this reserved cache node.+rcnFixedPrice :: Lens' ReservedCacheNode (Maybe Double)+rcnFixedPrice = lens _rcnFixedPrice (\ s a -> s{_rcnFixedPrice = a});++-- | The duration of the reservation in seconds.+rcnDuration :: Lens' ReservedCacheNode (Maybe Int)+rcnDuration = lens _rcnDuration (\ s a -> s{_rcnDuration = a});++-- | The offering identifier.+rcnReservedCacheNodesOfferingId :: Lens' ReservedCacheNode (Maybe Text)+rcnReservedCacheNodesOfferingId = lens _rcnReservedCacheNodesOfferingId (\ s a -> s{_rcnReservedCacheNodesOfferingId = a});++instance FromXML ReservedCacheNode where+ parseXML x+ = ReservedCacheNode' <$>+ (x .@? "CacheNodeType") <*> (x .@? "State") <*>+ (x .@? "ProductDescription")+ <*> (x .@? "StartTime")+ <*> (x .@? "CacheNodeCount")+ <*> (x .@? "ReservedCacheNodeId")+ <*> (x .@? "OfferingType")+ <*> (x .@? "UsagePrice")+ <*>+ (x .@? "RecurringCharges" .!@ mempty >>=+ may (parseXMLList "RecurringCharge"))+ <*> (x .@? "FixedPrice")+ <*> (x .@? "Duration")+ <*> (x .@? "ReservedCacheNodesOfferingId")++-- | Describes all of the attributes of a reserved cache node offering.+--+-- /See:/ 'reservedCacheNodesOffering' smart constructor.+data ReservedCacheNodesOffering = ReservedCacheNodesOffering'+ { _rcnoCacheNodeType :: !(Maybe Text)+ , _rcnoProductDescription :: !(Maybe Text)+ , _rcnoOfferingType :: !(Maybe Text)+ , _rcnoUsagePrice :: !(Maybe Double)+ , _rcnoRecurringCharges :: !(Maybe [RecurringCharge])+ , _rcnoFixedPrice :: !(Maybe Double)+ , _rcnoDuration :: !(Maybe Int)+ , _rcnoReservedCacheNodesOfferingId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReservedCacheNodesOffering' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcnoCacheNodeType'+--+-- * 'rcnoProductDescription'+--+-- * 'rcnoOfferingType'+--+-- * 'rcnoUsagePrice'+--+-- * 'rcnoRecurringCharges'+--+-- * 'rcnoFixedPrice'+--+-- * 'rcnoDuration'+--+-- * 'rcnoReservedCacheNodesOfferingId'+reservedCacheNodesOffering+ :: ReservedCacheNodesOffering+reservedCacheNodesOffering =+ ReservedCacheNodesOffering'+ { _rcnoCacheNodeType = Nothing+ , _rcnoProductDescription = Nothing+ , _rcnoOfferingType = Nothing+ , _rcnoUsagePrice = Nothing+ , _rcnoRecurringCharges = Nothing+ , _rcnoFixedPrice = Nothing+ , _rcnoDuration = Nothing+ , _rcnoReservedCacheNodesOfferingId = Nothing+ }++-- | The cache node type for the reserved cache node.+--+-- Valid node types are as follows:+--+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge'+--+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+rcnoCacheNodeType :: Lens' ReservedCacheNodesOffering (Maybe Text)+rcnoCacheNodeType = lens _rcnoCacheNodeType (\ s a -> s{_rcnoCacheNodeType = a});++-- | The cache engine used by the offering.+rcnoProductDescription :: Lens' ReservedCacheNodesOffering (Maybe Text)+rcnoProductDescription = lens _rcnoProductDescription (\ s a -> s{_rcnoProductDescription = a});++-- | The offering type.+rcnoOfferingType :: Lens' ReservedCacheNodesOffering (Maybe Text)+rcnoOfferingType = lens _rcnoOfferingType (\ s a -> s{_rcnoOfferingType = a});++-- | The hourly price charged for this offering.+rcnoUsagePrice :: Lens' ReservedCacheNodesOffering (Maybe Double)+rcnoUsagePrice = lens _rcnoUsagePrice (\ s a -> s{_rcnoUsagePrice = a});++-- | The recurring price charged to run this reserved cache node.+rcnoRecurringCharges :: Lens' ReservedCacheNodesOffering [RecurringCharge]+rcnoRecurringCharges = lens _rcnoRecurringCharges (\ s a -> s{_rcnoRecurringCharges = a}) . _Default . _Coerce;++-- | The fixed price charged for this offering.+rcnoFixedPrice :: Lens' ReservedCacheNodesOffering (Maybe Double)+rcnoFixedPrice = lens _rcnoFixedPrice (\ s a -> s{_rcnoFixedPrice = a});++-- | The duration of the offering. in seconds.+rcnoDuration :: Lens' ReservedCacheNodesOffering (Maybe Int)+rcnoDuration = lens _rcnoDuration (\ s a -> s{_rcnoDuration = a});++-- | A unique identifier for the reserved cache node offering.+rcnoReservedCacheNodesOfferingId :: Lens' ReservedCacheNodesOffering (Maybe Text)+rcnoReservedCacheNodesOfferingId = lens _rcnoReservedCacheNodesOfferingId (\ s a -> s{_rcnoReservedCacheNodesOfferingId = a});++instance FromXML ReservedCacheNodesOffering where+ parseXML x+ = ReservedCacheNodesOffering' <$>+ (x .@? "CacheNodeType") <*>+ (x .@? "ProductDescription")+ <*> (x .@? "OfferingType")+ <*> (x .@? "UsagePrice")+ <*>+ (x .@? "RecurringCharges" .!@ mempty >>=+ may (parseXMLList "RecurringCharge"))+ <*> (x .@? "FixedPrice")+ <*> (x .@? "Duration")+ <*> (x .@? "ReservedCacheNodesOfferingId")++-- | Represents a single cache security group and its status.+--+-- /See:/ 'securityGroupMembership' smart constructor.+data SecurityGroupMembership = SecurityGroupMembership'+ { _sgmStatus :: !(Maybe Text)+ , _sgmSecurityGroupId :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SecurityGroupMembership' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sgmStatus'+--+-- * 'sgmSecurityGroupId'+securityGroupMembership+ :: SecurityGroupMembership+securityGroupMembership =+ SecurityGroupMembership'+ { _sgmStatus = Nothing+ , _sgmSecurityGroupId = Nothing+ }++-- | The status of the cache security group membership. The status changes+-- whenever a cache security group is modified, or when the cache security+-- groups assigned to a cache cluster are modified.+sgmStatus :: Lens' SecurityGroupMembership (Maybe Text)+sgmStatus = lens _sgmStatus (\ s a -> s{_sgmStatus = a});++-- | The identifier of the cache security group.+sgmSecurityGroupId :: Lens' SecurityGroupMembership (Maybe Text)+sgmSecurityGroupId = lens _sgmSecurityGroupId (\ s a -> s{_sgmSecurityGroupId = a});++instance FromXML SecurityGroupMembership where+ parseXML x+ = SecurityGroupMembership' <$>+ (x .@? "Status") <*> (x .@? "SecurityGroupId")++-- | Represents a copy of an entire cache cluster as of the time when the+-- snapshot was taken.+--+-- /See:/ 'snapshot' smart constructor.+data Snapshot = Snapshot'+ { _sCacheNodeType :: !(Maybe Text)+ , _sEngineVersion :: !(Maybe Text)+ , _sCacheClusterCreateTime :: !(Maybe ISO8601)+ , _sAutoMinorVersionUpgrade :: !(Maybe Bool)+ , _sCacheParameterGroupName :: !(Maybe Text)+ , _sSnapshotStatus :: !(Maybe Text)+ , _sSnapshotWindow :: !(Maybe Text)+ , _sVPCId :: !(Maybe Text)+ , _sCacheClusterId :: !(Maybe Text)+ , _sEngine :: !(Maybe Text)+ , _sPreferredMaintenanceWindow :: !(Maybe Text)+ , _sTopicARN :: !(Maybe Text)+ , _sCacheSubnetGroupName :: !(Maybe Text)+ , _sNodeSnapshots :: !(Maybe [NodeSnapshot])+ , _sPreferredAvailabilityZone :: !(Maybe Text)+ , _sSnapshotRetentionLimit :: !(Maybe Int)+ , _sSnapshotName :: !(Maybe Text)+ , _sSnapshotSource :: !(Maybe Text)+ , _sNumCacheNodes :: !(Maybe Int)+ , _sPort :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Snapshot' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sCacheNodeType'+--+-- * 'sEngineVersion'+--+-- * 'sCacheClusterCreateTime'+--+-- * 'sAutoMinorVersionUpgrade'+--+-- * 'sCacheParameterGroupName'+--+-- * 'sSnapshotStatus'+--+-- * 'sSnapshotWindow'+--+-- * 'sVPCId'+--+-- * 'sCacheClusterId'+--+-- * 'sEngine'+--+-- * 'sPreferredMaintenanceWindow'+--+-- * 'sTopicARN'+--+-- * 'sCacheSubnetGroupName'+--+-- * 'sNodeSnapshots'+--+-- * 'sPreferredAvailabilityZone'+--+-- * 'sSnapshotRetentionLimit'+--+-- * 'sSnapshotName'+--+-- * 'sSnapshotSource'+--+-- * 'sNumCacheNodes'+--+-- * 'sPort'+snapshot+ :: Snapshot+snapshot =+ Snapshot'+ { _sCacheNodeType = Nothing+ , _sEngineVersion = Nothing+ , _sCacheClusterCreateTime = Nothing+ , _sAutoMinorVersionUpgrade = Nothing+ , _sCacheParameterGroupName = Nothing+ , _sSnapshotStatus = Nothing+ , _sSnapshotWindow = Nothing+ , _sVPCId = Nothing+ , _sCacheClusterId = Nothing+ , _sEngine = Nothing+ , _sPreferredMaintenanceWindow = Nothing+ , _sTopicARN = Nothing+ , _sCacheSubnetGroupName = Nothing+ , _sNodeSnapshots = Nothing+ , _sPreferredAvailabilityZone = Nothing+ , _sSnapshotRetentionLimit = Nothing+ , _sSnapshotName = Nothing+ , _sSnapshotSource = Nothing+ , _sNumCacheNodes = Nothing+ , _sPort = Nothing+ }++-- | The name of the compute and memory capacity node type for the source+-- cache cluster.+--+-- Valid node types are as follows:+--+-- - General purpose:+-- - Current generation: 'cache.t2.micro', 'cache.t2.small',+-- 'cache.t2.medium', 'cache.m3.medium', 'cache.m3.large',+-- 'cache.m3.xlarge', 'cache.m3.2xlarge'+-- - Previous generation: 'cache.t1.micro', 'cache.m1.small',+-- 'cache.m1.medium', 'cache.m1.large', 'cache.m1.xlarge'+-- - Compute optimized: 'cache.c1.xlarge'+-- - Memory optimized+-- - Current generation: 'cache.r3.large', 'cache.r3.xlarge',+-- 'cache.r3.2xlarge', 'cache.r3.4xlarge', 'cache.r3.8xlarge'+-- - Previous generation: 'cache.m2.xlarge', 'cache.m2.2xlarge',+-- 'cache.m2.4xlarge'+--+-- __Notes:__+--+-- - All t2 instances are created in an Amazon Virtual Private Cloud+-- (VPC).+-- - Redis backup\/restore is not supported for t2 instances.+-- - Redis Append-only files (AOF) functionality is not supported for t1+-- or t2 instances.+--+-- For a complete listing of cache node types and specifications, see+-- <http://aws.amazon.com/elasticache/details Amazon ElastiCache Product Features and Details>+-- and+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Memcached.html#CacheParameterGroups.Memcached.NodeSpecific Cache Node Type-Specific Parameters for Memcached>+-- or+-- <http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheParameterGroups.Redis.html#CacheParameterGroups.Redis.NodeSpecific Cache Node Type-Specific Parameters for Redis>.+sCacheNodeType :: Lens' Snapshot (Maybe Text)+sCacheNodeType = lens _sCacheNodeType (\ s a -> s{_sCacheNodeType = a});++-- | The version of the cache engine version that is used by the source cache+-- cluster.+sEngineVersion :: Lens' Snapshot (Maybe Text)+sEngineVersion = lens _sEngineVersion (\ s a -> s{_sEngineVersion = a});++-- | The date and time when the source cache cluster was created.+sCacheClusterCreateTime :: Lens' Snapshot (Maybe UTCTime)+sCacheClusterCreateTime = lens _sCacheClusterCreateTime (\ s a -> s{_sCacheClusterCreateTime = a}) . mapping _Time;++-- | This parameter is currently disabled.+sAutoMinorVersionUpgrade :: Lens' Snapshot (Maybe Bool)+sAutoMinorVersionUpgrade = lens _sAutoMinorVersionUpgrade (\ s a -> s{_sAutoMinorVersionUpgrade = a});++-- | The cache parameter group that is associated with the source cache+-- cluster.+sCacheParameterGroupName :: Lens' Snapshot (Maybe Text)+sCacheParameterGroupName = lens _sCacheParameterGroupName (\ s a -> s{_sCacheParameterGroupName = a});++-- | The status of the snapshot. Valid values: 'creating' | 'available' |+-- 'restoring' | 'copying' | 'deleting'.+sSnapshotStatus :: Lens' Snapshot (Maybe Text)+sSnapshotStatus = lens _sSnapshotStatus (\ s a -> s{_sSnapshotStatus = a});++-- | The daily time range during which ElastiCache takes daily snapshots of+-- the source cache cluster.+sSnapshotWindow :: Lens' Snapshot (Maybe Text)+sSnapshotWindow = lens _sSnapshotWindow (\ s a -> s{_sSnapshotWindow = a});++-- | The Amazon Virtual Private Cloud identifier (VPC ID) of the cache subnet+-- group for the source cache cluster.+sVPCId :: Lens' Snapshot (Maybe Text)+sVPCId = lens _sVPCId (\ s a -> s{_sVPCId = a});++-- | The user-supplied identifier of the source cache cluster.+sCacheClusterId :: Lens' Snapshot (Maybe Text)+sCacheClusterId = lens _sCacheClusterId (\ s a -> s{_sCacheClusterId = a});++-- | The name of the cache engine (/memcached/ or /redis/) used by the source+-- cache cluster.+sEngine :: Lens' Snapshot (Maybe Text)+sEngine = lens _sEngine (\ s a -> s{_sEngine = a});++-- | Specifies the weekly time range during which maintenance on the cache+-- cluster is performed. It is specified as a range in the format+-- ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window+-- is a 60 minute period. Valid values for 'ddd' are:+--+-- - 'sun'+-- - 'mon'+-- - 'tue'+-- - 'wed'+-- - 'thu'+-- - 'fri'+-- - 'sat'+--+-- Example: 'sun:05:00-sun:09:00'+sPreferredMaintenanceWindow :: Lens' Snapshot (Maybe Text)+sPreferredMaintenanceWindow = lens _sPreferredMaintenanceWindow (\ s a -> s{_sPreferredMaintenanceWindow = a});++-- | The Amazon Resource Name (ARN) for the topic used by the source cache+-- cluster for publishing notifications.+sTopicARN :: Lens' Snapshot (Maybe Text)+sTopicARN = lens _sTopicARN (\ s a -> s{_sTopicARN = a});++-- | The name of the cache subnet group associated with the source cache+-- cluster.+sCacheSubnetGroupName :: Lens' Snapshot (Maybe Text)+sCacheSubnetGroupName = lens _sCacheSubnetGroupName (\ s a -> s{_sCacheSubnetGroupName = a});++-- | A list of the cache nodes in the source cache cluster.+sNodeSnapshots :: Lens' Snapshot [NodeSnapshot]+sNodeSnapshots = lens _sNodeSnapshots (\ s a -> s{_sNodeSnapshots = a}) . _Default . _Coerce;++-- | The name of the Availability Zone in which the source cache cluster is+-- located.+sPreferredAvailabilityZone :: Lens' Snapshot (Maybe Text)+sPreferredAvailabilityZone = lens _sPreferredAvailabilityZone (\ s a -> s{_sPreferredAvailabilityZone = a});++-- | For an automatic snapshot, the number of days for which ElastiCache will+-- retain the snapshot before deleting it.+--+-- For manual snapshots, this field reflects the /SnapshotRetentionLimit/+-- for the source cache cluster when the snapshot was created. This field+-- is otherwise ignored: Manual snapshots do not expire, and can only be+-- deleted using the /DeleteSnapshot/ action.+--+-- __Important__+-- If the value of SnapshotRetentionLimit is set to zero (0), backups are+-- turned off.+sSnapshotRetentionLimit :: Lens' Snapshot (Maybe Int)+sSnapshotRetentionLimit = lens _sSnapshotRetentionLimit (\ s a -> s{_sSnapshotRetentionLimit = a});++-- | The name of a snapshot. For an automatic snapshot, the name is+-- system-generated; for a manual snapshot, this is the user-provided name.+sSnapshotName :: Lens' Snapshot (Maybe Text)+sSnapshotName = lens _sSnapshotName (\ s a -> s{_sSnapshotName = a});++-- | Indicates whether the snapshot is from an automatic backup ('automated')+-- or was created manually ('manual').+sSnapshotSource :: Lens' Snapshot (Maybe Text)+sSnapshotSource = lens _sSnapshotSource (\ s a -> s{_sSnapshotSource = a});++-- | The number of cache nodes in the source cache cluster.+--+-- For clusters running Redis, this value must be 1. For clusters running+-- Memcached, this value must be between 1 and 20.+sNumCacheNodes :: Lens' Snapshot (Maybe Int)+sNumCacheNodes = lens _sNumCacheNodes (\ s a -> s{_sNumCacheNodes = a});++-- | The port number used by each cache nodes in the source cache cluster.+sPort :: Lens' Snapshot (Maybe Int)+sPort = lens _sPort (\ s a -> s{_sPort = a});++instance FromXML Snapshot where+ parseXML x+ = Snapshot' <$>+ (x .@? "CacheNodeType") <*> (x .@? "EngineVersion")+ <*> (x .@? "CacheClusterCreateTime")+ <*> (x .@? "AutoMinorVersionUpgrade")+ <*> (x .@? "CacheParameterGroupName")+ <*> (x .@? "SnapshotStatus")+ <*> (x .@? "SnapshotWindow")+ <*> (x .@? "VpcId")+ <*> (x .@? "CacheClusterId")+ <*> (x .@? "Engine")+ <*> (x .@? "PreferredMaintenanceWindow")+ <*> (x .@? "TopicArn")+ <*> (x .@? "CacheSubnetGroupName")+ <*>+ (x .@? "NodeSnapshots" .!@ mempty >>=+ may (parseXMLList "NodeSnapshot"))+ <*> (x .@? "PreferredAvailabilityZone")+ <*> (x .@? "SnapshotRetentionLimit")+ <*> (x .@? "SnapshotName")+ <*> (x .@? "SnapshotSource")+ <*> (x .@? "NumCacheNodes")+ <*> (x .@? "Port")++-- | Represents the subnet associated with a cache cluster. This parameter+-- refers to subnets defined in Amazon Virtual Private Cloud (Amazon VPC)+-- and used with ElastiCache.+--+-- /See:/ 'subnet' smart constructor.+data Subnet = Subnet'+ { _sSubnetIdentifier :: !(Maybe Text)+ , _sSubnetAvailabilityZone :: !(Maybe AvailabilityZone)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Subnet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sSubnetIdentifier'+--+-- * 'sSubnetAvailabilityZone'+subnet+ :: Subnet+subnet =+ Subnet'+ { _sSubnetIdentifier = Nothing+ , _sSubnetAvailabilityZone = Nothing+ }++-- | The unique identifier for the subnet.+sSubnetIdentifier :: Lens' Subnet (Maybe Text)+sSubnetIdentifier = lens _sSubnetIdentifier (\ s a -> s{_sSubnetIdentifier = a});++-- | The Availability Zone associated with the subnet.+sSubnetAvailabilityZone :: Lens' Subnet (Maybe AvailabilityZone)+sSubnetAvailabilityZone = lens _sSubnetAvailabilityZone (\ s a -> s{_sSubnetAvailabilityZone = a});++instance FromXML Subnet where+ parseXML x+ = Subnet' <$>+ (x .@? "SubnetIdentifier") <*>+ (x .@? "SubnetAvailabilityZone")++-- | A cost allocation Tag that can be added to an ElastiCache cluster or+-- replication group. Tags are composed of a Key\/Value pair. A tag with a+-- null Value is permitted.+--+-- /See:/ 'tag' smart constructor.+data Tag = Tag'+ { _tagValue :: !(Maybe Text)+ , _tagKey :: !(Maybe Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Tag' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tagValue'+--+-- * 'tagKey'+tag+ :: Tag+tag =+ Tag'+ { _tagValue = Nothing+ , _tagKey = Nothing+ }++-- | The tag\'s value. May not be null.+tagValue :: Lens' Tag (Maybe Text)+tagValue = lens _tagValue (\ s a -> s{_tagValue = a});++-- | The key for the tag.+tagKey :: Lens' Tag (Maybe Text)+tagKey = lens _tagKey (\ s a -> s{_tagKey = a});++instance FromXML Tag where+ parseXML x+ = Tag' <$> (x .@? "Value") <*> (x .@? "Key")++instance ToQuery Tag where+ toQuery Tag'{..}+ = mconcat ["Value" =: _tagValue, "Key" =: _tagKey]++-- | Represents the output from the /AddTagsToResource/,+-- /ListTagsOnResource/, and /RemoveTagsFromResource/ actions.+--+-- /See:/ 'tagListMessage' smart constructor.+newtype TagListMessage = TagListMessage'+ { _tlmTagList :: Maybe [Tag]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'TagListMessage' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tlmTagList'+tagListMessage+ :: TagListMessage+tagListMessage =+ TagListMessage'+ { _tlmTagList = Nothing+ }++-- | A list of cost allocation tags as key-value pairs.+tlmTagList :: Lens' TagListMessage [Tag]+tlmTagList = lens _tlmTagList (\ s a -> s{_tlmTagList = a}) . _Default . _Coerce;++instance FromXML TagListMessage where+ parseXML x+ = TagListMessage' <$>+ (x .@? "TagList" .!@ mempty >>=+ may (parseXMLList "Tag"))
+ gen/Network/AWS/ElastiCache/Types/Sum.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.ElastiCache.Types.Sum+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.ElastiCache.Types.Sum where++import Network.AWS.Prelude++data AZMode+ = CrossAz+ | SingleAz+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText AZMode where+ parser = takeLowerText >>= \case+ "cross-az" -> pure CrossAz+ "single-az" -> pure SingleAz+ e -> fromTextError $ "Failure parsing AZMode from value: '" <> e+ <> "'. Accepted values: cross-az, single-az"++instance ToText AZMode where+ toText = \case+ CrossAz -> "cross-az"+ SingleAz -> "single-az"++instance Hashable AZMode+instance ToByteString AZMode+instance ToQuery AZMode+instance ToHeader AZMode++data AutomaticFailoverStatus+ = AFSDisabled+ | AFSDisabling+ | AFSEnabled+ | AFSEnabling+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText AutomaticFailoverStatus where+ parser = takeLowerText >>= \case+ "disabled" -> pure AFSDisabled+ "disabling" -> pure AFSDisabling+ "enabled" -> pure AFSEnabled+ "enabling" -> pure AFSEnabling+ e -> fromTextError $ "Failure parsing AutomaticFailoverStatus from value: '" <> e+ <> "'. Accepted values: disabled, disabling, enabled, enabling"++instance ToText AutomaticFailoverStatus where+ toText = \case+ AFSDisabled -> "disabled"+ AFSDisabling -> "disabling"+ AFSEnabled -> "enabled"+ AFSEnabling -> "enabling"++instance Hashable AutomaticFailoverStatus+instance ToByteString AutomaticFailoverStatus+instance ToQuery AutomaticFailoverStatus+instance ToHeader AutomaticFailoverStatus++instance FromXML AutomaticFailoverStatus where+ parseXML = parseXMLText "AutomaticFailoverStatus"++data PendingAutomaticFailoverStatus+ = Disabled+ | Enabled+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText PendingAutomaticFailoverStatus where+ parser = takeLowerText >>= \case+ "disabled" -> pure Disabled+ "enabled" -> pure Enabled+ e -> fromTextError $ "Failure parsing PendingAutomaticFailoverStatus from value: '" <> e+ <> "'. Accepted values: disabled, enabled"++instance ToText PendingAutomaticFailoverStatus where+ toText = \case+ Disabled -> "disabled"+ Enabled -> "enabled"++instance Hashable PendingAutomaticFailoverStatus+instance ToByteString PendingAutomaticFailoverStatus+instance ToQuery PendingAutomaticFailoverStatus+instance ToHeader PendingAutomaticFailoverStatus++instance FromXML PendingAutomaticFailoverStatus where+ parseXML = parseXMLText "PendingAutomaticFailoverStatus"++data SourceType+ = CacheCluster+ | CacheParameterGroup+ | CacheSecurityGroup+ | CacheSubnetGroup+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText SourceType where+ parser = takeLowerText >>= \case+ "cache-cluster" -> pure CacheCluster+ "cache-parameter-group" -> pure CacheParameterGroup+ "cache-security-group" -> pure CacheSecurityGroup+ "cache-subnet-group" -> pure CacheSubnetGroup+ e -> fromTextError $ "Failure parsing SourceType from value: '" <> e+ <> "'. Accepted values: cache-cluster, cache-parameter-group, cache-security-group, cache-subnet-group"++instance ToText SourceType where+ toText = \case+ CacheCluster -> "cache-cluster"+ CacheParameterGroup -> "cache-parameter-group"+ CacheSecurityGroup -> "cache-security-group"+ CacheSubnetGroup -> "cache-subnet-group"++instance Hashable SourceType+instance ToByteString SourceType+instance ToQuery SourceType+instance ToHeader SourceType++instance FromXML SourceType where+ parseXML = parseXMLText "SourceType"
gen/Network/AWS/ElastiCache/Waiters.hs view
@@ -1,91 +1,148 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TypeFamilies #-} +{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.ElastiCache.Waiters--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.- module Network.AWS.ElastiCache.Waiters where -import Network.AWS.ElastiCache.DescribeCacheClusters-import Network.AWS.ElastiCache.DescribeReplicationGroups-import Network.AWS.ElastiCache.Types-import Network.AWS.Waiters+import Network.AWS.ElastiCache.DescribeCacheClusters+import Network.AWS.ElastiCache.DescribeCacheClusters+import Network.AWS.ElastiCache.DescribeReplicationGroups+import Network.AWS.ElastiCache.DescribeReplicationGroups+import Network.AWS.ElastiCache.Types+import Network.AWS.Prelude+import Network.AWS.Waiter +-- | Polls 'Network.AWS.ElastiCache.DescribeCacheClusters' every 30 seconds until a+-- successful state is reached. An error is returned after 60 failed checks. cacheClusterAvailable :: Wait DescribeCacheClusters-cacheClusterAvailable = Wait- { _waitName = "CacheClusterAvailable"- , _waitAttempts = 60- , _waitDelay = 30- , _waitAcceptors =- [ matchAll "available" AcceptSuccess- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "deleted" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "deleting" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "incompatible-network" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "restore-failed" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- ]+cacheClusterAvailable =+ Wait+ { _waitName = "CacheClusterAvailable"+ , _waitAttempts = 60+ , _waitDelay = 30+ , _waitAcceptors = [ matchAll+ "available"+ AcceptSuccess+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "deleted"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "deleting"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "incompatible-network"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "restore-failed"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)] } +-- | Polls 'Network.AWS.ElastiCache.DescribeCacheClusters' every 30 seconds until a+-- successful state is reached. An error is returned after 60 failed checks. cacheClusterDeleted :: Wait DescribeCacheClusters-cacheClusterDeleted = Wait- { _waitName = "CacheClusterDeleted"- , _waitAttempts = 60- , _waitDelay = 30- , _waitAcceptors =- [ matchError "CacheClusterNotFound" AcceptSuccess- , matchAny "creating" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "modifying" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- , matchAny "rebooting" AcceptFailure- (folding (concatOf dccrCacheClusters) . ccCacheClusterStatus . _Just)- ]+cacheClusterDeleted =+ Wait+ { _waitName = "CacheClusterDeleted"+ , _waitAttempts = 60+ , _waitDelay = 30+ , _waitAcceptors = [ matchError "CacheClusterNotFound" AcceptSuccess+ , matchAny+ "creating"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "modifying"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)+ , matchAny+ "rebooting"+ AcceptFailure+ (folding (concatOf drsCacheClusters) .+ ccCacheClusterStatus . _Just . to toTextCI)] } -replicationGroupAvailable :: Wait DescribeReplicationGroups-replicationGroupAvailable = Wait- { _waitName = "ReplicationGroupAvailable"- , _waitAttempts = 60- , _waitDelay = 30- , _waitAcceptors =- [ matchAll "available" AcceptSuccess- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "deleted" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "deleting" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "incompatible-network" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "restore-failed" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- ]+-- | Polls 'Network.AWS.ElastiCache.DescribeReplicationGroups' every 30 seconds until a+-- successful state is reached. An error is returned after 60 failed checks.+replicationGroupDeleted :: Wait DescribeReplicationGroups+replicationGroupDeleted =+ Wait+ { _waitName = "ReplicationGroupDeleted"+ , _waitAttempts = 60+ , _waitDelay = 30+ , _waitAcceptors = [ matchError+ "ReplicationGroupNotFoundFault"+ AcceptSuccess+ , matchAny+ "creating"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "modifying"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "rebooting"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)] } -replicationGroupDeleted :: Wait DescribeReplicationGroups-replicationGroupDeleted = Wait- { _waitName = "ReplicationGroupDeleted"- , _waitAttempts = 60- , _waitDelay = 30- , _waitAcceptors =- [ matchError "ReplicationGroupNotFoundFault" AcceptSuccess- , matchAny "creating" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "modifying" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- , matchAny "rebooting" AcceptFailure- (folding (concatOf drgrReplicationGroups) . rgStatus . _Just)- ]+-- | Polls 'Network.AWS.ElastiCache.DescribeReplicationGroups' every 30 seconds until a+-- successful state is reached. An error is returned after 60 failed checks.+replicationGroupAvailable :: Wait DescribeReplicationGroups+replicationGroupAvailable =+ Wait+ { _waitName = "ReplicationGroupAvailable"+ , _waitAttempts = 60+ , _waitDelay = 30+ , _waitAcceptors = [ matchAll+ "available"+ AcceptSuccess+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "deleted"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "deleting"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "incompatible-network"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)+ , matchAny+ "restore-failed"+ AcceptFailure+ (folding (concatOf drgrsReplicationGroups) .+ rgStatus . _Just . to toTextCI)] }
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Main (main) where++import Test.Tasty+import Test.AWS.ElastiCache+import Test.AWS.ElastiCache.Internal++main :: IO ()+main = defaultMain $ testGroup "ElastiCache"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/ElastiCache.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module : Test.AWS.ElastiCache+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.ElastiCache+ ( tests+ , fixtures+ ) where++import Network.AWS.ElastiCache+import Test.AWS.Gen.ElastiCache+import Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/ElastiCache/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.ElastiCache.Internal+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : This Source Code Form is subject to the terms of+-- the Mozilla Public License, v. 2.0.+-- A copy of the MPL can be found in the LICENSE file or+-- you can obtain it at http://mozilla.org/MPL/2.0/.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.ElastiCache.Internal where++import Test.AWS.Prelude
+ test/Test/AWS/Gen/ElastiCache.hs view
@@ -0,0 +1,668 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.AWS.Gen.ElastiCache+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.Gen.ElastiCache where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.ElastiCache+import Test.AWS.ElastiCache.Internal++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ testDeleteCacheSecurityGroup $+-- deleteCacheSecurityGroup+--+-- , testCreateReplicationGroup $+-- createReplicationGroup+--+-- , testDeleteCacheCluster $+-- deleteCacheCluster+--+-- , testRebootCacheCluster $+-- rebootCacheCluster+--+-- , testRevokeCacheSecurityGroupIngress $+-- revokeCacheSecurityGroupIngress+--+-- , testDescribeEvents $+-- describeEvents+--+-- , testDescribeEngineDefaultParameters $+-- describeEngineDefaultParameters+--+-- , testModifyCacheParameterGroup $+-- modifyCacheParameterGroup+--+-- , testCreateCacheCluster $+-- createCacheCluster+--+-- , testListTagsForResource $+-- listTagsForResource+--+-- , testDeleteReplicationGroup $+-- deleteReplicationGroup+--+-- , testPurchaseReservedCacheNodesOffering $+-- purchaseReservedCacheNodesOffering+--+-- , testDescribeCacheClusters $+-- describeCacheClusters+--+-- , testModifyReplicationGroup $+-- modifyReplicationGroup+--+-- , testRemoveTagsFromResource $+-- removeTagsFromResource+--+-- , testDescribeCacheParameters $+-- describeCacheParameters+--+-- , testDescribeCacheSubnetGroups $+-- describeCacheSubnetGroups+--+-- , testCreateCacheSecurityGroup $+-- createCacheSecurityGroup+--+-- , testAddTagsToResource $+-- addTagsToResource+--+-- , testAuthorizeCacheSecurityGroupIngress $+-- authorizeCacheSecurityGroupIngress+--+-- , testCopySnapshot $+-- copySnapshot+--+-- , testCreateCacheSubnetGroup $+-- createCacheSubnetGroup+--+-- , testDescribeCacheParameterGroups $+-- describeCacheParameterGroups+--+-- , testResetCacheParameterGroup $+-- resetCacheParameterGroup+--+-- , testDescribeSnapshots $+-- describeSnapshots+--+-- , testDescribeReservedCacheNodesOfferings $+-- describeReservedCacheNodesOfferings+--+-- , testDeleteSnapshot $+-- deleteSnapshot+--+-- , testDescribeReplicationGroups $+-- describeReplicationGroups+--+-- , testModifyCacheSubnetGroup $+-- modifyCacheSubnetGroup+--+-- , testCreateSnapshot $+-- createSnapshot+--+-- , testDescribeCacheSecurityGroups $+-- describeCacheSecurityGroups+--+-- , testDeleteCacheParameterGroup $+-- deleteCacheParameterGroup+--+-- , testDescribeReservedCacheNodes $+-- describeReservedCacheNodes+--+-- , testDescribeCacheEngineVersions $+-- describeCacheEngineVersions+--+-- , testModifyCacheCluster $+-- modifyCacheCluster+--+-- , testCreateCacheParameterGroup $+-- createCacheParameterGroup+--+-- , testDeleteCacheSubnetGroup $+-- deleteCacheSubnetGroup+--+-- ]++-- , testGroup "response"+-- [ testDeleteCacheSecurityGroupResponse $+-- deleteCacheSecurityGroupResponse+--+-- , testCreateReplicationGroupResponse $+-- createReplicationGroupResponse+--+-- , testDeleteCacheClusterResponse $+-- deleteCacheClusterResponse+--+-- , testRebootCacheClusterResponse $+-- rebootCacheClusterResponse+--+-- , testRevokeCacheSecurityGroupIngressResponse $+-- revokeCacheSecurityGroupIngressResponse+--+-- , testDescribeEventsResponse $+-- describeEventsResponse+--+-- , testDescribeEngineDefaultParametersResponse $+-- describeEngineDefaultParametersResponse+--+-- , testModifyCacheParameterGroupResponse $+-- cacheParameterGroupNameMessage+--+-- , testCreateCacheClusterResponse $+-- createCacheClusterResponse+--+-- , testListTagsForResourceResponse $+-- tagListMessage+--+-- , testDeleteReplicationGroupResponse $+-- deleteReplicationGroupResponse+--+-- , testPurchaseReservedCacheNodesOfferingResponse $+-- purchaseReservedCacheNodesOfferingResponse+--+-- , testDescribeCacheClustersResponse $+-- describeCacheClustersResponse+--+-- , testModifyReplicationGroupResponse $+-- modifyReplicationGroupResponse+--+-- , testRemoveTagsFromResourceResponse $+-- tagListMessage+--+-- , testDescribeCacheParametersResponse $+-- describeCacheParametersResponse+--+-- , testDescribeCacheSubnetGroupsResponse $+-- describeCacheSubnetGroupsResponse+--+-- , testCreateCacheSecurityGroupResponse $+-- createCacheSecurityGroupResponse+--+-- , testAddTagsToResourceResponse $+-- tagListMessage+--+-- , testAuthorizeCacheSecurityGroupIngressResponse $+-- authorizeCacheSecurityGroupIngressResponse+--+-- , testCopySnapshotResponse $+-- copySnapshotResponse+--+-- , testCreateCacheSubnetGroupResponse $+-- createCacheSubnetGroupResponse+--+-- , testDescribeCacheParameterGroupsResponse $+-- describeCacheParameterGroupsResponse+--+-- , testResetCacheParameterGroupResponse $+-- cacheParameterGroupNameMessage+--+-- , testDescribeSnapshotsResponse $+-- describeSnapshotsResponse+--+-- , testDescribeReservedCacheNodesOfferingsResponse $+-- describeReservedCacheNodesOfferingsResponse+--+-- , testDeleteSnapshotResponse $+-- deleteSnapshotResponse+--+-- , testDescribeReplicationGroupsResponse $+-- describeReplicationGroupsResponse+--+-- , testModifyCacheSubnetGroupResponse $+-- modifyCacheSubnetGroupResponse+--+-- , testCreateSnapshotResponse $+-- createSnapshotResponse+--+-- , testDescribeCacheSecurityGroupsResponse $+-- describeCacheSecurityGroupsResponse+--+-- , testDeleteCacheParameterGroupResponse $+-- deleteCacheParameterGroupResponse+--+-- , testDescribeReservedCacheNodesResponse $+-- describeReservedCacheNodesResponse+--+-- , testDescribeCacheEngineVersionsResponse $+-- describeCacheEngineVersionsResponse+--+-- , testModifyCacheClusterResponse $+-- modifyCacheClusterResponse+--+-- , testCreateCacheParameterGroupResponse $+-- createCacheParameterGroupResponse+--+-- , testDeleteCacheSubnetGroupResponse $+-- deleteCacheSubnetGroupResponse+--+-- ]+-- ]++-- Requests++testDeleteCacheSecurityGroup :: DeleteCacheSecurityGroup -> TestTree+testDeleteCacheSecurityGroup = req+ "DeleteCacheSecurityGroup"+ "fixture/DeleteCacheSecurityGroup"++testCreateReplicationGroup :: CreateReplicationGroup -> TestTree+testCreateReplicationGroup = req+ "CreateReplicationGroup"+ "fixture/CreateReplicationGroup"++testDeleteCacheCluster :: DeleteCacheCluster -> TestTree+testDeleteCacheCluster = req+ "DeleteCacheCluster"+ "fixture/DeleteCacheCluster"++testRebootCacheCluster :: RebootCacheCluster -> TestTree+testRebootCacheCluster = req+ "RebootCacheCluster"+ "fixture/RebootCacheCluster"++testRevokeCacheSecurityGroupIngress :: RevokeCacheSecurityGroupIngress -> TestTree+testRevokeCacheSecurityGroupIngress = req+ "RevokeCacheSecurityGroupIngress"+ "fixture/RevokeCacheSecurityGroupIngress"++testDescribeEvents :: DescribeEvents -> TestTree+testDescribeEvents = req+ "DescribeEvents"+ "fixture/DescribeEvents"++testDescribeEngineDefaultParameters :: DescribeEngineDefaultParameters -> TestTree+testDescribeEngineDefaultParameters = req+ "DescribeEngineDefaultParameters"+ "fixture/DescribeEngineDefaultParameters"++testModifyCacheParameterGroup :: ModifyCacheParameterGroup -> TestTree+testModifyCacheParameterGroup = req+ "ModifyCacheParameterGroup"+ "fixture/ModifyCacheParameterGroup"++testCreateCacheCluster :: CreateCacheCluster -> TestTree+testCreateCacheCluster = req+ "CreateCacheCluster"+ "fixture/CreateCacheCluster"++testListTagsForResource :: ListTagsForResource -> TestTree+testListTagsForResource = req+ "ListTagsForResource"+ "fixture/ListTagsForResource"++testDeleteReplicationGroup :: DeleteReplicationGroup -> TestTree+testDeleteReplicationGroup = req+ "DeleteReplicationGroup"+ "fixture/DeleteReplicationGroup"++testPurchaseReservedCacheNodesOffering :: PurchaseReservedCacheNodesOffering -> TestTree+testPurchaseReservedCacheNodesOffering = req+ "PurchaseReservedCacheNodesOffering"+ "fixture/PurchaseReservedCacheNodesOffering"++testDescribeCacheClusters :: DescribeCacheClusters -> TestTree+testDescribeCacheClusters = req+ "DescribeCacheClusters"+ "fixture/DescribeCacheClusters"++testModifyReplicationGroup :: ModifyReplicationGroup -> TestTree+testModifyReplicationGroup = req+ "ModifyReplicationGroup"+ "fixture/ModifyReplicationGroup"++testRemoveTagsFromResource :: RemoveTagsFromResource -> TestTree+testRemoveTagsFromResource = req+ "RemoveTagsFromResource"+ "fixture/RemoveTagsFromResource"++testDescribeCacheParameters :: DescribeCacheParameters -> TestTree+testDescribeCacheParameters = req+ "DescribeCacheParameters"+ "fixture/DescribeCacheParameters"++testDescribeCacheSubnetGroups :: DescribeCacheSubnetGroups -> TestTree+testDescribeCacheSubnetGroups = req+ "DescribeCacheSubnetGroups"+ "fixture/DescribeCacheSubnetGroups"++testCreateCacheSecurityGroup :: CreateCacheSecurityGroup -> TestTree+testCreateCacheSecurityGroup = req+ "CreateCacheSecurityGroup"+ "fixture/CreateCacheSecurityGroup"++testAddTagsToResource :: AddTagsToResource -> TestTree+testAddTagsToResource = req+ "AddTagsToResource"+ "fixture/AddTagsToResource"++testAuthorizeCacheSecurityGroupIngress :: AuthorizeCacheSecurityGroupIngress -> TestTree+testAuthorizeCacheSecurityGroupIngress = req+ "AuthorizeCacheSecurityGroupIngress"+ "fixture/AuthorizeCacheSecurityGroupIngress"++testCopySnapshot :: CopySnapshot -> TestTree+testCopySnapshot = req+ "CopySnapshot"+ "fixture/CopySnapshot"++testCreateCacheSubnetGroup :: CreateCacheSubnetGroup -> TestTree+testCreateCacheSubnetGroup = req+ "CreateCacheSubnetGroup"+ "fixture/CreateCacheSubnetGroup"++testDescribeCacheParameterGroups :: DescribeCacheParameterGroups -> TestTree+testDescribeCacheParameterGroups = req+ "DescribeCacheParameterGroups"+ "fixture/DescribeCacheParameterGroups"++testResetCacheParameterGroup :: ResetCacheParameterGroup -> TestTree+testResetCacheParameterGroup = req+ "ResetCacheParameterGroup"+ "fixture/ResetCacheParameterGroup"++testDescribeSnapshots :: DescribeSnapshots -> TestTree+testDescribeSnapshots = req+ "DescribeSnapshots"+ "fixture/DescribeSnapshots"++testDescribeReservedCacheNodesOfferings :: DescribeReservedCacheNodesOfferings -> TestTree+testDescribeReservedCacheNodesOfferings = req+ "DescribeReservedCacheNodesOfferings"+ "fixture/DescribeReservedCacheNodesOfferings"++testDeleteSnapshot :: DeleteSnapshot -> TestTree+testDeleteSnapshot = req+ "DeleteSnapshot"+ "fixture/DeleteSnapshot"++testDescribeReplicationGroups :: DescribeReplicationGroups -> TestTree+testDescribeReplicationGroups = req+ "DescribeReplicationGroups"+ "fixture/DescribeReplicationGroups"++testModifyCacheSubnetGroup :: ModifyCacheSubnetGroup -> TestTree+testModifyCacheSubnetGroup = req+ "ModifyCacheSubnetGroup"+ "fixture/ModifyCacheSubnetGroup"++testCreateSnapshot :: CreateSnapshot -> TestTree+testCreateSnapshot = req+ "CreateSnapshot"+ "fixture/CreateSnapshot"++testDescribeCacheSecurityGroups :: DescribeCacheSecurityGroups -> TestTree+testDescribeCacheSecurityGroups = req+ "DescribeCacheSecurityGroups"+ "fixture/DescribeCacheSecurityGroups"++testDeleteCacheParameterGroup :: DeleteCacheParameterGroup -> TestTree+testDeleteCacheParameterGroup = req+ "DeleteCacheParameterGroup"+ "fixture/DeleteCacheParameterGroup"++testDescribeReservedCacheNodes :: DescribeReservedCacheNodes -> TestTree+testDescribeReservedCacheNodes = req+ "DescribeReservedCacheNodes"+ "fixture/DescribeReservedCacheNodes"++testDescribeCacheEngineVersions :: DescribeCacheEngineVersions -> TestTree+testDescribeCacheEngineVersions = req+ "DescribeCacheEngineVersions"+ "fixture/DescribeCacheEngineVersions"++testModifyCacheCluster :: ModifyCacheCluster -> TestTree+testModifyCacheCluster = req+ "ModifyCacheCluster"+ "fixture/ModifyCacheCluster"++testCreateCacheParameterGroup :: CreateCacheParameterGroup -> TestTree+testCreateCacheParameterGroup = req+ "CreateCacheParameterGroup"+ "fixture/CreateCacheParameterGroup"++testDeleteCacheSubnetGroup :: DeleteCacheSubnetGroup -> TestTree+testDeleteCacheSubnetGroup = req+ "DeleteCacheSubnetGroup"+ "fixture/DeleteCacheSubnetGroup"++-- Responses++testDeleteCacheSecurityGroupResponse :: DeleteCacheSecurityGroupResponse -> TestTree+testDeleteCacheSecurityGroupResponse = res+ "DeleteCacheSecurityGroupResponse"+ "fixture/DeleteCacheSecurityGroupResponse"+ (Proxy :: Proxy DeleteCacheSecurityGroup)++testCreateReplicationGroupResponse :: CreateReplicationGroupResponse -> TestTree+testCreateReplicationGroupResponse = res+ "CreateReplicationGroupResponse"+ "fixture/CreateReplicationGroupResponse"+ (Proxy :: Proxy CreateReplicationGroup)++testDeleteCacheClusterResponse :: DeleteCacheClusterResponse -> TestTree+testDeleteCacheClusterResponse = res+ "DeleteCacheClusterResponse"+ "fixture/DeleteCacheClusterResponse"+ (Proxy :: Proxy DeleteCacheCluster)++testRebootCacheClusterResponse :: RebootCacheClusterResponse -> TestTree+testRebootCacheClusterResponse = res+ "RebootCacheClusterResponse"+ "fixture/RebootCacheClusterResponse"+ (Proxy :: Proxy RebootCacheCluster)++testRevokeCacheSecurityGroupIngressResponse :: RevokeCacheSecurityGroupIngressResponse -> TestTree+testRevokeCacheSecurityGroupIngressResponse = res+ "RevokeCacheSecurityGroupIngressResponse"+ "fixture/RevokeCacheSecurityGroupIngressResponse"+ (Proxy :: Proxy RevokeCacheSecurityGroupIngress)++testDescribeEventsResponse :: DescribeEventsResponse -> TestTree+testDescribeEventsResponse = res+ "DescribeEventsResponse"+ "fixture/DescribeEventsResponse"+ (Proxy :: Proxy DescribeEvents)++testDescribeEngineDefaultParametersResponse :: DescribeEngineDefaultParametersResponse -> TestTree+testDescribeEngineDefaultParametersResponse = res+ "DescribeEngineDefaultParametersResponse"+ "fixture/DescribeEngineDefaultParametersResponse"+ (Proxy :: Proxy DescribeEngineDefaultParameters)++testModifyCacheParameterGroupResponse :: CacheParameterGroupNameMessage -> TestTree+testModifyCacheParameterGroupResponse = res+ "ModifyCacheParameterGroupResponse"+ "fixture/ModifyCacheParameterGroupResponse"+ (Proxy :: Proxy ModifyCacheParameterGroup)++testCreateCacheClusterResponse :: CreateCacheClusterResponse -> TestTree+testCreateCacheClusterResponse = res+ "CreateCacheClusterResponse"+ "fixture/CreateCacheClusterResponse"+ (Proxy :: Proxy CreateCacheCluster)++testListTagsForResourceResponse :: TagListMessage -> TestTree+testListTagsForResourceResponse = res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse"+ (Proxy :: Proxy ListTagsForResource)++testDeleteReplicationGroupResponse :: DeleteReplicationGroupResponse -> TestTree+testDeleteReplicationGroupResponse = res+ "DeleteReplicationGroupResponse"+ "fixture/DeleteReplicationGroupResponse"+ (Proxy :: Proxy DeleteReplicationGroup)++testPurchaseReservedCacheNodesOfferingResponse :: PurchaseReservedCacheNodesOfferingResponse -> TestTree+testPurchaseReservedCacheNodesOfferingResponse = res+ "PurchaseReservedCacheNodesOfferingResponse"+ "fixture/PurchaseReservedCacheNodesOfferingResponse"+ (Proxy :: Proxy PurchaseReservedCacheNodesOffering)++testDescribeCacheClustersResponse :: DescribeCacheClustersResponse -> TestTree+testDescribeCacheClustersResponse = res+ "DescribeCacheClustersResponse"+ "fixture/DescribeCacheClustersResponse"+ (Proxy :: Proxy DescribeCacheClusters)++testModifyReplicationGroupResponse :: ModifyReplicationGroupResponse -> TestTree+testModifyReplicationGroupResponse = res+ "ModifyReplicationGroupResponse"+ "fixture/ModifyReplicationGroupResponse"+ (Proxy :: Proxy ModifyReplicationGroup)++testRemoveTagsFromResourceResponse :: TagListMessage -> TestTree+testRemoveTagsFromResourceResponse = res+ "RemoveTagsFromResourceResponse"+ "fixture/RemoveTagsFromResourceResponse"+ (Proxy :: Proxy RemoveTagsFromResource)++testDescribeCacheParametersResponse :: DescribeCacheParametersResponse -> TestTree+testDescribeCacheParametersResponse = res+ "DescribeCacheParametersResponse"+ "fixture/DescribeCacheParametersResponse"+ (Proxy :: Proxy DescribeCacheParameters)++testDescribeCacheSubnetGroupsResponse :: DescribeCacheSubnetGroupsResponse -> TestTree+testDescribeCacheSubnetGroupsResponse = res+ "DescribeCacheSubnetGroupsResponse"+ "fixture/DescribeCacheSubnetGroupsResponse"+ (Proxy :: Proxy DescribeCacheSubnetGroups)++testCreateCacheSecurityGroupResponse :: CreateCacheSecurityGroupResponse -> TestTree+testCreateCacheSecurityGroupResponse = res+ "CreateCacheSecurityGroupResponse"+ "fixture/CreateCacheSecurityGroupResponse"+ (Proxy :: Proxy CreateCacheSecurityGroup)++testAddTagsToResourceResponse :: TagListMessage -> TestTree+testAddTagsToResourceResponse = res+ "AddTagsToResourceResponse"+ "fixture/AddTagsToResourceResponse"+ (Proxy :: Proxy AddTagsToResource)++testAuthorizeCacheSecurityGroupIngressResponse :: AuthorizeCacheSecurityGroupIngressResponse -> TestTree+testAuthorizeCacheSecurityGroupIngressResponse = res+ "AuthorizeCacheSecurityGroupIngressResponse"+ "fixture/AuthorizeCacheSecurityGroupIngressResponse"+ (Proxy :: Proxy AuthorizeCacheSecurityGroupIngress)++testCopySnapshotResponse :: CopySnapshotResponse -> TestTree+testCopySnapshotResponse = res+ "CopySnapshotResponse"+ "fixture/CopySnapshotResponse"+ (Proxy :: Proxy CopySnapshot)++testCreateCacheSubnetGroupResponse :: CreateCacheSubnetGroupResponse -> TestTree+testCreateCacheSubnetGroupResponse = res+ "CreateCacheSubnetGroupResponse"+ "fixture/CreateCacheSubnetGroupResponse"+ (Proxy :: Proxy CreateCacheSubnetGroup)++testDescribeCacheParameterGroupsResponse :: DescribeCacheParameterGroupsResponse -> TestTree+testDescribeCacheParameterGroupsResponse = res+ "DescribeCacheParameterGroupsResponse"+ "fixture/DescribeCacheParameterGroupsResponse"+ (Proxy :: Proxy DescribeCacheParameterGroups)++testResetCacheParameterGroupResponse :: CacheParameterGroupNameMessage -> TestTree+testResetCacheParameterGroupResponse = res+ "ResetCacheParameterGroupResponse"+ "fixture/ResetCacheParameterGroupResponse"+ (Proxy :: Proxy ResetCacheParameterGroup)++testDescribeSnapshotsResponse :: DescribeSnapshotsResponse -> TestTree+testDescribeSnapshotsResponse = res+ "DescribeSnapshotsResponse"+ "fixture/DescribeSnapshotsResponse"+ (Proxy :: Proxy DescribeSnapshots)++testDescribeReservedCacheNodesOfferingsResponse :: DescribeReservedCacheNodesOfferingsResponse -> TestTree+testDescribeReservedCacheNodesOfferingsResponse = res+ "DescribeReservedCacheNodesOfferingsResponse"+ "fixture/DescribeReservedCacheNodesOfferingsResponse"+ (Proxy :: Proxy DescribeReservedCacheNodesOfferings)++testDeleteSnapshotResponse :: DeleteSnapshotResponse -> TestTree+testDeleteSnapshotResponse = res+ "DeleteSnapshotResponse"+ "fixture/DeleteSnapshotResponse"+ (Proxy :: Proxy DeleteSnapshot)++testDescribeReplicationGroupsResponse :: DescribeReplicationGroupsResponse -> TestTree+testDescribeReplicationGroupsResponse = res+ "DescribeReplicationGroupsResponse"+ "fixture/DescribeReplicationGroupsResponse"+ (Proxy :: Proxy DescribeReplicationGroups)++testModifyCacheSubnetGroupResponse :: ModifyCacheSubnetGroupResponse -> TestTree+testModifyCacheSubnetGroupResponse = res+ "ModifyCacheSubnetGroupResponse"+ "fixture/ModifyCacheSubnetGroupResponse"+ (Proxy :: Proxy ModifyCacheSubnetGroup)++testCreateSnapshotResponse :: CreateSnapshotResponse -> TestTree+testCreateSnapshotResponse = res+ "CreateSnapshotResponse"+ "fixture/CreateSnapshotResponse"+ (Proxy :: Proxy CreateSnapshot)++testDescribeCacheSecurityGroupsResponse :: DescribeCacheSecurityGroupsResponse -> TestTree+testDescribeCacheSecurityGroupsResponse = res+ "DescribeCacheSecurityGroupsResponse"+ "fixture/DescribeCacheSecurityGroupsResponse"+ (Proxy :: Proxy DescribeCacheSecurityGroups)++testDeleteCacheParameterGroupResponse :: DeleteCacheParameterGroupResponse -> TestTree+testDeleteCacheParameterGroupResponse = res+ "DeleteCacheParameterGroupResponse"+ "fixture/DeleteCacheParameterGroupResponse"+ (Proxy :: Proxy DeleteCacheParameterGroup)++testDescribeReservedCacheNodesResponse :: DescribeReservedCacheNodesResponse -> TestTree+testDescribeReservedCacheNodesResponse = res+ "DescribeReservedCacheNodesResponse"+ "fixture/DescribeReservedCacheNodesResponse"+ (Proxy :: Proxy DescribeReservedCacheNodes)++testDescribeCacheEngineVersionsResponse :: DescribeCacheEngineVersionsResponse -> TestTree+testDescribeCacheEngineVersionsResponse = res+ "DescribeCacheEngineVersionsResponse"+ "fixture/DescribeCacheEngineVersionsResponse"+ (Proxy :: Proxy DescribeCacheEngineVersions)++testModifyCacheClusterResponse :: ModifyCacheClusterResponse -> TestTree+testModifyCacheClusterResponse = res+ "ModifyCacheClusterResponse"+ "fixture/ModifyCacheClusterResponse"+ (Proxy :: Proxy ModifyCacheCluster)++testCreateCacheParameterGroupResponse :: CreateCacheParameterGroupResponse -> TestTree+testCreateCacheParameterGroupResponse = res+ "CreateCacheParameterGroupResponse"+ "fixture/CreateCacheParameterGroupResponse"+ (Proxy :: Proxy CreateCacheParameterGroup)++testDeleteCacheSubnetGroupResponse :: DeleteCacheSubnetGroupResponse -> TestTree+testDeleteCacheSubnetGroupResponse = res+ "DeleteCacheSubnetGroupResponse"+ "fixture/DeleteCacheSubnetGroupResponse"+ (Proxy :: Proxy DeleteCacheSubnetGroup)