diff options
author | Daniel Friesel <derf@finalrewind.org> | 2013-09-18 21:17:56 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2013-09-18 21:17:56 +0200 |
commit | 0c6b8879c3c91bb2708e0f03f7d1641f760a6624 (patch) | |
tree | 7a033329db979e938cfe217cd12f2628a69d6ade | |
parent | ba3500bdc9a5bb180f2aab99b0da73b55c569c5f (diff) |
Add Line->key and JSON export
-rw-r--r-- | lib/Travel/Status/DE/VRR.pm | 4 | ||||
-rw-r--r-- | lib/Travel/Status/DE/VRR/Line.pm | 7 | ||||
-rw-r--r-- | lib/Travel/Status/DE/VRR/Result.pm | 14 |
3 files changed, 24 insertions, 1 deletions
diff --git a/lib/Travel/Status/DE/VRR.pm b/lib/Travel/Status/DE/VRR.pm index 20a9ca2..89e9843 100644 --- a/lib/Travel/Status/DE/VRR.pm +++ b/lib/Travel/Status/DE/VRR.pm @@ -113,6 +113,8 @@ sub new { $self->{tree} = XML::LibXML->load_xml( string => $self->{xml}, ); + # say $self->{tree}->toString(1); + $self->check_for_ambiguous(); return $self; @@ -313,6 +315,7 @@ sub results { my $line = $e_line->getAttribute('number'); my $dest = $e_line->getAttribute('direction'); my $info = $e_info->textContent; + my $key = $e_line->getAttribute('key'); my $countdown = $e->getAttribute('countdown'); my $delay = $e_info->getAttribute('delay') // 0; my $type = $e_info->getAttribute('name'); @@ -334,6 +337,7 @@ sub results { time => $rtime, platform => $platform, platform_db => $platform_is_db, + key => $key, lineref => $line_obj[0] // undef, line => $line, destination => decode( 'UTF-8', $dest ), diff --git a/lib/Travel/Status/DE/VRR/Line.pm b/lib/Travel/Status/DE/VRR/Line.pm index 9f7b228..5c12980 100644 --- a/lib/Travel/Status/DE/VRR/Line.pm +++ b/lib/Travel/Status/DE/VRR/Line.pm @@ -18,6 +18,13 @@ sub new { return bless( $ref, $obj ); } + +sub TO_JSON { + my ($self) = @_; + + return { %{$self} }; +} + 1; __END__ diff --git a/lib/Travel/Status/DE/VRR/Result.pm b/lib/Travel/Status/DE/VRR/Result.pm index a6e294e..05f86d9 100644 --- a/lib/Travel/Status/DE/VRR/Result.pm +++ b/lib/Travel/Status/DE/VRR/Result.pm @@ -9,7 +9,7 @@ use parent 'Class::Accessor'; our $VERSION = '1.03'; Travel::Status::DE::VRR::Result->mk_ro_accessors( - qw(countdown date delay destination info line lineref platform + qw(countdown date delay destination info key line lineref platform platform_db sched_date sched_time time type) ); @@ -20,6 +20,13 @@ sub new { return bless( $ref, $obj ); } + +sub TO_JSON { + my ($self) = @_; + + return { %{$self} }; +} + 1; __END__ @@ -86,6 +93,11 @@ an address were requested, this is the stop name, otherwise it may be recent news related to the line's schedule. If no information is available, returns an empty string. +=item $departure->key + +Unknown. Appears to be the UUID for this departure (unique over all +lines, reused daily). + =item $departure->line The name/number of the line. |