sub _create_package {
...
$self->_write_worksheet_files();
}
sub _write_worksheet_files {
my $self = shift;
my $dir = $self->{_package_dir};
_mkdir( $dir . '/xl' );
_mkdir( $dir . '/xl/worksheets' );
...
}
sub _mkdir {
my $dir = shift;
return if -e $dir;
my $ret = mkdir( $dir );
if ( !$ret ) {
croak "Couldn't create sub directory $dir: $!";
}
}
####
sub new {
my $class = shift;
my $self = Excel::Writer::XLSX::Package::XMLwriter->new();
...
$self->{_tempdir} = undef;
...
}
sub _store_workbook {
...
my $tempdir = File::Temp->newdir( DIR => $self->{_tempdir} );
...
$packager->_set_package_dir( $tempdir );
$packager->_create_package();
...
}
sub set_tempdir {
my $self = shift;
my $dir = shift;
croak "$dir is not a valid directory" if defined $dir and not -d $dir;
$self->{_tempdir} = $dir;
}
####
sub _store_workbook {
...
my $tempdir = File::Temp->newdir( DIR => $self->{_tempdir} );
print "tempdir='$tempdir'\n"; # debug
if( ! -d $tempdir ){ croak "$tempdir was not created" } # debug
my $mode = (stat($tempdir))[2];
printf "Permissions are %04o\n", $mode & 07777;
...
$packager->_set_package_dir( $tempdir );
$packager->_create_package();
...
}