Ignore:
Timestamp:
Feb 16, 2017, 2:59:33 PM (4 years ago)
Author:
Juanma
Message:

WIP on CLI

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-store/trunk/fuentes/python3-lliurex-store.install/usr/share/lliurexstore/plugins/debManager.py

    r3646 r3653  
    1313                #self.pluginInfo=['install','deb','remove','deb','pkginfo','deb','remove','zmd']
    1414                self.pluginInfo={'install':'deb','remove':'deb','pkginfo':'deb'}
     15                self.result={}
     16                self.result['data']={}
     17                self.result['status']={}
    1518                self.count=0
    1619        #def __init__
     
    3841                self.installer=packagekit.Client()
    3942                self.count=len(applist)
     43                self._set_status(-1)
    4044                #1.- If the app doesn't exist cancel the action
    4145                for appInfo in applist:
     
    5155                                if action=='pkginfo':
    5256                                        self._get_App_Dependencies(appInfo,app)
    53                         self.progress=self.progress+(self.partialProgress/self.count)
    54                         self._debug("Progress: "+str(self.progress))
     57#                       self.progress=self.progress+(self.partialProgress/self.count)
     58                        self._debug("Final Progress: "+str(self.progress))
    5559                self.progress=100
    5660                return(self.result)
    5761        #def execute_action
    5862
     63        def _set_status(self,status,msg=''):
     64                self.result['status']={'status':status,'msg':msg}
     65
    5966        def _callback(self,status,typ,data=None):
     67                print("PRO "+str(self.progress))
    6068                self.partialProgress=status.get_property('percentage')
    61                 self.progress=self.partialProgress/self.count
    62 #               self._debug("Progress"+str(self.partialProgress))
     69                self.partialProgress=self.partialProgress/self.count
     70                self.progress=(self.progress+self.partialProgress)/self.count
     71                self._debug("Partial Progress"+str(self.partialProgress))
     72                self._debug("Total Progress"+str(self.progress))
     73                self._debug("Total apps"+str(self.count))
    6374        #def _callback
    6475
     
    6879                try:
    6980                        self.installer.install_packages(True,[app.get_id(),],None,self._callback,None)
    70                         self.result.append({app.get_id():0})
     81                        self.result['data'].update({app.get_id():u'installed'})
    7182                except Exception as e:
    7283                        self._debug("Install error: "+str(e.code))
    73                         self.result.append({app.get_id():e.code})
    74                 self.partialProgress=100
     84                        self._set_status(e.code)
     85                finally:
     86                        self.partialProgress=100
    7587        #def _install_App_from_Repo
    7688                       
     
    7890                try:
    7991                        self.installer.remove_packages(True,[app.get_id(),],True,False,None,self._callback,None)
    80                         self.result.append({app.get_id():0})
     92                        self.result['data'].update({app.get_id():0})
    8193                except Exception as e:
    8294                        self._debug("Remove error: " +str(e.code))
    83                         self.result.append({app.get_id():e.code})
    84                 self.partialProgress=100
     95                        self._set_status(e.code)
     96                finally:
     97                        self.partialProgress=100
    8598        #def _remove_App
    8699
Note: See TracChangeset for help on using the changeset viewer.