# File lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb, line 28
        def authorize_cache_security_group_ingress(name, ec2_name, ec2_owner_id)
          opts = {
            'EC2SecurityGroupName' => ec2_name,
            'EC2SecurityGroupOwnerId' => ec2_owner_id
          }

          if sec_group = self.data[:security_groups][name]

            if sec_group['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
              raise Fog::AWS::Elasticache::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['EC2SecurityGroupName']} is alreay defined")
            end
            sec_group['EC2SecurityGroups'] << opts.merge({'Status' => 'authorizing'})

            Excon::Response.new(
                {
                    :status => 200,
                    :body => {
                        'ResponseMetadata'=>{ 'RequestId'=> Fog::AWS::Mock.request_id },
                        'CacheSecurityGroup' => sec_group
                    }
                }
            )
          else
            raise Fog::AWS::Elasticache::NotFound.new("CacheSecurityGroupNotFound => #{name} not found")
          end
        end