Beispiel #1
0
 def _parseInst(self, name, vmParameters):
     r'''@types: str, list[str] -> sap.Instance?
     @raise ValueError: Incorrect system name
     '''
     inst = None
     try:
         inst = sap_discoverer.parseInstanceFromName(name)
     except ValueError, ve:
         logger.warn("%s: %s" % (ve, name))
         logger.info("Possibly the instance name is composed value")
 def __parseSection(self, sectionName, configParser):
     r'''@types: str, ConfigParser.ConfigParser -> RfcConfiguration
     @raise ValueError: Failed to parse SID from comment line
     '''
     comment = configParser.get(sectionName, 'comment')
     # parse SID from comment
     mo = re.match('SAP System:(.*?),', comment, re.I)
     if not mo:
         raise ValueError("Failed to parse SID from comment line")
     sapSystem = sap.System(mo.group(1))
     # parse instance from its name (name + number)
     sapSystem.addInstance(sap_discoverer.parseInstanceFromName(
         configParser.get(sectionName, 'instance')))
     return self.RfcConfiguration(
         sapSystem,
         configParser.get(sectionName, 'host'),
         instancesCount = configParser.get(sectionName, 'instances'),
         serviceName = configParser.get(sectionName, 'service'),
         comment = comment)
Beispiel #3
0
 def _parseInstanceInfo(self, item):
     r'@types: Properties -> InstanceInfo'
     hostname = item.get('Host')
     if not hostname:
         raise ValueError("Address is not specified")
     ports = keep(item.get, self.ENDPOINT_NAMES)
     endpoints = [netutils.createTcpEndpoint(hostname, p) for p in ports]
     state = self._parseInstanceState(item.get('State'))
     instName = item.get('Caption')
     fullName = item.get('Name')
     _inst = sap_discoverer.parseInstanceFromName(instName)
     instName = _inst.name
     if fullName:
         details = sap_discoverer.parseSystemAndInstanceDetails(fullName)
         _, hostname, nr = details
     else:
         nr = _inst.number
     instanceWithHostname = sap.Instance(instName, nr, hostname=hostname)
     return self.InstanceInfo(instanceWithHostname, endpoints, state=state)
Beispiel #4
0
 def __parseSection(self, sectionName, configParser):
     r'''@types: str, ConfigParser.ConfigParser -> RfcConfiguration
     @raise ValueError: Failed to parse SID from comment line
     '''
     comment = configParser.get(sectionName, 'comment')
     # parse SID from comment
     mo = re.match('SAP System:(.*?),', comment, re.I)
     if not mo:
         raise ValueError("Failed to parse SID from comment line")
     sapSystem = sap.System(mo.group(1))
     # parse instance from its name (name + number)
     sapSystem.addInstance(
         sap_discoverer.parseInstanceFromName(
             configParser.get(sectionName, 'instance')))
     return self.RfcConfiguration(
         sapSystem,
         configParser.get(sectionName, 'host'),
         instancesCount=configParser.get(sectionName, 'instances'),
         serviceName=configParser.get(sectionName, 'service'),
         comment=comment)