Ignore:
Timestamp:
Jun 15, 2017, 4:28:57 PM (2 years ago)
Author:
Juanma
Message:

added appImage catalogue download

File:
1 edited

Legend:

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

    r5133 r5187  
    3030                self.loadBundles=False
    3131                self.dbg=0
    32                 if args:
     32                if args[0]==1:
     33                        self.loadBundles=True
     34                if args[1]==1:
    3335                        self.dbg=args
    3436                self.threads={}                         #Dict that stores the functions that must execute each action
     
    3840                self.registerProcessProgress={}         #Dict that stores the progress for each function/parentAction pair
    3941                self.progressActions={}                 #Progress of global actions based on average progress of individual processes
     42                self.extraActions={}            #Dict that have the actions managed by plugins and no defined on the main class as relatedActions
    4043                self.result={}                          #Result of the actions
    4144                self.lock=threading.Lock()              #locker for functions related to threads (get_progress, is_action_running...)
     
    123126                if self.is_action_running('load'):
    124127                        self._join_action('load')
     128                sw_withoutStatus=False
     129                if action not in self.threads.keys():
     130                        #Attempt to add a new action managed by a plugin
     131                        self._debug("Attempting to find a plugin for action "+action)
     132                        if action in self.registeredPlugins.keys():
     133                                for packageType,plugin in self.registeredPlugins[action].items():
     134                                        self.progressActions[action]=0
     135                                        self.threads[action]='threading.Thread(target=self._execute_class_method(action,packageType,action).execute_action,args=[action])'
     136                                        break
     137                                self._debug('Plugin for '+action+' found: '+str(self.registeredPlugins[action]))
     138                                self.relatedActions.update({action:[action]})
     139                                sw_withoutStatus=True
    125140                if action in self.threads.keys():
    126141                        if self.is_action_running(action):
     
    135150                                self.threadsRunning[action].start()
    136151                                self.result[action]={}
    137                                 self.result[action]['status']={'status':-1,'msg':''}
     152                                if sw_withoutStatus:
     153                                        self.result[action]['status']={'status':0,'msg':''}
     154                                        self.extraActions.update({action:1})
     155                                else:
     156                                        self.result[action]['status']={'status':-1,'msg':''}
    138157                                self._debug("Thread "+str(self.threadsRunning[action])+" for action "+action+" launched")
    139158
     
    262281#                                               self._debug(str(len(self.threadsProgress[parentAction]))+" Threads for action "+parentAction+": "+str(self.threadsProgress[parentAction]))
    263282                                                acumProgress=0
    264                                                 for threadfunction in self.threadsProgress[parentAction]:
    265                                                         function=self.threadsProgress[parentAction][threadfunction]
     283                                                for threadfunction,function in self.threadsProgress[parentAction].items():
     284#                                                       function=self.threadsProgress[parentAction][threadfunction]
    266285#                                                       self._debug(str(function)+" "+ str(threadfunction) + " "+parentAction)
    267286                                                        acumProgress=acumProgress+function.progress
     
    311330                                        result[action]=[]
    312331                self.lock.release()
     332                if action in self.extraActions.keys():
     333                        self._load_Store()
    313334                return(result)
    314335        #def get_result
     
    350371        def _load_Store(self):
    351372                action='load'
     373                if self.loadBundles:
     374                        function=self._execute_class_method('loadCatalogue','appimage')
     375                        function.execute_action('loadCatalogue')
    352376                loadFunction=self._execute_class_method(action)
    353377                self.store=loadFunction.execute_action(action,self.store,self.loadBundles)
     
    400424                                pkgInfoFunction=self._execute_class_method(action,package_type,launchedby)
    401425#                               result.update(pkgInfoFunction.execute_action(action,typeDict[package_type]))
    402                                 result['data'].extend(pkgInfoFunction.execute_action(action,typeDict[package_type])['data'])
    403                                 result['status']=pkgInfoFunction.execute_action(action,typeDict[package_type])['status']
     426#                               result['data'].extend(pkgInfoFunction.execute_action(action,typeDict[package_type])['data'])
     427#                               result['status']=pkgInfoFunction.execute_action(action,typeDict[package_type])['status']
     428                                result=pkgInfoFunction.execute_action(action,typeDict[package_type])
    404429                        else:
    405430                                result['data'].append(appInfo)
Note: See TracChangeset for help on using the changeset viewer.