App-JESP
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/App/JESP.pm view on Meta::CPAN
return DBI->connect( $self->dsn(), $self->username(), $self->password(),
{ RaiseError => 1,
PrintError => 0,
AutoCommit => 1,
});
};
});
has 'dbix_simple' => ( is => 'ro', isa => 'DBIx::Simple', lazy_build => 1);
has 'patches_table_name' => ( is => 'ro', isa => 'Str' , lazy_build => 1);
has 'meta_patches' => ( is => 'ro', isa => 'ArrayRef[HashRef]',
lazy_build => 1 );
has 'plan' => ( is => 'ro', isa => 'App::JESP::Plan', lazy_build => 1);
has 'driver' => ( is => 'ro', isa => 'App::JESP::Driver', lazy_build => 1 );
has 'interactive' => ( is => 'ro' , isa => 'Bool' , lazy_build => 1 );
has 'colorizer' => ( is => 'ro', isa => 'App::JESP::Colorizer', lazy_build => 1 );
has json => ( is => "ro", lazy_build => 1 );
lib/App/JESP/Plan.pm view on Meta::CPAN
=head1 NAME
App::JESP::Plan - Represents a patching plan
=cut
has 'jesp' => ( is => 'ro' , isa => 'App::JESP', required => 1, weak_ref => 1);
has 'file' => ( is => 'ro', isa => 'Str', required => 1 );
has 'patches' => ( is => 'ro' , isa => 'ArrayRef[App::JESP::Patch]', lazy_build => 1 );
has 'raw_data' => ( is => 'ro', isa => 'HashRef' , lazy_build => 1);
sub _build_raw_data{
my ($self) = @_;
my $content = File::Slurp::read_file( $self->file() );
return $self->jesp->json->decode( $content );
}
sub _build_patches{
my ($self) = @_;
unless( $self->raw_data()->{patches} ){
view all matches for this distributionview release on metacpan - search on metacpan
( run in 2.242 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-72ae3ad1e6da )