]>
git.ipfire.org Git - people/jschlag/pbs.git/blob - src/buildservice/arches.py
5 class Arches(base
.Object
):
6 def get_all(self
, really
=False):
7 query
= "SELECT * FROM arches"
10 query
+= " WHERE `binary` = 'Y'"
12 query
+= " WHERE NOT name = 'src'"
14 query
+= " ORDER BY prio ASC"
16 arches
= self
.db
.query(query
)
18 return [Arch(self
.pakfire
, a
.id, a
) for a
in arches
]
20 def get_name_by_id(self
, id):
21 arch
= self
.db
.get("SELECT name FROM arches WHERE id = %s", id)
25 def get_id_by_name(self
, name
):
26 arch
= self
.db
.get("SELECT id FROM arches WHERE name = %s", name
)
31 def get_by_name(self
, name
):
32 id = self
.get_id_by_name(name
)
35 return self
.get_by_id(id)
37 def get_by_id(self
, id):
38 return Arch(self
.pakfire
, id)
41 arch
= self
.db
.get("SELECT id FROM arches WHERE id = %s", id)
48 def expand(self
, arches
):
52 query
= "SELECT id FROM arches WHERE name != 'noarch'"
56 for arch
in arches
.split():
58 query
.append("name = %s")
60 query
= "SELECT id FROM arches WHERE (%s)" % " OR ".join(query
)
62 return sorted([self
.get_by_id(a
.id) for a
in self
.db
.query(query
, *args
)])
65 class Arch(base
.Object
):
66 def __init__(self
, pakfire
, id, data
=None):
67 base
.Object
.__init
__(self
, pakfire
)
69 # The ID of this architecture.
75 def __cmp__(self
, other
):
76 return cmp(self
.prio
, other
.prio
)
80 if self
._data
is None:
81 self
._data
= self
.db
.get("SELECT * FROM arches WHERE id = %s", self
.id)
96 if self
.name
== "src":