The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

WebService::Recruit::Jalan::HotelSearchAdvance - Jalan Web Service "HotelSearchAdvance" API

SYNOPSIS

    use WebService::Recruit::Jalan;

    my $jalan = WebService::Recruit::Jalan->new();
    $jalan->key( 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' );

    my $param = {
        s_area      =>  '162612',
        xml_ptn     =>  '2',
    };
    my $res = $jalan->HotelSearchAdvance( %$param );
    die "error!" if $res->is_error;

    my $list = $res->root->Hotel;
    foreach my $hotel ( @$list ) {
        print "HotelID: ",   $hotel->HotelID, "\n";
        print "HotelName: ", $hotel->HotelName, "\n";
    }

DESCRIPTION

This module is a interface for the HotelSearchAdvance API. It accepts following query parameters to make an request.

    my $param = {
        reg         =>  '10',
        pref        =>  '130000',
        l_area      =>  '136200',
        s_area      =>  '136202',
        h_id        =>  '324994',
        o_area_id   =>  '50024',
        o_id        =>  '0042',
        x           =>  '503037529',
        y           =>  '128366212',
        range       =>  '10',
        h_name      =>  'Hotel Name',
        h_type      =>  '0',
        o_pool      =>  '0',
        parking     =>  '0',
        pub_bath    =>  '0',
        onsen       =>  '0',
        prv_bath    =>  '0',
        v_bath      =>  '0',
        sauna       =>  '0',
        jacz        =>  '0',
        mssg        =>  '0',
        r_ski       =>  '0',
        r_brd       =>  '0',
        pet         =>  '0',
        esthe       =>  '0',
        p_pong      =>  '0',
        limo        =>  '0',
        room_b      =>  '0',
        room_d      =>  '0',
        prv_b       =>  '0',
        prv_d       =>  '0',
        early_in    =>  '0',
        late_out    =>  '0',
        no_smk      =>  '0',
        net         =>  '0',
        r_room      =>  '0',
        high        =>  '0',
        p_ok        =>  '0',
        sp_room     =>  '0',
        bath_to     =>  '0',
        o_bath      =>  '0',
        pour        =>  '0',
        cloudy      =>  '0',
        i_pool      =>  '0',
        fitness     =>  '0',
        gym         =>  '0',
        p_field     =>  '0',
        bbq         =>  '0',
        hall        =>  '0',
        5_station   =>  '0',
        5_beach     =>  '0',
        5_slope     =>  '0',
        c_card      =>  '0',
        c_jcb       =>  '0',
        c_visa      =>  '0',
        c_master    =>  '0',
        c_amex      =>  '0',
        c_uc        =>  '0',
        c_dc        =>  '0',
        c_nicos     =>  '0',
        c_diners    =>  '0',
        c_saison    =>  '0',
        c_ufj       =>  '0',
        cvs         =>  '0',
        no_meal     =>  '0',
        b_only      =>  '0',
        d_only      =>  '0',
        2_meals     =>  '0',
        sng_room    =>  '0',
        twn_room    =>  '0',
        dbl_room    =>  '0',
        tri_room    =>  '0',
        4bed_room   =>  '0',
        jpn_room    =>  '0',
        j_w_room    =>  '0',
        child_price =>  '0',
        c_bed_meal  =>  '0',
        c_no_bed_meal => '0',
        c_meal_only =>  '0',
        c_bed_only  =>  '0',
        pict_size   =>  '3',    # pictM
        picts       =>  '5',
        order       =>  '0',
        start       =>  '1',
        count       =>  '10',
        xml_ptn     =>  '2',
    };

$jalan above is an instance of WebService::Recruit::Jalan.

METHODS

root

This returns the root element of the response.

    my $root = $res->root;

You can retrieve each element by the following accessors.

    $root->NumberOfResults;
    $root->DisplayPerPage;
    $root->DisplayFrom;
    $root->APIVersion;
    $root->Hotel;
    $root->Hotel->[0]->HotelID;
    $root->Hotel->[0]->HotelName;
    $root->Hotel->[0]->PostCode;
    $root->Hotel->[0]->HotelAddress;
    $root->Hotel->[0]->Area;
    $root->Hotel->[0]->Area->Region;
    $root->Hotel->[0]->Area->Prefecture;
    $root->Hotel->[0]->Area->LargeArea;
    $root->Hotel->[0]->Area->SmallArea;
    $root->Hotel->[0]->HotelType;
    $root->Hotel->[0]->HotelDetailURL;
    $root->Hotel->[0]->HotelCatchCopy;
    $root->Hotel->[0]->HotelCaption;
    $root->Hotel->[0]->PictureURL->[0];
    $root->Hotel->[0]->PictureCaption->[0];
    $root->Hotel->[0]->AccessInformation;
    $root->Hotel->[0]->AccessInformation->[0]->name;
    $root->Hotel->[0]->CheckInTime;
    $root->Hotel->[0]->CheckOutTime;
    $root->Hotel->[0]->X;
    $root->Hotel->[0]->Y;
    $root->Hotel->[0]->SampleRateFrom;
    $root->Hotel->[0]->LastUpdate;
    $root->Hotel->[0]->LastUpdate->day;
    $root->Hotel->[0]->LastUpdate->month;
    $root->Hotel->[0]->LastUpdate->year;
    $root->Hotel->[0]->OnsenName;
    $root->Hotel->[0]->HotelNameKana;
    $root->Hotel->[0]->CreditCard;
    $root->Hotel->[0]->CreditCard->AMEX;
    $root->Hotel->[0]->CreditCard->DC;
    $root->Hotel->[0]->CreditCard->DINNERS;
    $root->Hotel->[0]->CreditCard->ETC;
    $root->Hotel->[0]->CreditCard->JCB;
    $root->Hotel->[0]->CreditCard->MASTER;
    $root->Hotel->[0]->CreditCard->MILLION;
    $root->Hotel->[0]->CreditCard->NICOS;
    $root->Hotel->[0]->CreditCard->SAISON;
    $root->Hotel->[0]->CreditCard->UC;
    $root->Hotel->[0]->CreditCard->UFJ;
    $root->Hotel->[0]->CreditCard->VISA;
    $root->Hotel->[0]->NumberOfRatings;
    $root->Hotel->[0]->Rating;
    $root->Hotel->[0]->Plan;
    $root->Hotel->[0]->Plan->[0]->PlanName;
    $root->Hotel->[0]->Plan->[0]->RoomType->[0];
    $root->Hotel->[0]->Plan->[0]->RoomName;
    $root->Hotel->[0]->Plan->[0]->PlanCheckIn;
    $root->Hotel->[0]->Plan->[0]->PlanCheckOut;
    $root->Hotel->[0]->Plan->[0]->PlanPictureURL;
    $root->Hotel->[0]->Plan->[0]->PlanPictureCaption;
    $root->Hotel->[0]->Plan->[0]->Meal;
    $root->Hotel->[0]->Plan->[0]->PlanSampleRateFrom;

xml

This returns the raw response context itself.

    print $res->xml, "\n";

code

This returns the response status code.

    my $code = $res->code; # usually "200" when succeeded

is_error

This returns true value when the response has an error.

    die 'error!' if $res->is_error;

page

This 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

This 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

This returns a hash to specify the page for the next request.

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

page_query

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

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

SEE ALSO

WebService::Recruit::Jalan

AUTHOR

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

This module is unofficial and released by the author 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.