SYNOPSIS
for my $part ( $route->parts ) {
if ( $part->regular_notes ) {
say join( "\n", $part->regular_notes );
}
if ( $part->current_notes ) {
say join( "\n", map [ $_->{summary} ] $part->current_notes );
}
printf(
"%s at %s -> %s at %s, via %s to %s",
$part->departure_time, $part->departure_stop,
$part->arrival_time, $part->arrival_stop,
$part->train_line, $part->train_destination,
);
}
VERSION
version 2.14DESCRIPTION
Travel::Routing::DE::EFA::Route::Part holds one specific connection (without interchanges) between two points. It specifies the start/stop point and time, the train line and its destination, and optional additional data.It is usually obtained by a call to Travel::Routing::DE::EFA::Route(3pm)'s parts method.
METHODS
ACCESSORS
``Actual'' in the description means that the delay (if available) is already included in the calculation, ``Scheduled'' means it isn't.- $part->arrival_stop
- arrival stop (city name plus station name)
- $part->arrival_platform
- arrival platform (either ``Gleis x'' or ``Bstg. x'')
- $part->arrival_stop_and_platform
- ``stop: platform'' concatenation
- $part->arrival_date
- Actual arrival date in DD.MM.YYYY format
- $part->arrival_time
- Actual arrival time in HH:MM format
- $part->arrival_sdate
- Scheduled arrival date in DD.MM.YYYY format
- $part->arrival_stime
- Scheduled arrival time in HH:MM format
- $part->arrival_routemaps
- List of URLs, may be empty. Each URL poinst to a transfer map for the arrival station, usually outlining how to transfer from this train to the next one (if applicable).
- $part->arrival_stationmaps
- List of URLs, may be empty. Each URL points to an HTML map of the arrival station.
- $part->current_notes
-
Remarks about unscheduled changes to the line serving this connaction part,
such as cancelled stops. Most times, the EFA service does not include this
information in its route calculations.
Returns a list of Travel::Routing::DE::EFA::Route::Message(3pm) objects.
- $part->delay
- delay in minutes, 0 if unknown
- $part->departure_stop
- departure stop (city name plus station name)
- $part->departure_platform
- departure platform (either ``Gleis x'' or ``Bstg. x'')
- $part->departure_stop_and_platform
- ``stop: platform'' concatenation
- $part->departure_date
- Actual departure date in DD.MM.YYYY format
- $part->departure_time
- Actual departure time in HH:MM format
- $part->departure_sdate
- Scheduled departure date in DD.MM.YYYY format
- $part->departure_stime
- Scheduled departure time in HH:MM format
- $part->departure_routemaps
- List of URLs, may be empty. Each URL points to a PDF a transfer map for the departure station, usually outlining how to transfer from thep previous train (if applicable) to this one.
- $part->departure_stationmaps
- List of URLs, may be empty. Each URL poinst to an HTML map of the departure station.
- $part->footpath_duration
- Walking duration when transferring before / after / during this trip in minutes. The meaning depends on the value of footpath_type.
- $part->footpath_parts
-
Returns a list of [type, level] arrayrefs describing the
footpath. For instance, [``ESCALATOR'', ``UP''], [``LEVEL'', ``LEVEL''],
[``STAIRS'', ``UP''] means first taking an escalator up, then walking a while,
and then taking a flight of stairs up again.
The content of type and level comes directly from the EFA backend. At the moment, the following values are known:
-
- type: ESCALATOR, LEVEL, STAIRS
- level: DOWN, LEVEL, UP
-
- $part->footpath_type
- type of this footpath, passed through from the EFA backend. The value ``AFTER'' indicates a footpath (transfer) after this route part. The value ``IDEST'' indicates that this route part already is a footpath (aka a walking connection between two stops), so the footpath accessors contain redundant information. Other values such as ``BEFORE'' may also be returned, but this is unknown at this point.
- $part->regular_notes
- Remarks about the line serving this connaction part. Returns a list of Travel::Routing::DE::EFA::Route::Message(3pm) objects.
- $part->train_destination
- Destination of the line providing the connection. May be empty.
- $part->train_line
- Name / number of the line. May be empty.
- $part->train_product
- Usually the prefix of train_line, for instance "U-Bahn" or "Niederflurstrab". However, it may also contain special values such as "Fuβweg" (for a direct connection without transit vehicles) or "nicht umsteigen" (in case a vehicle changes its line number at a stop). In those cases, train_destination and train_line are usually empty.
- $part->via
- Returns a list of "[ "DD.MM.YYYY", "HH:MM", stop, platform ]" arrayrefs encoding the stops passed between departure_stop and arrival_stop, if supported by the backend. Returns nothing / an empty list otherwise.
DIAGNOSTICS
None.DEPENDENCIES
- Class::Accessor(3pm)
BUGS AND LIMITATIONS
$part->via does not work reliably.AUTHOR
Copyright (C) 2011-2015 by Daniel Friesel <[email protected]>LICENSE
0. You just DO WHAT THE FUCK YOU WANT TO.