def readDependentPackageData(self,line): strUtils = StringUtils() listPackages=line.split(",") listdependentpkgs=[] for line in listPackages: line=strUtils.getStringInBrackets(line) listContents=line.split() totalContents = len(listContents) i=0 while i < totalContents: dpkg = dependentPackageData() compare=None if listContents[i].startswith("/"): i=i+1 continue if i+2 < len(listContents): if listContents[i+1] == ">=": compare="gte" elif listContents[i+1] == "<=": compare="lte" elif listContents[i+1] == "==": compare="eq" elif listContents[i+1] == "<": compare="lt" elif listContents[i+1] == ">": compare="gt" elif listContents[i+1] == "=": compare="eq" if compare is not None: dpkg.package=listContents[i] dpkg.compare=compare dpkg.version=listContents[i+2] i=i+3 else: dpkg.package=listContents[i] i=i+1 listdependentpkgs.append(dpkg) return listdependentpkgs