From 4de7ff82b202dbef8c57954126932710fe1a82bd Mon Sep 17 00:00:00 2001 From: dakkar Date: Thu, 6 Aug 2009 15:15:03 +0200 Subject: AnyEvent (untested), method rename, proper structure --- lib/Thread/Queue/Event/AnyEvent.pm | 17 +++++++++++++++++ lib/Thread/Queue/Event/Glib.pm | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 lib/Thread/Queue/Event/AnyEvent.pm (limited to 'lib/Thread/Queue') diff --git a/lib/Thread/Queue/Event/AnyEvent.pm b/lib/Thread/Queue/Event/AnyEvent.pm new file mode 100644 index 0000000..1435708 --- /dev/null +++ b/lib/Thread/Queue/Event/AnyEvent.pm @@ -0,0 +1,17 @@ +package Thread::Queue::Event::AnyEvent; +use Moose::Role; +use AnyEvent; + +requires 'event_fh'; + +sub callback { + my ($self,$sub)=@_; + + AnyEvent->io( + fh => $self->event_fh, + poll=>'r', + cb => $sub); +} + +no Moose; +1; diff --git a/lib/Thread/Queue/Event/Glib.pm b/lib/Thread/Queue/Event/Glib.pm index 1c36c99..ed97efa 100644 --- a/lib/Thread/Queue/Event/Glib.pm +++ b/lib/Thread/Queue/Event/Glib.pm @@ -4,7 +4,7 @@ use Glib; requires 'event_fileno'; -sub add_watch { +sub callback { my ($self,$sub)=@_; Glib::IO->add_watch($self->event_fileno,'in',$sub); -- cgit v1.2.3