File Coverage

blib/lib/WebService/Recruit/HotPepper/ServiceArea.pm
Criterion Covered Total %
statement 12 16 75.0
branch n/a
condition n/a
subroutine 6 10 60.0
pod 5 7 71.4
total 23 33 69.7


line stmt bran cond sub pod time code
1             package WebService::Recruit::HotPepper::ServiceArea;
2 3     3   15 use strict;
  3         7  
  3         114  
3 3     3   15 use base qw( WebService::Recruit::HotPepper::Base );
  3         6  
  3         250  
4 3     3   22 use vars qw( $VERSION );
  3         6  
  3         1145  
5             $VERSION = '0.02';
6              
7 0     0 1 0 sub url { 'http://api.hotpepper.jp/ServiceArea/V110'; }
8 0     0 1 0 sub force_array { [qw( ServiceArea Error )]; }
9 0     0 1 0 sub elem_class { 'WebService::Recruit::HotPepper::ServiceArea::Element'; }
10 0     0 1 0 sub query_class { 'WebService::Recruit::HotPepper::ServiceArea::Query'; }
11              
12 3     3 0 40 sub query_fields { [qw(
13             key
14             )]; }
15 3     3 1 36 sub root_elem { 'Results'; }
16             sub elem_fields { {
17 3     3 0 44 Results => [qw(
18             NumberOfResults APIVersion
19             ServiceArea
20             )],
21             ServiceArea => [qw(
22             ServiceAreaCD ServiceAreaName LargeServiceAreaCD
23             )],
24             }; }
25              
26             # __PACKAGE__->mk_query_accessors();
27              
28             @WebService::Recruit::HotPepper::ServiceArea::Query::ISA = qw( Class::Accessor::Fast );
29             WebService::Recruit::HotPepper::ServiceArea::Query->mk_accessors( @{query_fields()} );
30              
31             # __PACKAGE__->mk_elem_accessors();
32              
33             @WebService::Recruit::HotPepper::ServiceArea::Element::ISA = qw( Class::Accessor::Children::Fast );
34             WebService::Recruit::HotPepper::ServiceArea::Element->mk_ro_accessors( root_elem() );
35             WebService::Recruit::HotPepper::ServiceArea::Element->mk_child_ro_accessors( %{elem_fields()} );
36              
37             =head1 NAME
38              
39             WebService::Recruit::HotPepper::ServiceArea - HotPepper Web Service "ServiceArea" API
40              
41             =head1 SYNOPSIS
42              
43             use WebService::Recruit::HotPepper;
44              
45             my $api = WebService::Recruit::HotPepper->new();
46             $api->key( 'xxxxxxxxxxxxxxxx' );
47              
48             my $res = $api->ServiceArea();
49             die 'error!' if $res->is_error;
50              
51             my $list = $res->root->ServiceArea;
52             foreach my $area ( @$list ) {
53             print "name: ", $area->ServiceAreaName, "\n";
54             print "code: ", $area->ServiceAreaCD, "\n";
55             print "\n";
56             }
57              
58             =head1 DESCRIPTION
59              
60             This module is an interface for the C API.
61             It accepts following query parameters to make an request.
62              
63             my $res = $hpp->ServiceArea();
64              
65             C<$hpp> above is an instance of L.
66              
67             =head1 METHODS
68              
69             =head2 root
70              
71             This returns the root element of the response.
72              
73             my $root = $res->root;
74              
75             You can retrieve each element by the following accessors.
76              
77             $root->NumberOfResults;
78             $root->APIVersion;
79             $root->ServiceArea->[0]->ServiceAreaName;
80             $root->ServiceArea->[0]->ServiceAreaCD;
81             $root->ServiceArea->[0]->LargeServiceAreaCD;
82              
83             =head2 xml
84              
85             This returns the raw response context itself.
86              
87             print $res->xml, "\n";
88              
89             =head2 code
90              
91             This returns the response status code.
92              
93             my $code = $res->code; # usually "200" when succeeded
94              
95             =head2 is_error
96              
97             This returns true value when the response has an error.
98              
99             die 'error!' if $res->is_error;
100              
101             =head1 SEE ALSO
102              
103             L
104              
105             =head1 AUTHOR
106              
107             Toshimasa Ishibashi L
108              
109             This module is unofficial and released by the author in person.
110              
111             =head1 THANKS TO
112              
113             Yusuke Kawasaki L
114              
115             For creating/preparing all the base modules and stuff.
116              
117             =head1 COPYRIGHT AND LICENSE
118              
119             Copyright (c) 2007 Toshimasa Ishibashi. All rights reserved.
120             This program is free software; you can redistribute it and/or
121             modify it under the same terms as Perl itself.
122              
123             =cut
124              
125             1;