aboutsummaryrefslogtreecommitdiffstats
path: root/bin/fixmystreet.com/bromley-echo
blob: 01fdec110724d10675508119a596615ffdb8a309 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/env perl

# bromley-echo
# Call the Echo API in parallel

use v5.14;
use warnings;

BEGIN {
    use File::Basename qw(dirname);
    use File::Spec;
    my $d = dirname(File::Spec->rel2abs($0));
    require "$d/../../setenv.pl";
}

use Getopt::Long::Descriptive;
use JSON::MaybeXS;
use Storable;
use FixMyStreet::Cobrand::Bromley;

my ($opts, $usage) = describe_options(
    '%c %o',
    ['out=s', 'where to output CSV data'],
    ['calls=s', 'JSON of what API calls to make'],
    ['help|h', "print usage message and exit" ],
);
$usage->die if $opts->help;

my $cobrand = FixMyStreet::Cobrand::Bromley->new;

my $calls = decode_json($opts->calls);
$calls = $cobrand->_parallel_api_calls(@$calls);
Storable::store($calls, $opts->out);