Acme-eng2kor

 view release on metacpan or  search on metacpan

lib/Acme/eng2kor.pm  view on Meta::CPAN

    my $escaped_uri = sprintf($GOOGLE_TRANSLATE_API_URL, $text, $self->src . '|' . $self->dst);
    my $json = $self->get_json($escaped_uri);
    $self->translated($json->{responseData}{translatedText});
    return $json;
}


sub get_json {
    my ($self, $url) = @_;
    my $req = HTTP::Request->new( GET => $url );
    my $ua  = LWP::UserAgent->new;
    my $res = $ua->request($req);
    die $res->status_line, "\n" unless $res->is_success;
    return decode_json($res->content);
}

__PACKAGE__->meta->make_immutable;


1;

__END__
=pod

=encoding utf-8

=head1 NAME

Acme::eng2kor - English to Korean Translator

=head1 VERSION

version v0.0.2

=head1 SYNOPSIS

    use utf8;
    use Acme::eng2kor;
    binmode STDOUT, ':encoding(UTF-8)';
    my $app = Acme::eng2kor->new;
    $app->translate('hello');
    print $app->text, "\n";         # hello
    print $app->translated, "\n";   # 안녕하세요

=head1 DESCRIPTION

Yet Another Translator

=head1 METHODS

=head2 translate

Internal interface

=head2 _google_translate

Used google translate api

=head2 get_json

Return decoded json text after HTTP IO.

=head1 SUPPORT LANGUAGES

Google translate available language list is below.

    ach: Luo
    af: Afrikaans
    ak: Akan
    am: Amharic
    ar: Arabic
    az: Azerbaijani
    be: Belarusian
    bem: Bemba
    bg: Bulgarian
    bh: Bihari
    bn: Bengali
    br: Breton
    bs: Bosnian
    ca: Catalan
    co: Corsican
    cs: Czech
    cy: Welsh
    da: Danish
    de: German
    el: Greek
    en: English
    eo: Esperanto
    es: Spanish
    et: Estonian
    eu: Basque
    fa: Persian
    fi: Finnish
    fo: Faroese
    fr: French
    fy: Frisian
    ga: Irish
    gd: Scots Gaelic
    gl: Galician
    gn: Guarani
    gu: Gujarati
    ha: Hausa
    haw: Hawaiian
    hi: Hindi
    hr: Croatian
    ht: Haitian Creole
    hu: Hungarian
    hy: Armenian
    ia: Interlingua
    id: Indonesian
    ig: Igbo
    is: Icelandic
    it: Italian
    iw: Hebrew
    ja: Japanese
    jw: Javanese
    ka: Georgian
    kg: Kongo
    kk: Kazakh
    km: Cambodian
    kn: Kannada



( run in 1.862 second using v1.01-cache-2.11-cpan-600a1bdf6e4 )