AIX-LPP
view release on metacpan or search on metacpan
LPP/lpp_name.pm view on Meta::CPAN
package AIX::LPP::lpp_name;
require 5.005_62;
use strict;
use warnings;
our $VERSION = '0.5';
sub new {
my $class = shift;
my %param = @_;
my $self = {};
if (defined $param{FORMAT}) { $self->{FORMAT} = $param{FORMAT}}
else { $self->{FORMAT} = '4'}
if (defined $param{PLATFORM}) { $self->{PLATFORM} = $param{PLATFORM}}
else { $self->{PLATFORM} = 'R'}
if (defined $param{TYPE}) { $self->{TYPE} = $param{TYPE}}
else { $self->{TYPE} = 'I'}
if (defined $param{NAME}) { $self->{NAME} = $param{NAME}}
else { $self->{NAME} = 'test.lpp'}
$self->{FILESET} = {};
bless $self, $class;
return $self;
}
sub lpp {
my $self = shift;
return ( $self->{NAME},$self->{TYPE},$self->{FORMAT},$self->{PLATFORM},
keys %{$self->{FILESET}} ) unless @_;
my %param = @_;
if (defined $param{FORMAT}) { $self->{FORMAT} = $param{FORMAT}}
if (defined $param{PLATFORM}) { $self->{PLATFORM} = $param{PLATFORM}}
if (defined $param{TYPE}) { $self->{TYPE} = $param{TYPE}}
if (defined $param{NAME}) { $self->{NAME} = $param{NAME}}
return ( $self->{NAME},$self->{TYPE},$self->{FORMAT},$self->{PLATFORM},
keys %{$self->{FILESET}} );
}
sub fileset {
my $self = shift;
my $fsname = shift;
my %param = @_;
if ( $#_ == -1 ) {
return ($self->{FILESET}{$fsname}{NAME},$self->{FILESET}{$fsname}{VRMF},
$self->{FILESET}{$fsname}{DISK},$self->{FILESET}{$fsname}{BOSBOOT},
$self->{FILESET}{$fsname}{CONTENT},$self->{FILESET}{$fsname}{LANG},
$self->{FILESET}{$fsname}{DESCRIPTION},
$self->{FILESET}{$fsname}{COMMENTS});
} else {
LPP/lpp_name.pm view on Meta::CPAN
return ( $self->{FILESET}{$fsname}{NAME},
$self->{FILESET}{$fsname}{VRMF},
$self->{FILESET}{$fsname}{DISK},
$self->{FILESET}{$fsname}{BOSBOOT},
$self->{FILESET}{$fsname}{CONTENT},
$self->{FILESET}{$fsname}{LANG},
$self->{FILESET}{$fsname}{DESCRIPTION},
$self->{FILESET}{$fsname}{COMMENTS});
}
sub sizeinfo {
my $self = shift;
my $fset = shift;
my $size_ref = shift;
$self->{FILESET}{$fset}{SIZEINFO} = $size_ref;
return $self->{FILESET}{$fset}{SIZEINFO};
}
sub requisites {
my $self = shift;
my $fset = shift;
my $ref_req = shift;
$self->{FILESET}{$fset}{REQ} = $ref_req;
return $self->{FILESET}{$fset}{REQ};
}
sub validate {
}
sub read {
my $class = shift;
my $fh = shift;
my $self = {};
bless $self, $class;
chomp (my $line = <$fh>);
my ($format,$platform,$type,$name,$token) = split / /, $line;
$self->lpp(NAME => $name, FORMAT => $format, TYPE => $type,
PLATFORM => $platform);
chomp ($line = <$fh>);
LPP/lpp_name.pm view on Meta::CPAN
chomp ($line = <$fh>);
FIFTH: { do {
} until $line =~ /^%/; }
} while ($line = <$fh>); }
return $self;
}
sub write {
my $self = shift;
my $fh = shift;
print $fh join ' ', $self->{FORMAT}, $self->{PLATFORM}, $self->{TYPE},
$self->{NAME}, "{\n";
foreach my $fileset (keys %{$self->{FILESET}} ) {
print $fh join ' ', $self->{FILESET}{$fileset}{NAME},
$self->{FILESET}{$fileset}{VRMF},
$self->{FILESET}{$fileset}{DISK},
$self->{FILESET}{$fileset}{BOSBOOT},
( run in 0.248 second using v1.01-cache-2.11-cpan-4d50c553e7e )