AIX-LPP
view release on metacpan or search on metacpan
LPP/lpp_name.pm view on Meta::CPAN
NAME => $fsname,
VRMF => $param{VRMF},
DISK => $param{DISK},
BOSBOOT => $param{BOSBOOT},
CONTENT => $param{CONTENT},
LANG => $param{LANG},
DESCRIPTION => $param{DESCRIPTION},
COMMENTS => $param{COMMENTS},
REQ => [ ],
SIZEINFO => { }
};
} else {
}
}
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>);
# add while loop here to process fileset headers
my ($fsn,$vrmf,$disk,$bosboot,$content,$lang,@desc) = split / /, $line;
$self->fileset($fsn, NAME => $fsn,VRMF => $vrmf,DISK => $disk,
BOSBOOT => $bosboot, CONTENT => $content, LANG => $lang,
DESCRIPTION => join ' ', @desc);
chomp ($line = <$fh>) until $line =~ /^\[/;
chomp ($line = <$fh>);
FSDATA: { do {
chomp $line;
my @reqs;
last if $line =~ /^\]/;
REQS: { do {
push @reqs, [ split (/ /, $line) ];
chomp ($line = <$fh>);
} until $line =~ /^%/; }
$self->requisites($fsn,\@reqs);
chomp ($line = <$fh>);
SIZEINFO: { do {
my ($loc,@size) = split (/ /, $line);
$self->{FILESET}{$fsn}{SIZEINFO}{$loc} = join ' ', @size;
chomp ($line = <$fh>);
} until $line =~ /^%/; }
chomp ($line = <$fh>);
THIRD: { do {
} until $line =~ /^%/; }
chomp ($line = <$fh>);
FOURTH: { do {
} until $line =~ /^%/; }
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},
$self->{FILESET}{$fileset}{CONTENT},
$self->{FILESET}{$fileset}{LANG},
$self->{FILESET}{$fileset}{DESCRIPTION}, "\n[\n";
( run in 1.003 second using v1.01-cache-2.11-cpan-39bf76dae61 )