FRTc@sVddlZddlmZddlmZddlmZdefdYZdS(iN(tjson(tAWSQueryConnection(t RegionInfotElastiCacheConnectioncBsZeZdZdZdZdZdZdZdZd%d%d%d%d%d%d%d%d%d%d%d%d%d%d%dZ dZ d Z d Z d Zd Zd ZdZdZdZd%d%d%d%dZd%d%d%d%d%d%dZd%d%d%dZd%d%d%dZd%d%d%dZd%d%d%dZd%d%dZd%d%d%d%d%d%d%dZd%d%d%dZd%d%d%d%d%d%d%d%dZd%d%d%d%d%d%d%dZd%d%d%d%d%d%d%d%d%d%d%d ZdZ d%d%dZ!d%d%d%d%d%d%d%d%d%d%d%d Z"d%d%d Z#d!Z$d%d"Z%d#Z&d$Z'RS(&s 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 set-up, 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. s 2013-06-15s us-east-1s#elasticache.us-east-1.amazonaws.comcKsg|jd}|s0t||j|j}n|d=|j|dR6tnotification_topic_statustapply_immediatelyR5R?R((sD/opt/freeware/lib/python2.7/site-packages/boto/elasticache/layer1.pytmodify_cache_clustersFl                         c CsEi|d6}|j||dd |jddddd d d |S( s The ModifyCacheParameterGroup operation 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. :type cache_parameter_group_name: string :param cache_parameter_group_name: The name of the cache parameter group to modify. :type parameter_name_values: list :param parameter_name_values: 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. R$sParameterNameValues.membert ParameterNametParameterValueRtModifyCacheParameterGroupRRRRR(RR(tbuild_complex_list_paramsR(R R6tparameter_name_valuesR((sD/opt/freeware/lib/python2.7/site-packages/boto/elasticache/layer1.pytmodify_cache_parameter_groups  c Csji|d6}|d k r&||dR6RRR5R?RQR((sD/opt/freeware/lib/python2.7/site-packages/boto/elasticache/layer1.pytmodify_replication_group_sBc                        c Csai|d6}|d k r&||d The RebootCacheCluster operation reboots some, or all, of the cache cluster 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 cluster node being rebooted) to be lost. When the reboot is complete, a cache cluster event is created. :type cache_cluster_id: string :param cache_cluster_id: The cache cluster identifier. This parameter is stored as a lowercase string. :type cache_node_ids_to_reboot: list :param cache_node_ids_to_reboot: A list of cache cluster 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 cluster node IDs. RsCacheNodeIdsToReboot.memberRtRebootCacheClusterRRRRR(R-R(R R0tcache_node_ids_to_rebootR((sD/opt/freeware/lib/python2.7/site-packages/boto/elasticache/layer1.pytreboot_cache_clusters   c Csji|d6}|j||dd |dk rHt|j|ds