From: Chris W. <la...@us...> - 2005-01-25 02:47:35
|
Update of /cvsroot/openinteract/OpenInteract2/lib/OpenInteract2 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14635/OpenInteract2 Modified Files: Package.pm Log Message: OIN-111: ensure every package exported through management task is associated with a status message, even if it fails Index: Package.pm =================================================================== RCS file: /cvsroot/openinteract/OpenInteract2/lib/OpenInteract2/Package.pm,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** Package.pm 5 Dec 2004 20:06:35 -0000 1.41 --- Package.pm 25 Jan 2005 02:47:20 -0000 1.42 *************** *** 67,75 **** } elsif ( $params->{directory} ) { ! unless ( -d $params->{directory} ) { oi_error "Cannot initialize package with non-existent package ", "directory. (Given $params->{directory})"; ! } ! $self->directory( rel2abs( $params->{directory} ) ); $to_read++; } --- 67,78 ---- } elsif ( $params->{directory} ) { ! my $full_directory = rel2abs( $params->{directory} ); ! unless ( -d $full_directory ) { oi_error "Cannot initialize package with non-existent package ", "directory. (Given $params->{directory})"; ! } ! $log->is_debug && ! $log->debug( "Reading package from directory '$full_directory'" ); ! $self->directory( $full_directory ); $to_read++; } *************** *** 146,152 **** "directory '$dir'"; } - - $log->is_debug && - $log->debug( "Reading package info from '$dir'" ); $self->config( OpenInteract2::Config::Package->new({ directory => $dir }) ); $self->name( $self->config->name ); --- 149,152 ---- *************** *** 409,414 **** }; if ( $@ ) { $class->_remove_directory_tree( $full_skeleton_dir ); ! oi_error $@; } my $created_package = $class->new({ directory => $full_skeleton_dir }); --- 409,415 ---- }; if ( $@ ) { + my $error = $@; $class->_remove_directory_tree( $full_skeleton_dir ); ! oi_error $error; } my $created_package = $class->new({ directory => $full_skeleton_dir }); *************** *** 430,438 **** $self->config->check_required_fields; $self->_export_check_manifest; ! my $archive_filename = eval { $self->_export_archive_package }; ! if ( $@ ) { ! oi_error $@; ! } ! return $archive_filename; } --- 431,435 ---- $self->config->check_required_fields; $self->_export_check_manifest; ! return $self->_export_archive_package; } *************** *** 935,939 **** }; my $error = $@; ! $self->_remove_directory_tree( $export_dir ); oi_error $error if ( $error ); return $filename; --- 932,938 ---- }; my $error = $@; ! eval { ! $self->_remove_directory_tree( $export_dir ) ! }; oi_error $error if ( $error ); return $filename; *************** *** 951,961 **** my ( $self, $dir, $base_filename, @files ) = @_; unless ( -d $dir and $base_filename and scalar @files ) { ! oi_error "Insufficient parameters to create archive ", ! "[Dir: $dir] [File: $base_filename] [@files]"; } ! my $zip_filename = catfile( $dir, join( '.', $base_filename, 'zip' ) ); if ( -f $zip_filename ) { ! oi_error "Cannot create ZIP archive: '$zip_filename' already exists"; } --- 950,960 ---- my ( $self, $dir, $base_filename, @files ) = @_; unless ( -d $dir and $base_filename and scalar @files ) { ! die "Insufficient parameters to create archive ", ! "in directory '$dir', file '$base_filename'\n"; } ! my $zip_filename = catfile( $dir, "$base_filename.zip" ); if ( -f $zip_filename ) { ! die "Cannot create ZIP archive: file '$zip_filename' already exists\n"; } *************** *** 970,974 **** $msg = 'There was an IO error.' if ( $rv == AZ_IO_ERROR ); $msg ||= 'Unknown error'; ! oi_error "Failed to create ZIP archive '$zip_filename': $msg"; } return $zip_filename; --- 969,973 ---- $msg = 'There was an IO error.' if ( $rv == AZ_IO_ERROR ); $msg ||= 'Unknown error'; ! die "Failed to create ZIP archive '$zip_filename': $msg\n"; } return $zip_filename; |