From 208b818d7c5c503149ecc0b662c02b0b4af63a41 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Sat, 24 Sep 2022 15:01:24 +0200 Subject: HAFAS->get_json_p: accept cache and encoding parameters --- lib/Travelynx/Helper/HAFAS.pm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/Travelynx/Helper/HAFAS.pm b/lib/Travelynx/Helper/HAFAS.pm index 383b3bd..c8e0ef4 100644 --- a/lib/Travelynx/Helper/HAFAS.pm +++ b/lib/Travelynx/Helper/HAFAS.pm @@ -119,11 +119,16 @@ sub get_polyline_p { } sub get_json_p { - my ( $self, $url ) = @_; + my ( $self, $url, %opt ) = @_; my $cache = $self->{main_cache}; my $promise = Mojo::Promise->new; + if ( $opt{realtime} ) { + $cache = $self->{realtime_cache}; + } + $opt{encoding} //= 'ISO-8859-15'; + if ( my $content = $cache->thaw($url) ) { return $promise->resolve($content); } @@ -140,7 +145,7 @@ sub get_json_p { return; } - my $body = decode( 'ISO-8859-15', $tx->res->body ); + my $body = decode( $opt{encoding}, $tx->res->body ); $body =~ s{^TSLs[.]sls = }{}; $body =~ s{;$}{}; -- cgit v1.2.3