File Coverage

blib/lib/WebService/SyncSBS/D2H.pm
Criterion Covered Total %
statement 4 6 66.6
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 6 8 75.0


line stmt bran cond sub pod time code
1             package WebService::SyncSBS::D2H;
2              
3 1     1   24051 use strict;
  1         3  
  1         76  
4             require Exporter;
5              
6             our @ISA = qw(Exporter);
7             our $VERSION = '0.03';
8              
9 1     1   646 use WebService::SyncSBS::Delicious;
  0            
  0            
10             use WebService::SyncSBS::Hatena;
11              
12              
13             sub new {
14             my $class = shift;
15             my $args = shift;
16              
17             $args->{delicious_recent_num} = 20 unless $args->{delicious_recent_num} =~ /^\d+$/;
18             $args->{delicious_recent_num} = 20 if $args->{delicious_recent_num} > 100;
19              
20             my $self = bless {
21             delicious => WebService::SyncSBS::Delicious->new({
22             user => $args->{delicious_user},
23             pass => $args->{delicious_pass},
24             recent_num => $args->{delicious_recent_num},
25             }),
26             hatena => WebService::SyncSBS::Hatena->new({
27             user => $args->{hatena_user},
28             pass => $args->{hatena_pass},
29             }),
30             }, $class;
31              
32             return $self;
33             }
34              
35             sub sync {
36             my $self = shift;
37              
38             my $delicious = $self->{delicious}->get_recent;
39             my $hatena = $self->{hatena}->get_recent;
40              
41             #del.icio.us to hatena
42             foreach (keys %$delicious) {
43             unless ($hatena->{$_}->{url}) {
44             $self->{hatena}->add($delicious->{$_});
45             }
46             }
47              
48             #hatena to del.icio.us
49             foreach (keys %$hatena) {
50             unless ($delicious->{$_}->{url}) {
51             $self->{delicious}->add($hatena->{$_});
52             }
53             }
54             }
55              
56             sub add {
57             }
58              
59             sub delete {
60             my $self = shift;
61             my $url = shift;
62              
63             $self->{delicious}->delete($url);
64             $self->{hatena}->delete($url);
65             }
66              
67             1;
68             __END__