[zi-cvs] packages/com.zzoss.package.archive.lib Archive.php,1.1,1.2
Sandro Zic <[email protected]> Thu, 06 May 2004 12:25:32 +0000
| Newsgroups | gmane.comp.php.zzoss.installer.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/zzossinstaller/packages/com.zzoss.package.archive.lib
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13107/com.zzoss.package.archive.lib
Modified Files:
Archive.php
Log Message:
optimize memory usage
Index: Archive.php
===================================================================
RCS file: /cvsroot/zzossinstaller/packages/com.zzoss.package.archive.lib/Archive.php,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Archive.php 24 Apr 2004 15:33:36 -0000 1.1
--- Archive.php 6 May 2004 12:25:29 -0000 1.2
***************
*** 1,3 ****
! <?php
/*
Copyright (C) 2001-2004 ZZOSS GbR, http://www.zzoss.com
--- 1,3 ----
! <?php
/*
Copyright (C) 2001-2004 ZZOSS GbR, http://www.zzoss.com
***************
*** 17,21 ****
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
!
/**
@version $Id$
--- 17,21 ----
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
!
/**
@version $Id$
***************
*** 32,52 ****
require_once 'ZZOSS_Dir/Dir.php';
! /**
! * This class parses the XML config file and provides the objects of the
! * XML document.
! *
! * Extends PEAR XML_Parser class.
! *
! * @version 1
! * @author Sandro Zic <[email protected]>; |
! */
!
class ZZOSS_PackageArchive extends PEAR {
!
!
function create($pkg_src_dir, $pkg_dest_dir = null)
{
static $pkg_tmpdir = '';
!
// take care of *nix and Win directory separators
if(DIRECTORY_SEPARATOR == '/'){
--- 32,52 ----
require_once 'ZZOSS_Dir/Dir.php';
! /**
! * This class parses the XML config file and provides the objects of the
! * XML document.
! *
! * Extends PEAR XML_Parser class.
! *
! * @version 1
! * @author Sandro Zic <[email protected]>; |
! */
!
class ZZOSS_PackageArchive extends PEAR {
!
!
function create($pkg_src_dir, $pkg_dest_dir = null)
{
static $pkg_tmpdir = '';
!
// take care of *nix and Win directory separators
if(DIRECTORY_SEPARATOR == '/'){
***************
*** 55,77 ****
$wrong_dir_separator = '/';
}
!
if(is_null($pkg_dest_dir)){
$pkg_dest_dir = $pkg_src_dir;
}
!
$package_xml = $pkg_src_dir.DIRECTORY_SEPARATOR.'package.xml';
!
// Get package.xml and parse it to fill placeholder with content.
!
$replace_values['{zi_release_date}'] = date('Y-m-d');
$replace_values['{zi_copyright_year}'] = date('Y');
!
include_once 'ZZOSS_File/Replace.php';
$replace = new ZZOSS_FileReplace;
$replace->file($package_xml);
$replace->replace($replace_values);
!
// Create a temporary package.xml
!
// Create the temporary directory where we place it.
// But only if the directory does not already exist.
--- 55,77 ----
$wrong_dir_separator = '/';
}
!
if(is_null($pkg_dest_dir)){
$pkg_dest_dir = $pkg_src_dir;
}
!
$package_xml = $pkg_src_dir.DIRECTORY_SEPARATOR.'package.xml';
!
// Get package.xml and parse it to fill placeholder with content.
!
$replace_values['{zi_release_date}'] = date('Y-m-d');
$replace_values['{zi_copyright_year}'] = date('Y');
!
include_once 'ZZOSS_File/Replace.php';
$replace = new ZZOSS_FileReplace;
$replace->file($package_xml);
$replace->replace($replace_values);
!
// Create a temporary package.xml
!
// Create the temporary directory where we place it.
// But only if the directory does not already exist.
***************
*** 81,88 ****
}
}
!
$package_xml_new = $pkg_tmpdir.DIRECTORY_SEPARATOR.'package.xml';
$replace->writeout($package_xml_new);
!
// Get package.xml parameters.
include_once 'ZZOSS_Config/Config.php';
--- 81,90 ----
}
}
!
$package_xml_new = $pkg_tmpdir.DIRECTORY_SEPARATOR.'package.xml';
$replace->writeout($package_xml_new);
! // free memory
! unset($replace);
!
// Get package.xml parameters.
include_once 'ZZOSS_Config/Config.php';
***************
*** 90,98 ****
$config->setFile($package_xml_new);
$xml = $config->query('/package');
!
$pkg_unique = $xml['name'].'-'.$xml['release']['version'];
$pkg_tgz = $pkg_dest_dir.DIRECTORY_SEPARATOR.$pkg_unique.'.tgz';
$tar_list = array();
!
// "Flatten" the filelist taking into accoutn <dir> elements
include_once 'ZZOSS_Package/Descriptor.php';
--- 92,102 ----
$config->setFile($package_xml_new);
$xml = $config->query('/package');
! // free memory
! unset($config);
!
$pkg_unique = $xml['name'].'-'.$xml['release']['version'];
$pkg_tgz = $pkg_dest_dir.DIRECTORY_SEPARATOR.$pkg_unique.'.tgz';
$tar_list = array();
!
// "Flatten" the filelist taking into accoutn <dir> elements
include_once 'ZZOSS_Package/Descriptor.php';
***************
*** 124,128 ****
$plugin_files = $xml['release']['plugin']['file'];
}
!
if(count($plugin_files)){
include_once 'ZZOSS_File/File.php';
--- 128,132 ----
$plugin_files = $xml['release']['plugin']['file'];
}
!
if(count($plugin_files)){
include_once 'ZZOSS_File/File.php';
***************
*** 137,141 ****
}
}
!
$cwd = getcwd();
chdir($pkg_src_dir);
--- 141,145 ----
}
}
!
$cwd = getcwd();
chdir($pkg_src_dir);
***************
*** 145,153 ****
//$tar->create('package.xml');
$tar->addModify($tar_list, $pkg_unique);
chdir($cwd);
!
// delete the temporary package.xml
unlink($package_xml_new);
!
return $pkg_tgz;
}
--- 149,159 ----
//$tar->create('package.xml');
$tar->addModify($tar_list, $pkg_unique);
+ // free memory
+ unset($tar);
chdir($cwd);
!
// delete the temporary package.xml
unlink($package_xml_new);
!
return $pkg_tgz;
}
-------------------------------------------------------
This SF.Net email is sponsored by Sleepycat Software
Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to deliver
higher performing products faster, at low TCO.
http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3