Commit 8ccf3d22 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

add devmode switch to enable/disable debug/developer output

parent 61f8adb2
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ use Travel::Status::DE::IRIS::Stations;

my ( $date, $time, $lookahead );
my $datetime       = DateTime->now( time_zone => 'Europe/Berlin' );
my $developer_mode = 0;
my $realtime       = 0;
my ( $filter_via, $track_via, $status_via );
my ( @grep_class, @grep_type, @grep_platform );
@@ -43,6 +44,7 @@ GetOptions(
	'T|type=s'      => \@grep_type,
	'v|via=s'       => \$filter_via,
	'V|track-via=s' => \$track_via,
	'devmode'       => \$developer_mode,
	'version'       => \&show_version,

) or show_help(1);
@@ -99,6 +101,7 @@ for my $efield (@edata_pre) {

my $status = Travel::Status::DE::IRIS->new(
	datetime       => $datetime,
	developer_mode => $developer_mode,
	lookahead      => $lookahead,
	station        => $station,
);
+8 −4
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ sub new {
	my $self = {
		datetime => $opt{datetime}
		  // DateTime->now( time_zone => 'Europe/Berlin' ),
		developer_mode => $opt{developer_mode},
		iris_base => $opt{iris_base}
		  // 'http://iris.noncd.db.de/iris-tts/timetable',
		lookahead => $opt{lookahead} // ( 4 * 60 ),
@@ -173,7 +174,10 @@ sub get_timetable {
	my $res = $ua->get(
		$dt->strftime( $self->{iris_base} . "/plan/${eva}/%y%m%d/%H" ) );

	#say 'GET ' . $dt->strftime( $self->{iris_base} . "/plan/${eva}/%y%m%d/%H" );
	if ( $self->{developer_mode} ) {
		say 'GET '
		  . $dt->strftime( $self->{iris_base} . "/plan/${eva}/%y%m%d/%H" );
	}

	if ( $res->is_error ) {
		$self->{warnstr} = 'Failed to fetch a schedule part: Server returned '
@@ -183,8 +187,6 @@ sub get_timetable {

	my $xml = XML::LibXML->load_xml( string => $res->decoded_content );

	#say $xml->toString(1);

	my $station = ( $xml->findnodes('/timetable') )[0]->getAttribute('station');

	for my $s ( $xml->findnodes('/timetable/s') ) {
@@ -201,7 +203,9 @@ sub get_realtime {
	my $eva = $self->{nodes}{station}->getAttribute('eva');
	my $res = $self->{user_agent}->get( $self->{iris_base} . "/fchg/${eva}" );

	#say 'GET ' . $self->{iris_base} . "/fchg/${eva}";
	if ( $self->{developer_mode} ) {
		say 'GET ' . $self->{iris_base} . "/fchg/${eva}";
	}

	if ( $res->is_error ) {
		$self->{warnstr} = 'Failed to fetch realtime data: Server returned '