[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [emerge] bin/Packager: undo 417e95c8328d9b407330428bf7c71a611cfd962e
From: Patrick Spendrin <ps_ml () gmx ! de>
Date: 2015-09-18 9:02:19
Message-ID: E1ZcrYh-00081V-Lw () scm ! kde ! org
[Download RAW message or body]
Git commit cade3c7a7c75ae741ae33282d8f6f553311578f0 by Patrick Spendrin.
Committed on 18/09/2015 at 09:01.
Pushed by sengels into branch 'master'.
undo 417e95c8328d9b407330428bf7c71a611cfd962e
we shouldn't simply remove API, even if it seems to be not used in here
A +20 -0 bin/Packager/MultiPackager.py
A +48 -0 bin/Packager/PackagerFactory.py
http://commits.kde.org/emerge/cade3c7a7c75ae741ae33282d8f6f553311578f0
diff --git a/bin/Packager/MultiPackager.py b/bin/Packager/MultiPackager.py
new file mode 100644
index 0000000..1a98e8c
--- /dev/null
+++ b/bin/Packager/MultiPackager.py
@@ -0,0 +1,20 @@
+#
+# copyright (c) 2009 Ralf Habacker <ralf.habacker@freenet.de>
+#
+
+from Packager.PackagerFactory import *
+
+class MultiPackager(object):
+ def __init__(self, packagerType=None):
+ utils.debug( "MultiPackager __init__ %s" %packagerType, 2 )
+ self.packagers = PackagerFactory(self, packagerType)
+
+ def createPackage(self):
+ result = True
+ for packager in self.packagers:
+ if not packager.createPackage():
+ result = False
+ return result
+
+ def make_package(self):
+ return self.createPackage()
diff --git a/bin/Packager/PackagerFactory.py b/bin/Packager/PackagerFactory.py
new file mode 100644
index 0000000..fce24d6
--- /dev/null
+++ b/bin/Packager/PackagerFactory.py
@@ -0,0 +1,48 @@
+#
+# copyright (c) 2009 Ralf Habacker <ralf.habacker@freenet.de>
+#
+
+from Packager.KDEWinPackager import *
+from Packager.CPackPackager import *
+from Packager.SevenZipPackager import *
+from Packager.MSInstallerPackager import *
+from Packager.InnoSetupPackager import *
+
+def init(packager, parent):
+ packager.subinfo = parent.subinfo
+ packager.parent = parent
+ packager.category = parent.category
+ packager.package = parent.package
+ packager.version = parent.version
+ packager.buildTarget = parent.subinfo.buildTarget
+ return
+
+def PackagerFactory(parent, packagerType):
+ """provides multi packager type api
+ return PackagerBase derived instance for recent settings"""
+ utils.debug( "PackagerFactory called", 2 )
+ packagers = []
+
+ if packagerType:
+ for packagerClass in packagerType:
+ if not issubclass(packagerClass, PackagerBase):
+ utils.die("PackagerFactory: unsupported packager %s" % packagerClass)
+ else:
+ packager = packagerClass()
+ init(packager, parent)
+ packagers.append(packager)
+ else:
+ # automatic detection
+ packager = InnoSetupPackager()
+ init(packager, parent)
+
+ if packager.configFile() != None:
+ packagers.append(packager)
+
+ # default packager
+ if len(packagers) == 0:
+ packager = KDEWinPackager()
+ init(packager, parent)
+ packagers.append(packager)
+ return packagers
+
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic