logo       

[Bug 3] fix to split packages.xml into smaller files: msg#00028

package-management.wpkg.user

Subject: [Bug 3] fix to split packages.xml into smaller files

Please reply using this URL only: http://bugs.wpkg.org/show_bug.cgi?id=3





------- Additional Comments From snakebyte@xxxxxxxx 2006-05-08 19:54 -------
i have tried to download a clean version of wpkg 0.9.8
and the only thing i changed was the following:

NB: it is important to remove the old loadxml function....

if you can't make it work please send me some examples of your xml files i can
test it with.

if i remember correctly i included some of mine the last time i uploaded this
fix. if not i will gladly send you some ??


/*-------------------------------code changed
start------------------------------------*/
// load packages and profiles
hosts = loadXml( hosts_file, createXsl( base, "hosts" ) );
profiles = loadXml( profiles_file, createXsl( base, "profiles" ) );
packages = loadXml( packages_file, createXsl( base, "packages" ) );
/*-------------------------------code changed
end------------------------------------*/



/*-------------------------------code changed
start------------------------------------*/

/**
* Loads an XML file and returns the root element.
*/
function loadXml( xmlPath, xslPath ) {
var source = new ActiveXObject("Msxml2.DOMDocument.3.0");
source.async = false;
source.validateOnParse = false;
source.load( xmlPath );

if (source.parseError.errorCode != 0) {
var myErr = source.parseError;
info( "Error parsing xml: " + myErr.reason );
}
else {
if( xslPath != null ) {
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0")
xmlDoc.async="false"
xmlDoc.validateOnParse = false;
xmlDoc.loadXML( source.transformNode( xslPath ) );
return xmlDoc.documentElement;
}
else {
return source.documentElement;
}
}
}

/**
* Creates xsl document object and returns it.
*/
function createXsl( base, folder ) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file;
if( !fso.folderExists( base + "\\" + folder ) ) {
return null;
}
var e = new Enumerator(fso.GetFolder( base + "\\" + folder ).files);
var str = "";
var root = "";
if( folder == "hosts" ) {
root = "wpkg";
}
else {
root = folder;
}
str = "<?xml version=\"1.0\"?>\r\n";
str = str + "<xsl:stylesheet
xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\";
version=\"1.0\">\r\n";
str = str + " <xsl:output encoding=\"ISO-8859-1\" indent=\"yes\"
method=\"xml\"
version=\"1.0\"/>\r\n";
str = str + " <xsl:template match=\"/\">\r\n";
str = str + " <" + root + ">\r\n";
str = str + " <xsl:copy-of select=\""+ folder +
"/child::*\"/>\r\n";
for( e.moveFirst(); ! e.atEnd(); e.moveNext() ) {
file = e.item();
str = str + " <xsl:copy-of
select=\"document('" + base.replace( /\\/g, "/" )
+ "/" + folder + "/" + file.name + "')/" + root + "/child::*\"/>\r\n";
}
str = str + " </" + root + ">\r\n";
str = str + " </xsl:template>\r\n";
str = str + "</xsl:stylesheet>\r\n";
var xsl = new ActiveXObject( "Msxml2.DOMDocument.3.0" );
xsl.async = false;
xsl.loadXML( str );
return xsl.documentElement;
}

/*-------------------------------code changed
end------------------------------------*/


--
Configure bugmail: http://bugs.wpkg.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise