Amazon-SQS-Client

 view release on metacpan or  search on metacpan

lib/Amazon/SQS/Client.pm  view on Meta::CPAN

  chop $data;

  return $data;
}

########################################################################
sub _urlencode {
########################################################################
  my ( $self, $value, $path ) = @_;

  use URI::Escape qw(uri_escape_utf8);

  my $escapepattern = '^A-Za-z0-9\-_.~';

  if ($path) {
    $escapepattern = $escapepattern . $SLASH;
  }

  return uri_escape_utf8( $value, $escapepattern );
}

#
# Computes RFC 2104-compliant HMAC signature.
#
sub _sign {
  my ( $self, $data, $key, $algorithm ) = @_;

  my $output = $EMPTY;

lib/Amazon/SQS/Model.pm  view on Meta::CPAN

        if ( _isComplexType( $fieldType->[0] ) ) {
          for my $item ( @{$fieldValue} ) {
            $xml .= "<$fieldName>";
            $xml .= $item->_toXMLFragment();
            $xml .= "</$fieldName>";
          }
        }
        else {
          for my $item ($fieldValue) {
            $xml .= "<$fieldName>";
            $xml .= $self->_escapeXML($item);
            $xml .= "</$fieldName>";
          }
        }
      }
      else {
        if ( _isComplexType($fieldType) ) {
          $xml .= "<$fieldName>";
          $xml .= $fieldValue->_toXMLFragment();
          $xml .= "</$fieldName>";
        }
        else {
          $xml .= "<$fieldName>";
          $xml .= $self->_escapeXML($fieldValue);
          $xml .= "</$fieldName>";
        }
      }
    }
  }

  return $xml;
}

#
# Escape special XML characters
# return string with escaped XML characters
#
sub _escapeXML {
  my ( $self, $str ) = @_;

  $str =~ s/&/&amp;/xsmg;
  $str =~ s/</&lt;/xsmg;
  $str =~ s/>/&gt;/xsmg;
  $str =~ s/'/&#039;/xsmg;
  $str =~ s/"/&quot;/xsmg;

  return $str;
}



( run in 0.479 second using v1.01-cache-2.11-cpan-c21f80fb71c )