NAME

WebService::Recruit::Dokoiku - A Interface for Dokoiku Web Service Beta

SYNOPSIS

use WebService::Recruit::Dokoiku;

my $doko = WebService::Recruit::Dokoiku->new();
$doko->key( 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' );

my $param = {
    lat_jgd =>  '35.6686',
    lon_jgd =>  '139.7593',
    name    =>  'ATM',
};
my $res = $doko->searchPOI( %$param );
my $list = $res->root->poi;
foreach my $poi ( @$list ) {
    print "name: ", $poi->name, "\n";
    print "addr: ", $poi->address, "\n";
    print "web:  ", $poi->dokopcurl, "\n";
    print "map:  ", $poi->dokomapurl, "\n";
    print "\n";
}

DESCRIPTION

This module is a interface for the Dokoiku Web Service Beta, provided by Recruit Co., Ltd., Japan. It provides three API methods: "searchPOI", "getLandmark" and "getStation". With these methods, you can find almost all of shops, restaurants and many other places in Japan.

searchPOI

See WebService::Recruit::Dokoiku::SearchPOI for details.

my $res = $doko->searchPOI( lmcode => 4212, name => 'ATM' );

getLandmark

See WebService::Recruit::Dokoiku::GetLandmark for details.

my $res = $doko->getLandmark( name => 'SHIBUYA 109' );

getStation

See WebService::Recruit::Dokoiku::GetStation for details.

my $res = $doko->getStation( lon_jgd => 139.758, lat_jgd => 35.666 );

PAGING

Each API response also provides paging methods following:

page

page method returns a Data::Page instance.

my $page = $res->page();
print "Total: ", $page->total_entries, "\n";
print "Page: ", $page->current_page, "\n";
print "Last: ", $page->last_page, "\n";

pageset

pageset method returns a Data::Pageset instance

my $pageset = $res->pageset( 'fixed' );
$pageset->pages_per_set($pages_per_set);
my $set = $pageset->pages_in_set();
foreach my $num ( @$set ) {
    print "$num ";
}

page_param

page_param method returns a hash to specify the page for the next request.

my %hash  = $res->page_param( $page->next_page );

page_query

page_query method returns a query string to specify the page for the next request.

my $query = $res->page_query( $page->prev_page );

TreePP CONFIG

This modules uses XML::TreePP module internally. Following methods are available to configure it.

my $doko = WebService::Recruit::Dokoiku->new();
$doko->utf8_flag( 1 );
$doko->user_agent( 'Foo-Bar/1.0 ' );
$doko->lwp_useragent( LWP::UserAgent->new() );
$doko->http_lite( HTTP::Lite->new() );

SEE ALSO

http://www.doko.jp/api/

AUTHOR

Yusuke Kawasaki http://www.kawa.net/

This module is unofficial and released by the authour in person.

COPYRIGHT AND LICENSE

Copyright (c) 2007 Yusuke Kawasaki. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.