package WebService::TFL::TubeStatus::Response::Line;
use Moo;
use Types::Standard -all;
use WebService::TFL::TubeStatus::Response::LineStatus;
use namespace::autoclean;
has id => (
is => 'ro',
isa => Str,
required => 1,
);
has name => (
is => 'ro',
isa => Str,
required => 1,
);
has status => (
is => 'ro',
isa => InstanceOf['WebService::TFL::TubeStatus::Response::LineStatus'],
required => 1,
);
sub new_from_response {
my ($class,$response_data) = @_;
return $class->new({
id => $response_data->{id},
name => $response_data->{name},
status => WebService::TFL::TubeStatus::Response::LineStatus->new_from_response(
$response_data->{lineStatuses}[0],
),
});
}
1;