File Coverage

blib/lib/Email/Folder/Exchange.pm
Criterion Covered Total %
statement 16 18 88.8
branch n/a
condition n/a
subroutine 6 6 100.0
pod n/a
total 22 24 91.6


line stmt bran cond sub pod time code
1             package Email::Folder::Exchange;
2 2     2   26958 use base qw(Email::Folder);
  2         5  
  2         1814  
3              
4 2     2   57909 use strict;
  2         5  
  2         56  
5 2     2   12 use warnings;
  2         8  
  2         79  
6              
7             our $VERSION = '2.0';
8              
9 2     2   10 use Email::Folder;
  2         4  
  2         43  
10 2     2   1775 use Email::Folder::Exchange::WebDAV;
  2         6  
  2         62  
11 2     2   1595 use Email::Folder::Exchange::EWS;
  0            
  0            
12             use Data::Dumper;
13              
14             use URI;
15             use LWP::UserAgent;
16              
17             sub new {
18             my ($self, $class, $url, $username, $password) = ({}, @_);
19             bless $self, $class;
20              
21             # try EWS first
22             my $folder;
23             eval {
24             $folder = Email::Folder::Exchange::EWS->new($url, $username, $password);
25             };
26             if($@ =~ /Not Found/) {
27             # try WebDAV second
28             $folder = Email::Folder::Exchange::WebDAV->new($url, $username, $password);
29             }
30             # re-raise
31             die $@ if $@;
32              
33             return $folder;
34             }
35              
36             1;
37              
38             __END__