line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package Message::Passing::AMQP::Role::HasAChannel; |
2
|
1
|
|
|
1
|
|
567
|
use Moose::Role; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
4
|
|
3
|
1
|
|
|
1
|
|
4157
|
use Scalar::Util qw/ weaken /; |
|
1
|
|
|
|
|
2
|
|
|
1
|
|
|
|
|
62
|
|
4
|
1
|
|
|
1
|
|
5
|
use AnyEvent; |
|
1
|
|
|
|
|
1
|
|
|
1
|
|
|
|
|
17
|
|
5
|
1
|
|
|
1
|
|
354
|
use AnyEvent::RabbitMQ; |
|
0
|
|
|
|
|
|
|
|
0
|
|
|
|
|
|
|
6
|
|
|
|
|
|
|
use namespace::autoclean; |
7
|
|
|
|
|
|
|
|
8
|
|
|
|
|
|
|
with 'Message::Passing::AMQP::Role::HasAConnection'; |
9
|
|
|
|
|
|
|
|
10
|
|
|
|
|
|
|
has _channel => ( |
11
|
|
|
|
|
|
|
is => 'ro', |
12
|
|
|
|
|
|
|
writer => '_set_channel', |
13
|
|
|
|
|
|
|
clearer => '_clear_channel', |
14
|
|
|
|
|
|
|
); |
15
|
|
|
|
|
|
|
|
16
|
|
|
|
|
|
|
sub connected { |
17
|
|
|
|
|
|
|
my ($self, $connection) = @_; |
18
|
|
|
|
|
|
|
weaken($self); |
19
|
|
|
|
|
|
|
$connection->open_channel( |
20
|
|
|
|
|
|
|
on_success => sub { |
21
|
|
|
|
|
|
|
my $channel = shift; |
22
|
|
|
|
|
|
|
$self->_set_channel($channel); |
23
|
|
|
|
|
|
|
}, |
24
|
|
|
|
|
|
|
on_failure => sub { |
25
|
|
|
|
|
|
|
$self->_clear_channel; |
26
|
|
|
|
|
|
|
}, |
27
|
|
|
|
|
|
|
on_close => sub { |
28
|
|
|
|
|
|
|
$self->_clear_channel; |
29
|
|
|
|
|
|
|
}, |
30
|
|
|
|
|
|
|
); |
31
|
|
|
|
|
|
|
} |
32
|
|
|
|
|
|
|
sub disconnected {} |
33
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
|
1; |
35
|
|
|
|
|
|
|
|
36
|
|
|
|
|
|
|
=head1 NAME |
37
|
|
|
|
|
|
|
|
38
|
|
|
|
|
|
|
Message::Passing::AMQP::Role::HasAChannel - Role for instances which have an AMQP channel. |
39
|
|
|
|
|
|
|
|
40
|
|
|
|
|
|
|
=head1 ATTRIBUTES |
41
|
|
|
|
|
|
|
|
42
|
|
|
|
|
|
|
=head1 METHODS |
43
|
|
|
|
|
|
|
|
44
|
|
|
|
|
|
|
=head2 connected |
45
|
|
|
|
|
|
|
|
46
|
|
|
|
|
|
|
Called when the channel has connected |
47
|
|
|
|
|
|
|
|
48
|
|
|
|
|
|
|
=head2 disconnected |
49
|
|
|
|
|
|
|
|
50
|
|
|
|
|
|
|
Called when the channel disconnects. |
51
|
|
|
|
|
|
|
|
52
|
|
|
|
|
|
|
=head1 AUTHOR, COPYRIGHT AND LICENSE |
53
|
|
|
|
|
|
|
|
54
|
|
|
|
|
|
|
See L<Message::Passing::AMQP>. |
55
|
|
|
|
|
|
|
|
56
|
|
|
|
|
|
|
=cut |
57
|
|
|
|
|
|
|
|