diff options
author | Selvasundaram <selvam@gluster.com> | 2011-09-30 18:16:54 +0530 |
---|---|---|
committer | Selvasundaram <selvam@gluster.com> | 2011-09-30 18:16:54 +0530 |
commit | 72f1affcf7f1a16e35889dd3c57b315cd9f0f03e (patch) | |
tree | 111b4a2d4830e73f1f6a5fc0f551e05b021e3059 /src | |
parent | cdf343951cd9848ff502a1157f2db5146d11a491 (diff) | |
parent | db6d1cb16d6e0c751ee2f8733d2d29906199c977 (diff) |
Merge branch 'master' of github.com:gluster/console
Diffstat (limited to 'src')
3 files changed, 4 insertions, 429 deletions
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py index f446b99f..853b5887 100755 --- a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py +++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py @@ -14,10 +14,9 @@ if not p2 in sys.path: import socket import re import Utils -import Protocol import DiskUtils import NetworkUtils -from XmlHandler import ResponseXml +import XmlHandler from optparse import OptionParser @@ -26,7 +25,7 @@ def getDiskDom(): if not diskInfo: return None procMdstat = DiskUtils.getProcMdstat() - diskDom = Protocol.XDOM() + diskDom = XmlHandler.XDOM() disksTag = diskDom.createTag("disks", None) diskTagDict = {} for raidDiskName, raidDisk in procMdstat.iteritems(): @@ -173,7 +172,7 @@ def getServerDetails(listall): if not domain: domain = [None] - responseDom = ResponseXml() + responseDom = XmlHandler.ResponseXml() serverTag = responseDom.appendTagRoute("server") serverTag.appendChild(responseDom.createTag("name", serverName)) serverTag.appendChild(responseDom.createTag("domainname", domain[0])) diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/rrd_cpu.pl b/src/com.gluster.storage.management.gateway.scripts/src/backend/rrd_cpu.pl index 7b070812..30a66342 100755 --- a/src/com.gluster.storage.management.gateway.scripts/src/backend/rrd_cpu.pl +++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/rrd_cpu.pl @@ -80,5 +80,5 @@ sub updatecpudata { $ERROR = RRDs::error; print "Error in RRD::update for cpu: $ERROR\n" if $ERROR; - print "N:$user:$system:$idle\n"; + #print "N:$user:$system:$idle\n"; } diff --git a/src/com.gluster.storage.management.gateway.scripts/src/common/Protocol.py b/src/com.gluster.storage.management.gateway.scripts/src/common/Protocol.py deleted file mode 100644 index e078be1a..00000000 --- a/src/com.gluster.storage.management.gateway.scripts/src/common/Protocol.py +++ /dev/null @@ -1,424 +0,0 @@ -# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com> -# This file is part of Gluster Storage Platform. -# - -import xml -import xml.parsers.expat -import xml.dom.minidom as MDOM -import os -import Globals -import Utils - -XML_STRING = 0 -XML_FILE = 1 - -class XDOM: - _domObj = None - - def __init__(self): - self._domObj = MDOM.Document() - return - - @classmethod - def getText(self, nodeList): - rc = "" - for node in nodeList: - if node.nodeType == node.TEXT_NODE: - rc = rc + node.data - return rc.strip() - - def parseString(self, requestString): - try: - self._domObj = MDOM.parseString(requestString) - except xml.parsers.expat.ExpatError, e: - Utils.log("XML string parse error: %s" % str(e)) - return False - return True - - def parseFile(self, fileName): - try: - self._domObj = MDOM.parse(fileName) - except IOError, e: - Utils.log("error reading file: %s" % str(e)) - return False - except xml.parsers.expat.ExpatError, e: - Utils.log("XML file %s parse error: %s" % (fileName, str(e))) - return False - return True - - def setDomObj(self, dom): - if dom and type(dom) != type([]): - self._domObj = dom - return True - return False - - def createTextNode(self, text): - if not self._domObj: - return False - if not text: - return False - return self._domObj.createTextNode(str(text)) - - def createTag(self, tag, text=None): - if not self._domObj: - return None - if tag == None: - return None - - tagE = self._domObj.createElement(str(tag)) - if text: - tagEText = self._domObj.createTextNode(str(text)) - tagE.appendChild(tagEText) - return tagE - - def addTag(self, tag): - if not self._domObj: - return False - if not tag: - return False - - self._domObj.appendChild(tag) - return True - - def createTagRoute(self, tagRoute, text=None): - if not tagRoute: - return False - - tagList = tagRoute.split(".") - tag = None - previousTag = None - for tagName in tagList[:-1]: - newTag = self.createTag(tagName, None) - if not tag: - tag = newTag - previousTag = newTag - continue - previousTag.appendChild(newTag) - previousTag = newTag - - if previousTag: - previousTag.appendChild(self.createTag(tagList[-1], text)) - else: - tag = self.createTag(tagList[-1], text) - return tag - - def appendTagRoute(self, tagRoute, value=None): - if not self._domObj: - return False - if not tagRoute: - return False - - parentTagE = self._domObj - - tagNameList = tagRoute.split(".") - newTagRoute = tagNameList.pop(-1) - - for i in range(len(tagNameList), 0, -1): - tagE = self.getElementsByTagRoute(".".join(tagNameList[:i])) - if tagE: - parentTagE = tagE[0] - break - newTagRoute = tagNameList[i-1] + "." + newTagRoute - - newTagE = self.createTagRoute(newTagRoute, value) - if not newTagE: - return False - try: - parentTagE.appendChild(newTagE) - except xml.dom.HierarchyRequestErr, e: - Utils.log("error occured. %s" + str(e)) - return False - return True - - def setTextByTagRoute(self, tagRoute, tagValue): - if not self._domObj: - return None - - if not tagRoute: - return None - - tagE = self.getElementsByTagRoute(tagRoute) - if not tagE: - return False - - parentTagE = self.getElementsByTagRoute(".".join(tagRoute.split(".")[:-1])) - if not parentTagE: - return False - - parentTagE[0].childNodes.remove(tagE[0]) - parentTagE[0].appendChild(self.createTag(tagRoute.split(".")[-1], tagValue)) - return True - - def getElementsByTagRoute(self, tagRoute): - if not self._domObj: - return None - - if not tagRoute: - return None - - x = None - for tag in tagRoute.split("."): - if x is None: - x = self._domObj.getElementsByTagName(tag) - continue - if x == []: - break - x = x[0].getElementsByTagName(tag) - return x - - def getTextByTagRoute(self, tagRoute): - if not self._domObj: - return None - - x = self.getElementsByTagRoute(tagRoute) - if x: - return self.getText(x[0].childNodes) - return None - - def getElementsByTagName(self, name): - if not self._domObj: - return None - return self._domObj.getElementsByTagName(name) - - def writexml(self, fileName, indent="", addindent="", newl=""): - if not self._domObj: - return None - try: - fp = open(fileName, "w") - self._domObj.writexml(fp, indent, addindent, newl) - fp.close() - return True - except IOError, e: - return False - - def toString(self, indent=" ", newl="\n", encoding = None): - if not self._domObj: - return None - return self._domObj.toprettyxml(indent, newl, encoding) - - def toxml(self, encoding = None): - if not self._domObj: - return None - return self._domObj.toxml(encoding) - - def toprettyxml(self, indent=" ", newl="\n", encoding = None): - return self.toString(indent, newl, encoding) - - def getAttribute(self, attributeName): - if not attributeName: - return None - try: - return self.getElementsByTagName("command")[0].getAttribute(attributeName) - except IndexError, e: - return False - - def setAttribute(self, attributeName, attributeValue): - if not (attributeName and attributeValue): - return None - try: - return self.getElementsByTagName("command")[0].setAttribute(attributeName, attributeValue) - except IndexError, e: - return False - - def getRequestCommand(self): - return self.getAttribute("request") - - def getResponseCommand(self): - return self.getAttribute("response") - - def getResponseCode(self): - return self.getAttribute("response-code") - - def getMessageId(self): - return self.getAttribute("id") - - def getVersion(self): - return self.getAttribute("version") - - def getRequestAction(self): - return self.getAttribute("action") - - def setVersion(self, value): - return self.setAttribute("version", value) - - def setRequestAction(self, value): - return self.setAttribute("action", value) - - def createCommandTag(self, command, responseCode, id, version=Globals.GLUSTER_PLATFORM_VERSION): - commandTag = self._domObj.createElement("command") - commandTag.setAttribute("response", command) - commandTag.setAttribute("response-code", responseCode) - commandTag.setAttribute("id", id) - commandTag.setAttribute("version", version) - return commandTag -##--end of XDOM - -class RequestXml(XDOM): - def __init__(self, requestString, type=None): - if None == requestString: - XDOM.__init__(self) - return - try: - if None == type: - if os.path.isfile(requestString): - self._domObj = MDOM.parse(requestString) - else: - self._domObj = MDOM.parseString(requestString) - elif XML_FILE == type: - self._domObj = MDOM.parse(requestString) - elif XML_STRING == type: - self._domObj = MDOM.parseString(requestString) - except IOError, e: - XDOM.__init__(self) - except xml.parsers.expat.ExpatError, e: - XDOM.__init__(self) - -##--end of RequestXML - -class ResponseXml(XDOM): - _commandTag = None - def __init__(self, command, responseCode, id, version=Globals.GLUSTER_PLATFORM_VERSION): - XDOM.__init__(self) - if command and responseCode and id: - self._commandTag = self.createCommandTag(command, responseCode, id, version) - self._domObj.appendChild(self._commandTag) - - def appendCommand(self, command, responseCode, id, version=Globals.GLUSTER_PLATFORM_VERSION): - if command and responseCode and id: - self._commandTag = self.createCommandTag(command, responseCode, id, version) - self._domObj.appendChild(self._commandTag) - return True - return False - - def append(self, tagName, tagValue=None): - if not self._commandTag: - return False - tag = self.createTag(tagName, tagValue) - if tag: - self._commandTag.appendChild(tag) - return True - return False - - def appendTag(self, tag): - if not tag: - return False - if not self._commandTag: - return False - self._commandTag.appendChild(tag) - return True - - def appendTagRoute(self, tagRoute, value=None): - if not self._commandTag: - return False - if not tagRoute: - return False - - parentTagE = self._commandTag - - tagNameList = tagRoute.split(".") - newTagRoute = tagNameList.pop(-1) - - for i in range(len(tagNameList), 0, -1): - tagE = self.getElementsByTagRoute(".".join(["command"] + tagNameList[:i])) - if tagE: - parentTagE = tagE[0] - break - newTagRoute = tagNameList[i-1] + "." + newTagRoute - - newTagE = self.createTagRoute(newTagRoute, value) - if not newTagE: - return False - try: - parentTagE.appendChild(newTagE) - except xml.dom.HierarchyRequestErr, e: - Utils.log("error occured. %s" + str(e)) - return False - return True - - def appendTagRouteOld(self, tagRoute, value=None): - if not tagRoute: - return False - if not self._commandTag: - return False - - tmpTagRoute = "" - previousTagE = self._commandTag - tagE = None - for tagName in tagRoute.split("."): - if not tmpTagRoute: - tagE = self.getElementsByTagRoute("command." + tagName) - else: - tagE = self.getElementsByTagRoute("command." + tmpTagRoute + "." + tagName) - if not tagE: - break - if len(tagE) != 1: - return False - previousTagE = tagE[0] - if not tmpTagRoute: - tmpTagRoute = tagName - else: - tmpTagRoute = tmpTagRoute + "." + tagName - - if tmpTagRoute == tagRoute: - return False - newTagRoute = tagRoute[len(tmpTagRoute):] - if newTagRoute[0] == '.': - newTagRoute = newTagRoute[1:] - - if previousTagE.childNodes and previousTagE.childNodes[0].nodeType == previousTagE.TEXT_NODE: - return False - previousTagE.appendChild(self.createTagRoute(newTagRoute, value)) - return True -##--end of ResponseXml - -def test(): - #volumes = RequestXml(VolumeFile, XML_FILE).getElementsByTagRoute("volume-list.volume") - requestStr = '''<command request="create-volume" id="123" version="3.1"> -<volume> -<name>movies1</name> -<type>cluster mirror</type> -<start>512000</start> -<server>zresearch</server> -<vacl>192.168.20.*</vacl> -<vacl>192.168.30.*</vacl> -<nfs> -<export>no</export> -</nfs> -<cifs> -<export>no</export> -</cifs> -<webdav> -<export>no</export> -</webdav> -</volume> -</command>''' - - requestXml = RequestXml(requestStr) - print requestXml.getAttribute("") - -def test1(): - rs = ResponseXml("create-volume", "OK", "xyz") - rs.appendTagRoute("volume.detail.name", "music") - print rs.toprettyxml() - rs.append("volume", "data") - print rs.toprettyxml() - rs.appendTagRoute("volume.detail.ipaddr", "192.168.10.1") - print rs.toprettyxml() - print rs.appendTagRoute("volume.detail.ipaddr.v6", "ff:ff::ff::") - print rs.toprettyxml() - - print rs.getTextByTagRoute("command.volume.detail") - -def test2(): - rs = ResponseXml("download-volume-logs", "OK", "xyz") - te = rs.createTag("interface", None) - te.appendChild(rs.createTag("device", "DEVICE1")) - te.appendChild(rs.createTag("description", "my device one")) - rs.appendTag(te) - - te = rs.createTag("interface", None) - te.appendChild(rs.createTag("device", "DEVICE2")) - te.appendChild(rs.createTag("description", "my device two")) - rs.appendTag(te) - print rs.toprettyxml() - |