aboutsummaryrefslogtreecommitdiff
path: root/h-client/hlibrary.py
diff options
context:
space:
mode:
authorAntonio Gallo <tonicucoz@gmail.com>2011-03-15 22:36:00 +0000
committerAntonio Gallo <tonicucoz@gmail.com>2011-03-15 22:36:00 +0000
commitb7a2393f9e78cf708e4c0d7e3858c8b646835a09 (patch)
tree94db213389d71741953717ce335d35c3edb6772c /h-client/hlibrary.py
parentd6272a60687f2e62218e036eb05fb127301d3a27 (diff)
improved the way the distribution entry is created
Diffstat (limited to 'h-client/hlibrary.py')
-rw-r--r--h-client/hlibrary.py71
1 files changed, 22 insertions, 49 deletions
diff --git a/h-client/hlibrary.py b/h-client/hlibrary.py
index 4ec7bef..1a86d81 100644
--- a/h-client/hlibrary.py
+++ b/h-client/hlibrary.py
@@ -29,6 +29,8 @@ from xml.dom import minidom
class Device(object):
_distrosTable = {
+ 'deltah' : 'gnewsense_2_3',
+ 'metad' : 'gnewsense_3_0',
'awen' : 'trisquel_3_5',
'taranis' : 'trisquel_4_0',
'slaine' : 'trisquel_4_5'
@@ -62,7 +64,7 @@ class Device(object):
self._vendor = None
self._model = None
self._kernel = None
- self._distributions = self.userDistribution()
+ self._distributions = [self.userDistribution()]
self._interface = 'not-specified'
self._year = 'not-specified'
self._vendorId = None
@@ -74,7 +76,7 @@ class Device(object):
def setPost(self):
self._post['model'] = self._model;
self._post['kernel'] = self._kernel;
- self._post['distribution'] = self._distributions;
+ self._post['distribution'] = self.createDistroEntry();
self._post['comm_year'] = self._year;
self._post['pci_id'] = self._vendorId + ':' + self._productId;
self._post['interface'] = self._interface;
@@ -90,18 +92,25 @@ class Device(object):
return self._distrosTable[codename]
return ''
- #add a distribution
- def addDistribution(self,distroName):
- distros = self._distributions.split(',')
- distros.append(distroName.lstrip().rstrip())
+ def createDistroEntry(self):
+ cleanDistros = []
+ for distro in self._distributions:
+ cleanDistros.append(distro.lstrip().rstrip())
#remove duplicates
- #distros = list(set(distros))
-
- self._distributions = ' , '.join(distros)
- #correct a strange behaviour
- if self._distributions[0] == ' , ':
- self._distributions = self._distributions[3:]
+ cleanDistros = list(set(cleanDistros))
+ #sort the elements
+ cleanDistros = sorted(cleanDistros)
+
+ dis = ' , '.join(cleanDistros)
+ #correct a strange python behaviour
+ if dis[0] == ' , ':
+ dis = dis[3:]
+ return dis
+
+ #add a distribution
+ def addDistribution(self,distroName):
+ self._distributions.append(distroName)
#add many distributions
#distroList: comma separated list of distros
@@ -488,40 +497,4 @@ class Client:
self.request.setPost(post)
self.request.perform(url.encode('utf-8'))
- #print self.request.contents
-
-#d = Videocard()
-
-#d.setVendor('Acer')
-#print d.getType()
-#d.setDistributions('trisquel_4_0,gnewsense');
-#print d.getStatus()
-
-client = Client('http://h-source/')
-client.createDevices()
-#client.request.perform('download/all/it')
-#print client.request.url
-client.sync()
-
-#for key,dev in client.devices.iteritems():
- #print key
- #print dev[0].getModel()
- #print dev[0].getDistributions()
- #print dev[0].getYear()
- #print dev[3]
- #print dev[0].getHowItWorks()
- #print dev[0].getDescription()+"\n"+"\n"
- #dev[0].addDistribution('taranis')
- #dev[0].addDistribution('metad')
- #dev[0].addDistribution('gingo')
- #dev[0].addDistribution('taranis')
- #print dev[0].getDistributions()
- #print dev[0].userDistribution()
-
-
-client.login('','')
-#print client.isLogged()
-client.submit()
-client.logout()
-#client.devices['p_14e4:4311'][0].setPost()
-#print client.devices['p_14e4:4311'][0].getPost() \ No newline at end of file
+ #print self.request.contents \ No newline at end of file