feat: add full Zonemaster stack with Docker and Spanish UI
- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI) - Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend - Dockerfile.gui: Astro static build served via nginx - docker-compose.yml: backend (internal) + frontend (port 5353) - nginx.conf: root redirects to /es/, /api/ proxied to backend - zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
51
zonemaster-engine/lib/Zonemaster/Engine/Exception.pm
Normal file
51
zonemaster-engine/lib/Zonemaster/Engine/Exception.pm
Normal file
@@ -0,0 +1,51 @@
|
||||
package Zonemaster::Engine::Exception;
|
||||
|
||||
use v5.16.0;
|
||||
use warnings;
|
||||
|
||||
use version; our $VERSION = version->declare("v1.0.3");
|
||||
|
||||
use Class::Accessor "antlers";
|
||||
|
||||
use overload '""' => \&string;
|
||||
|
||||
has 'message' => ( is => 'ro', isa => 'Str', required => 1 );
|
||||
|
||||
sub string {
|
||||
my ( $self ) = @_;
|
||||
|
||||
return $self->message;
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
=head1 NAME
|
||||
|
||||
Zonemaster::Engine::Exception -- base class for Zonemaster::Engine exceptions
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
die Zonemaster::Engine::Exception->new({ message => "This is an exception" });
|
||||
|
||||
=head1 ATTRIBUTES
|
||||
|
||||
=over
|
||||
|
||||
=item message
|
||||
|
||||
A string attribute holding a message for possible human consumption.
|
||||
|
||||
=back
|
||||
|
||||
=head1 METHODS
|
||||
|
||||
=over
|
||||
|
||||
=item string()
|
||||
|
||||
Method that stringifies the object by returning the C<message> attribute.
|
||||
Stringification is overloaded to this.
|
||||
|
||||
=back
|
||||
|
||||
=cut
|
||||
Reference in New Issue
Block a user