    # File lib/fog/aws/requests/elasticache/create_cache_cluster.rb, line 27
            def create_cache_cluster(id, options = {})
              # Construct Cache Security Group parameters in the format:
              #   CacheSecurityGroupNames.member.N => "security_group_name"
              group_names = options[:security_group_names] || ['default']
              sec_group_params = group_names.inject({}) do |group_hash, name|
                index = group_names.index(name) + 1
                group_hash["CacheSecurityGroupNames.member.#{index}"] = name
                group_hash
              end
              # Merge the Cache Security Group parameters with the normal options
              request(sec_group_params.merge(
                'Action'          => 'CreateCacheCluster',
                'CacheClusterId'  => id.strip,
                'CacheNodeType'   => options[:node_type]  || 'cache.m1.large',
                'Engine'          => options[:engine]     || 'memcached',
                'NumCacheNodes'   => options[:num_nodes]  || 1,
                'AutoMinorVersionUpgrade'     => options[:auto_minor_version_upgrade],
                'CacheParameterGroupName'     => options[:parameter_group_name],
                'EngineVersion'               => options[:engine_version],
                'NotificationTopicArn'        => options[:notification_topic_arn],
                'Port'                        => options[:port],
                'PreferredAvailabilityZone'   => options[:preferred_availablility_zone],
                'PreferredMaintenanceWindow'  => options[:preferred_maintenance_window],
                :parser => Fog::Parsers::AWS::Elasticache::SingleCacheCluster.new
              ))
            end