# -*- coding:utf-8 -*- import os, sys, time import shutil from ssat_sdk.utils import Environment from ConfigParser import * import thread try: Python_Home = sys.prefix # Server_CFG_Path = Python_Home + Environment.SDK_Relative_Path + u"config/server.cfg" Server_CFG_Path = Python_Home + Environment.SDK_Relative_Path + u"config/server_run.cfg" Server_CFG_Local_Path = Python_Home + Environment.SDK_Relative_Path + u"config/server.cfg" # Server_CFG_Path = "../config/server.cfg" Home_Init = True except KeyError, e: print "KeyError:", e.message class ServiceConfig(): ServiceModel = "service" CFGParser = ConfigParser() def __init__(self): if not os.path.exists(Server_CFG_Path): print 'server_run.cfg文件不存在,复制server.cfg文件' shutil.copy(Server_CFG_Local_Path, Server_CFG_Path) print u"Server配置文件:", Server_CFG_Path def writeCFG(self): self.CFGParser.write(open(Server_CFG_Path, "w")) def getOptions(self, section): options = None try: options = self.CFGParser.options(section) except Exception,e: print "Error:service_config:section %s not found"%section return options '''废弃''' def setCCardListenerPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service","ccard_port", listener_port) self.writeCFG() '''废弃''' def getCCardListenerPort(self): self.CFGParser.read(Server_CFG_Path) value = self.CFGParser.getint("service", "ccard_port") return value '''废弃''' def setC22293ListenerPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service","c22293_port", str(listener_port)) self.writeCFG() '''废弃''' def getC22293ListenerPort(self): self.CFGParser.read(Server_CFG_Path) value = self.CFGParser.get("service", "c22293_port") value_int = int(value) return value_int '''废弃''' def setSDKServer(self, onOff): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service","onOff", onOff) self.writeCFG() '''废弃''' def getSDKServer(self): self.CFGParser.read(Server_CFG_Path) return self.CFGParser.get("service", "onOff") '''废弃''' def setSDKListenerPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service", "sdk_port", listener_port) self.writeCFG() '''废弃''' def getSDKListenerPort(self): self.CFGParser.read(Server_CFG_Path) value = self.CFGParser.getint("service", "sdk_port") return value '''废弃''' def setTG39ListenerPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service", "tg39_port", str(listener_port)) self.writeCFG() '''废弃''' def getTG39ListenerPort(self): self.CFGParser.read(Server_CFG_Path) value = self.CFGParser.get("service", "tg39_port") value_int = int(value) return value_int '''废弃''' def setUB530ListenerPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service", "ub530_port", str(listener_port)) self.writeCFG() '''废弃''' def getUB530ListenerPort(self): self.CFGParser.read(Server_CFG_Path) value = self.CFGParser.get("service", "ub530_port") value_int = int(value) return value_int '''废弃''' def setRedRatHubPort(self, listener_port): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service", "redrathub_port", listener_port) self.writeCFG() '''废弃''' def getRedRatHubPort(self): self.CFGParser.read(Server_CFG_Path) try: return self.CFGParser.getint("service","redrathub_port") except: return 40000 '''废弃''' def getRedRatHubSignalXml(self): self.CFGParser.read(Server_CFG_Path) try: return self.CFGParser.get("service","redrathub_signal") except: return None '''废弃''' def setRedRatHubSignalXml(self, signal_xml): self.CFGParser.read(Server_CFG_Path) self.CFGParser.set("service", "redrathub_signal", signal_xml) self.writeCFG() ''' adb设备可用或不可用状态; return ture:可用,false:不可用 ''' def getAdbDeviceSatatus(self): self.CFGParser.read(Server_CFG_Path) Online = "Online" options = self.getOptions("ADBSTATUS") # print "getAdbDeviceSatatus,options:",options if options is None: return False for option in options: status = self.CFGParser.get("ADBSTATUS", option) # print "getAdbDeviceSatatus,%s:"%option, status if status == Online: return True return False ''' 获取adb设备状态描述 return: none表示没有这个设备,Unauthorized表示设备未授权,offline表示设备离线,online表示在线可用 ''' def getAdbDevSTDesc(self): self.CFGParser.read(Server_CFG_Path) options = self.getOptions("ADBSTATUS") # print "getAdbDeviceSatatus,options:",options if options is None: return "none" for option in options: status = self.CFGParser.get("ADBSTATUS", option) return status return "none" def testCFG(): print "testCFG:" serviceCFG = ServiceConfig() if __name__ == "__main__": # thread.start_new_thread(testCFG,()) # thread.start_new_thread(testCFG,()) # thread.start_new_thread(testCFG,()) serviceCFG = ServiceConfig() # print "sections:", serviceCFG.CFGParser.sections() for i in range(200): ret = serviceCFG.getAdbDevSTDesc() ret2 = serviceCFG.getAdbDeviceSatatus() print "ret,ret2:",ret,ret2 time.sleep(1) time.sleep(3)