From 0a32c39e86f4c3784efb0c5b8c3ba9360959e35a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Metin?= Date: Thu, 14 Jul 2005 11:28:26 +0000 Subject: [PATCH] =?UTF-8?q?provides=20ve=20requires=20b=C3=B6l=C3=BCmlerin?= =?UTF-8?q?i=20d=C3=BCn=20G=C3=BCrer=20ile=20"comar=20ve=20pisi"=20konulu?= =?UTF-8?q?=20panelde=20tart=C4=B1=C5=9Ft=C4=B1=C4=9F=C4=B1m=C4=B1z=20?= =?UTF-8?q?=C3=BCzere=20g=C3=BCncelledim.=20Belge=20de=20g=C3=BCncellendi.?= =?UTF-8?q?=20PSPEC=20yazan=20arkada=C5=9Flar=C4=B1n=20da=20dikkatine=20:)?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pisi/metadata.py | 4 +++- pisi/specfile.py | 28 ++++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/pisi/metadata.py b/pisi/metadata.py index 464824f3..bd9dda6b 100644 --- a/pisi/metadata.py +++ b/pisi/metadata.py @@ -80,7 +80,9 @@ class MetaData(XmlFile): self.package.paths = pkg.paths self.package.history = src.history # FIXME self.package.conflicts = pkg.conflicts - self.package.provides = pkg.provides + self.package.providesComar = pkg.providesComar + self.package.requiresComar = pkg.requiresComar + def read(self, filename): self.readxml(filename) diff --git a/pisi/specfile.py b/pisi/specfile.py index 96e690f3..20449189 100644 --- a/pisi/specfile.py +++ b/pisi/specfile.py @@ -129,6 +129,22 @@ class PathInfo: if not self.pathname: return False return True +class ComarProvide: + def __init__(self, node): + self.om = getNodeText(node) + self.script=getNodeAttribute(node, "script") + + def elt(self, xml): + node = xml.newNode("COMAR") + xml.addText(node, self.om) + node.setAttribute("script", self.script) + return node + + def verify(self): + if not self.om or not self.script: + return False + return True + class SourceInfo: """A structure to hold source information. Source information is located under tag in PSPEC file.""" @@ -223,8 +239,10 @@ class PackageInfo(object): self.history = [UpdateInfo(x) for x in historyElts] conflElts = getAllNodes(node, "Conflicts/Package") self.conflicts = map(getNodeText, conflElts) - provElts = getAllNodes(node, "Provides/OM") - self.provides = map(getNodeText, provElts) + provComarElts = getAllNodes(node, "Provides/COMAR") + self.providesComar = [ComarProvide(x) for x in provComarElts] + reqComarElts = getAllNodes(node, "Requires/COMAR") + self.requiresComar = map(getNodeText, reqComarElts) def elt(self, xml): node = xml.newNode("Package") @@ -247,8 +265,10 @@ class PackageInfo(object): xml.addNodeUnder(node, "History", update.elt(xml)) for conflict in self.conflicts: xml.addTextNodeUnder(node, "Conflicts/Package", conflict) - for om in self.provides: - xml.addTextNodeUnder(node, "Provides/OM", om) + for pcomar in self.providesComar: + xml.addTextNodeUnder(node, "Provides/COMAR", pcomar.elt(xml)) + for rcomar in self.requiresComar: + xml.addTextNodeUnder(node, "Requires/COMAR", rcomar) return node def verify(self):