diff options
| author | Shireesh Anjal <shireesh@gluster.com> | 2011-03-25 15:43:32 +0530 |
|---|---|---|
| committer | Shireesh Anjal <shireesh@gluster.com> | 2011-03-25 15:43:32 +0530 |
| commit | e40556bdf8fd27e35878a8c1942573da46204b7e (patch) | |
| tree | b4cf1ec243bf13aee4269981d8f8aeeaa57f1c15 /com.gluster.storage.management.server.scripts/src/server/RequestHandler.py | |
| parent | 9e2122cf8ae1273bb8cdcbcc0f8fb2176f14a428 (diff) | |
Server agent and transport agent
Diffstat (limited to 'com.gluster.storage.management.server.scripts/src/server/RequestHandler.py')
| -rw-r--r-- | com.gluster.storage.management.server.scripts/src/server/RequestHandler.py | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/com.gluster.storage.management.server.scripts/src/server/RequestHandler.py b/com.gluster.storage.management.server.scripts/src/server/RequestHandler.py new file mode 100644 index 00000000..e6fe88ff --- /dev/null +++ b/com.gluster.storage.management.server.scripts/src/server/RequestHandler.py @@ -0,0 +1,58 @@ +import os +import glob +#import paramiko +import tempfile +#import uuid +import socket +import tarfile +import time +import Globals +import Commands +from Protocol import * +from RemoteExecute import * +from NetworkUtils import * + +def handleRequestGetServerNetworkConfig(requestDom): + messageId = requestDom.getAttribute("id") + serverName = requestDom.getTextByTagRoute("command.server-name") + version = requestDom.getVersion() + request = requestDom.getAttribute("request") + + if not serverName: + responseDom = ResponseXml(Commands.COMMAND_GET_SERVER_NETWORK_CONFIG, "No server name given", messageId, version) + responseDom.appendTagRoute("server.name", serverName) + return responseDom + + #serverIpList = getExecuteServerList([serverName]) + #if not serverIpList: + # responseDom = ResponseXml(Commands.COMMAND_GET_SERVER_NETWORK_CONFIG, "Unable to get server ip", messageId, version) + # responseDom.appendTagRoute("server.name", serverName) + # return responseDom + + successStatusDict, failureServerList, cleanupStatusDict = \ + execute({serverName:[serverName]}, requestDom, Globals.REQUEST_MAP[request]["cleanup"]) + if failureServerList: + response = failureServerList[serverName]["StdOutString"] + if not response: + return ResponseXml(Commands.COMMAND_GET_SERVER_NETWORK_CONFIG, + "Failed to execute get server network config", messageId, version) + responseDom = XDOM() + if responseDom.parseString(response): + return responseDom + errorResponseDom = ResponseXml(Commands.COMMAND_GET_SERVER_NETWORK_CONFIG, + "Invalid response of get server network config", messageId, version) + errorResponseDom.appendTagRoute("server.name", serverName) + return errorResponseDom + + responseDom = XDOM() + if not responseDom.parseString(successStatusDict[serverName]["StdOutString"]): + errorResponseDom = ResponseXml(Commands.COMMAND_GET_SERVER_NETWORK_CONFIG, + "Invalid response of get server network config", messageId, version) + errorResponseDom.appendTagRoute("server.name", serverName) + return errorResponseDom + + #configDom = getServerNetworkConfigFromLocalFile(serverName) + #if not (configDom and compareServerNetworkDom(configDom, responseDom)): + # updateServerNetworkConfigXmlFile(serverName, responseDom) + # syncConfiguration() + return responseDom |
