Commit 76150883 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

VRR.pm: Add Travel::Routing::DE::VRR::Exception base class

parent c1c3afa6
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -73,7 +73,8 @@ sub check_for_error {

	if ( not defined $efa ) {
		if (    $eval_error
			and ref($eval_error) =~ m{^Travel::Routing::DE::VRR::Exception}x )
			and ref($eval_error)
			and $eval_error->isa('Travel::Routing::DE::VRR::Exception') )
		{
			handle_efa_exception($eval_error);
		}
+15 −4
Original line number Diff line number Diff line
@@ -9,22 +9,30 @@ use LWP::UserAgent;
use XML::LibXML;

use Exception::Class (
	'Travel::Routing::DE::VRR::Exception',
	'Travel::Routing::DE::VRR::Exception::Setup' => {
		isa         => 'Travel::Routing::DE::VRR::Exception',
		description => 'invalid argument on setup',
		fields      => [ 'option', 'have', 'want' ],
	},
	'Travel::Routing::DE::VRR::Exception::Net' => {
		isa         => 'Travel::Routing::DE::VRR::Exception',
		description => 'could not submit POST request',
		fields      => 'http_response',
	},
	'Travel::Routing::DE::VRR::Exception::NoData' =>
	  { description => 'got no data to parse', },
	'Travel::Routing::DE::VRR::Exception::NoData' => {
		isa         => 'Travel::Routing::DE::VRR::Exception',
		description => 'got no data to parse',
	},
	'Travel::Routing::DE::VRR::Exception::Ambiguous' => {
		isa         => 'Travel::Routing::DE::VRR::Exception',
		description => 'ambiguous input',
		fields      => [ 'post_key', 'possibilities' ],
	},
	'Travel::Routing::DE::VRR::Exception::NoConnections' =>
	  { description => 'got no connections', },
	'Travel::Routing::DE::VRR::Exception::NoConnections' => {
		isa         => 'Travel::Routing::DE::VRR::Exception',
		description => 'got no connections',
	},
);

our $VERSION = '1.3';
@@ -759,6 +767,9 @@ The following methods act like the arguments to B<new>. See there.

=head1 DIAGNOSTICS

When encountering an error, Travel::Routing::DE::VRR returns a
Travel::Routing::DE::VRR::Exception object.

Dies with a backtrace when anything goes wrong.

=head1 DEPENDENCIES