File Coverage

blib/lib/Net/Azure/CognitiveServices/Face.pm
Criterion Covered Total %
statement 32 32 100.0
branch 2 4 50.0
condition 1 3 33.3
subroutine 10 10 100.0
pod 2 2 100.0
total 47 51 92.1


line stmt bran cond sub pod time code
1             package Net::Azure::CognitiveServices::Face;
2 29     29   1856052 use 5.008001;
  29         367  
3 29     29   165 use strict;
  29         61  
  29         577  
4 29     29   143 use warnings;
  29         75  
  29         871  
5 29     29   13105 use Net::Azure::CognitiveServices::Face::Face;
  29         107  
  29         1042  
6 29     29   14269 use Net::Azure::CognitiveServices::Face::FaceList;
  29         89  
  29         765  
7 29     29   12906 use Net::Azure::CognitiveServices::Face::Person;
  29         512  
  29         791  
8 29     29   12599 use Net::Azure::CognitiveServices::Face::PersonGroup;
  29         83  
  29         6180  
9              
10             our $VERSION = "0.04";
11             our $AUTOLOAD;
12             our $INSTANCES = {};
13             our $ACCESS_KEY;
14             our $ENDPOINT = 'https://westus.api.cognitive.microsoft.com';
15              
16             sub access_key {
17 28     28 1 2557 my ($class, $key) = @_;
18 28 50       130 if ($key) {
19 28         80 $ACCESS_KEY = $key;
20             }
21 28         92 return $ACCESS_KEY;
22             }
23              
24             sub endpoint {
25 1     1 1 7 my ($class, $url) = @_;
26 1 50       3 if ($url) {
27 1         3 $ENDPOINT = $url;
28             }
29 1         4 return $ENDPOINT;
30             }
31              
32             sub AUTOLOAD {
33 28     28   320 my $class = shift;
34 28         75 my $subclass = $AUTOLOAD;
35 28   33     480 $INSTANCES->{$subclass} ||= $subclass->new(access_key => $ACCESS_KEY, endpoint => $ENDPOINT);
36 28         104 $INSTANCES->{$subclass};
37             }
38              
39             1;
40             __END__