Apertur-SDK

 view release on metacpan or  search on metacpan

lib/Apertur/SDK/Error/Authentication.pm  view on Meta::CPAN

package Apertur::SDK::Error::Authentication;

use strict;
use warnings;
use parent 'Apertur::SDK::Error';

sub new {
    my ($class, %args) = @_;
    return $class->SUPER::new(
        status_code => 401,
        code        => 'AUTHENTICATION_FAILED',
        message     => $args{message} // 'Authentication failed',
    );
}

1;

__END__

lib/Apertur/SDK/Error/NotFound.pm  view on Meta::CPAN

package Apertur::SDK::Error::NotFound;

use strict;
use warnings;
use parent 'Apertur::SDK::Error';

sub new {
    my ($class, %args) = @_;
    return $class->SUPER::new(
        status_code => 404,
        code        => 'NOT_FOUND',
        message     => $args{message} // 'Not found',
    );
}

1;

__END__

lib/Apertur/SDK/Error/RateLimit.pm  view on Meta::CPAN

package Apertur::SDK::Error::RateLimit;

use strict;
use warnings;
use parent 'Apertur::SDK::Error';

sub new {
    my ($class, %args) = @_;
    my $self = $class->SUPER::new(
        status_code => 429,
        code        => 'RATE_LIMIT',
        message     => $args{message} // 'Rate limit exceeded',
    );
    $self->{retry_after} = $args{retry_after};
    return $self;
}

sub retry_after { return $_[0]->{retry_after} }

lib/Apertur/SDK/Error/Validation.pm  view on Meta::CPAN

package Apertur::SDK::Error::Validation;

use strict;
use warnings;
use parent 'Apertur::SDK::Error';

sub new {
    my ($class, %args) = @_;
    return $class->SUPER::new(
        status_code => 400,
        code        => 'VALIDATION_ERROR',
        message     => $args{message} // 'Validation error',
    );
}

1;

__END__



( run in 0.871 second using v1.01-cache-2.11-cpan-ceb78f64989 )