File Coverage

blib/lib/WebService/BuzzurlAPI/Util.pm
Criterion Covered Total %
statement 12 19 63.1
branch 2 8 25.0
condition 2 9 22.2
subroutine 4 5 80.0
pod 2 2 100.0
total 22 43 51.1


line stmt bran cond sub pod time code
1             package WebService::BuzzurlAPI::Util;
2              
3             =pod
4              
5             =head1 NAME
6              
7             WebService::BuzzurlAPI::Util - Buzzurl WebService API utility module
8              
9             =head1 VERSION
10              
11             0.02
12              
13             =head1 DESCRIPTION
14              
15             Buzzurl WebService API utility module
16              
17             =head1 METHOD
18              
19             =cut
20              
21 3     3   16 use strict;
  3         6  
  3         115  
22 3     3   17 use base qw(Exporter);
  3         4  
  3         219  
23 3     3   433673 use Encode;
  3         203863  
  3         1360  
24              
25             our(@EXPORT_OK, $PKG_REGEXP, $VERSION);
26              
27             @EXPORT_OK = qw(drop_utf8flag urlencode);
28             $PKG_REGEXP = qr/^WebService::BuzzurlAPI/;
29             $VERSION = 0.02;
30              
31             =pod
32              
33             =head2 drop_utf8flag
34              
35             Drop utf8flag
36              
37             Example:
38              
39             my $str = WebService::BuzzurlAPI::Util::drop_utf8flag($utf8flagstr);
40              
41             =cut
42              
43             sub drop_utf8flag {
44              
45 2 50 33 2 1 30 my $str = (scalar @_ == 2 && (ref($_[0]) =~ $PKG_REGEXP || $_[0] =~ $PKG_REGEXP)) ? $_[1] : $_[0];
46 2 50 33     48 if($str ne "" && Encode::is_utf8($str)){
47 0         0 $str = Encode::encode_utf8($str);
48             }
49 2         10 return $str;
50             }
51              
52             =pod
53              
54             =head2 urlencode
55              
56             URLEncoding
57              
58             Example:
59              
60             my $str = WebService::BuzzurlAPI::Util::urlencode($str);
61              
62             =cut
63              
64             sub urlencode {
65              
66 0 0 0 0 1   my $str = (scalar @_ == 2 && (ref($_[0]) =~ $PKG_REGEXP || $_[0] =~ $PKG_REGEXP)) ? $_[1] : $_[0];
67 0 0         if($str ne ""){
68 0           $str =~ s/([^\w ])/"%" . unpack("H2", $1)/eg;
  0            
69 0           $str =~ tr/ /+/;
70             }
71 0           return $str;
72             }
73              
74             1;
75              
76             __END__