Application Delivery Management
Application Modernization & Connectivity
CyberRes
IT Operations Management
Key |
Class Name |
Attributes |
Driver |
DirXML-Driver |
|
DriverSet |
DirXML-DriverSet |
|
GCV |
DirXML-GlobalConfigDef |
|
function xmlParse(XML)
{
var oParser = new DOMParser();
var oDOM = oParser.parseFromString(XML, "text/xml");
return oDOM;
}
function xmlSetText(DOM, elementName, value)
{
var textNode = DOM.getElementsByTagName("value")[0].childNodes[0]
textNode.nodeValue = value;
}
function xmlSetAttribute(DOM, elementName, attributeName, value)
{
var attrNode = DOM.getElementsByTagName(elementName)[0].getAttributeNode(attributeName);
attrNode.nodeValue = value;
}
function getXMLResponse(form,field,xmlhttp,url,domRequest,callbackFunction)
{
txtRequest = new XMLSerializer().serializeToString(domRequest.documentElement);
xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader("Content-type", "text/xml");
xmlhttp.send(txtRequest);
xmlhttp.onreadystatechange= callbackFunction;
}
function xmlGetText(DOM, elementName)
{
var textNode = DOM.getElementsByTagName("value")[0].childNodes[0]
return textNode.nodeValue;
}
function xmlGetAttribute(DOM, elementName, attributeName)
{
var attrNode = DOM.getElementsByTagName(elementName)[0].getAttributeNode(attributeName);
return attrNode.nodeValue;
}
function xmlGetElementByAttribute(DOM, elementName, attributeName, value)
{
var textNodes = DOM.getElementsByTagName(elementName)
//Form.showDebugMsg("Found " textNodes.length.toString() " GCVs")
for (var i = 0; i < textNodes.length; i )
{
var attrNode = textNodes[i].getAttributeNode(attributeName);
if (attrNode.nodeValue == value)
{
return textNodes[i]
}
}
return "";
}
function ndap2ldap(ndapName)
{
var parts = ndapName.split("\\");
var ldapName = "";
for (var i = 0; i < parts.length; i )
{
ldapName = parts[i] "," ldapName;
}
return ldapName.substring(0,ldapName.length-1);
}
function ldap2ndap(ldapName)
{
var parts = ldapName.split(",");
var ndapName = "";
for (var i = 0; i < parts.length; i )
{
ndapName = parts[i].split("=")[1] "\\" ndapName;
}
return ndapName.substring(0,ndapName.length-1);
}
function ldap_parent_DN(DN)
{
var secs = DN.split(",")
return DN.substring(secs[0].length 1);
}
/* error checking - tests to see if a variable is undefined */
function undef(v)
{
return (typeof(v) == "undefined") || (null == v) || (v.toString() == "") ;
}
function UA_DN(IDVault)
{
var Q = IDVault.globalQuery(null, "FindUserApp")
return Q[0].toString();
}
function cacheAllGCVs(IDVault)
{
//statically configured GCVs
GCV["dirxml.auto.treename"]="ACMEDEV"
//get other base GCVs
GCV["dirxml.auto.driverdn.ldap"] = UA_DN(IDVault);
GCV["dirxml.auto.driverdn"] = ldap2ndap(GCV["dirxml.auto.driverdn.ldap"]);
GCV["dirxml.auto.driverguid"] = IDVault.get(null,GCV["dirxml.auto.driverdn"],"Driver","GUID");
GCV["dirxml.auto.driverset.ldap"] = ldap_parent_DN(GCV["dirxml.auto.driverdn.ldap"]);
GCV["dirxml.auto.driverset"] = ldap2ndap(GCV["dirxml.auto.driverset.ldap"]);
// get GCVs from Driver Set
cacheGCV(IDVault, "DriverSet",GCV["dirxml.auto.driverset.ldap"])
// get GCVs from linked Driver Set GCV objects
cacheLinkedGCVs(IDVault, IDVault.get(null,GCV["dirxml.auto.driverset.ldap"],"DriverSet","DirXML-Policies"))
// get GCVs from Driver
cacheGCV(IDVault, "Driver",GCV["dirxml.auto.driverdn.ldap"])
// get GCVs from linked Driver GCV objects
cacheLinkedGCVs(IDVault.get(null,GCV["dirxml.auto.driverdn.ldap"],"Driver","DirXML-Policies"))
}
function cacheLinkedGCVs(IDVault, list)
{
if (!undef(list))
{
for (var i=0; i < list.length; i )
{
var values = list[i].split("#");
if (values[2]=="14")
{
cacheGCV(IDVault, "GCV", values[0])
}
}
}
}
function cacheGCV(IDVault,typeName,dn)
{
var xmlText = IDVault.get(null, dn, typeName, "DirXML-ConfigValues")
if (!undef(xmlText))
{
xmlGCV = xmlParse(xmlText.toString());
var defs = xmlGCV.getElementsByTagName("definition")
for (var i=0; i < defs.length; i )
{
var xmlAttrName=defs[i].getAttributeNode("name").nodeValue;
var xmlValue = defs[i].getElementsByTagName("value")[0].childNodes[0].nodeValue;
// Form.showDebugMsg("GCV[\"" xmlAttrName "\"] = \"" xmlValue "\"");
GCV[xmlAttrName] = xmlValue;
}
}
}
function getGCV(gcvName)
{
var definitionNode = xmlGetElementByAttribute(xmlGCV, "definition", "name", gcvName)
var valueNode = definitionNode.getElementsByTagName("value")
return valueNode[0].childNodes[0].nodeValue;
}
cacheAllGCVs(IDVault);
/** global objects **/
xmlGCV = new Object(); // Cache to store GCV data
GCV = new Array();
function createXMLHttpRequest() {
try { return new XMLHttpRequest(); } catch(e) {}
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
form.alert("XMLHttpRequest not supported by this browser");
return null;
}
xmlhttp = createXMLHttpRequest();
var rolesDN = GCV["gcv.driverset.rolesDN"]