diff options
Diffstat (limited to 'TIGERweb/Service.pm')
-rw-r--r-- | TIGERweb/Service.pm | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/TIGERweb/Service.pm b/TIGERweb/Service.pm new file mode 100644 index 0000000..65cc8c6 --- /dev/null +++ b/TIGERweb/Service.pm @@ -0,0 +1,22 @@ +package Geo::USCensus::TIGERweb::Service; + +use strict; +use warnings; +use base 'Geo::USCensus::TIGERweb'; +use Geo::USCensus::TIGERweb::Layer; + +use List::Util qw(first); + +sub layer { + my $self = shift; + my $id_or_name = shift; + my $def = first { $_->{id} eq $id_or_name or $_->{name} eq $id_or_name } + @{ $self->info->{layers} }; + if (!$def) { + $self->{error} = "TIGERweb layer name/id '$id_or_name' not found"; + return; + } + return $self->create('Layer', $def->{id}); +} + +1; |