Hinrik Örn Sigurðsson > POE-Component-Lingua-Translate-0.06 > POE::Component::Lingua::Translate

Download:
POE-Component-Lingua-Translate-0.06.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.06   Source  

NAME ^

POE::Component::Lingua::Translate - A non-blocking wrapper around Lingua::Translate

SYNOPSIS ^

 use POE;
 use POE::Component::Lingua::Translate;

 POE::Session->create(
     package_states => [
         main => [ qw(_start translated) ],
     ],
 );

 $poe_kernel->run();

 sub _start {
     my $heap = $_[HEAP];
     $heap->{trans} = POE::Component::Lingua::Translate->new(
         alias => 'translator',
         back_end => 'Babelfish',
         src      => 'en',
         dest     => 'de',
     );
     
     $poe_kernel->post(translator => translate => 'This is a sentence');
     return;
 }

 sub translated {
     my $result = $_[ARG0];
     # prints 'Dieses ist ein Satz'
     print $result . "\n";
 }

DESCRIPTION ^

POE::Component::Lingua::Translate is a POE component that provides a non-blocking wrapper around Lingua::Translate. It accepts translate events and emits translated events back.

CONSTRUCTOR ^

new

Arguments

'alias', an optional alias for the component's session.

Any other arguments will be passed verbatim to Lingua::Translate's constructor.

METHODS ^

session_id

Takes no arguments. Returns the POE Session ID of the component.

INPUT ^

The POE events this component will accept.

translate

The first argument should be a string containing some text to translate. The second argument (optional) can be a hash reference containing some context information. You'll get this hash reference back with the translated event.

shutdown

Takes no arguments, terminates the component.

OUTPUT ^

The POE events emitted by this component.

translated

ARG0 is the translated text. ARG1 is the context hashref from translate. If there was an error, ARG2 will be the error string.

AUTHOR ^

Hinrik Örn Sigurðsson, hinrik.sig@gmail.com

LICENSE AND COPYRIGHT ^

Copyright 2008 Hinrik Örn Sigurðsson

This program is free software, you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: