Changeset 5215


Ignore:
Timestamp:
Jun 17, 2017, 12:19:51 AM (18 months ago)
Author:
Juanma
Message:

Avoid reload the cache when installing/uninstalling apps

Location:
lliurex-store/trunk/fuentes/python3-lliurex-store.install/usr/share/lliurexstore
Files:
3 edited

Legend:

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

    r5199 r5215  
    6060                        appInfo=self._init_appInfo()
    6161#                       self._debug("Gathering package info for "+app.get_id())
     62                        appInfo['appstream_id']=app
    6263                        if app.get_id():
    6364                                appInfo['id']=app.get_id()
     
    168169
    169170        def _init_appInfo(self):
    170                 appInfo={'id':'',\
     171                appInfo={'appstream_id':'',\
     172                'id':'',\
    171173                'name':'',\
    172174                'version':'',\
  • lliurex-store/trunk/fuentes/python3-lliurex-store.install/usr/share/lliurexstore/plugins/searchManager.py

    r5018 r5215  
    8080                        self._debug("App direct match found: "+app.get_id())
    8181                if not exact_match:
    82                         applist=self._get_apps_by_match(tokens,applist)
     82                        applist.extend(self._get_apps_by_match(tokens,applist))
     83#               if len(applist):
     84#                       self._set_status(0)
     85#               else:
     86                        applist.extend(self._get_app_by_pkgname(tokens,applist))
     87                applist=set(applist)
    8388                if len(applist):
    8489                        self._set_status(0)
    8590                else:
    86                         applist=self._get_app_by_pkgname(tokens,applist)
    87                         if len(applist):
    88                                 self._set_status(0)
    89                         else:
    90                                 self._set_status(1)
     91                        self._set_status(1)
    9192                self.result['data']=applist
    9293                return(applist)
     
    158159        def _get_apps_by_match(self,tokens,applist=[]):
    159160                #Add items witch match >= self.precision
     161                if not applist:
     162                        insertPosition=1
     163                else:
     164                        insertPosition=len(applist)+1
    160165                apps_in_store=self.store.get_apps()
    161166                if apps_in_store:
     
    170175                                                score=app.search_matches(token)
    171176                                                if score>=self.precision:
     177                                                        if "appimage" in app.get_id().lower():
     178                                                                score=1
    172179                                                        if score in auxDict:
    173180                                                                auxDict[score].append(app)
     
    182189
    183190        def _get_app_by_pkgname(self,tokens,applist=[]):
     191                if not applist:
     192                        insertPosition=1
     193                else:
     194                        insertPosition=len(applist)+1
    184195                apps_in_store=self.store.get_apps()
    185196                if apps_in_store:
     
    192203                                        for token in tokens:
    193204                                                if app.get_pkgname_default()==token:
    194                                                         applist.append(app)
    195 
    196                 return(applist)
     205                                                        applist.insert(1,app)
     206
     207                return(applist)
  • lliurex-store/trunk/fuentes/python3-lliurex-store.install/usr/share/lliurexstore/storeManager.py

    r5199 r5215  
    419419                                self._debug("Retrieving info for "+str(typeDict[package_type]))
    420420                                pkgInfoFunction=self._execute_class_method(action,package_type,launchedby)
    421 #                               result.update(pkgInfoFunction.execute_action(action,typeDict[package_type]))
     421                                result.update(pkgInfoFunction.execute_action(action,typeDict[package_type]))
    422422#                               result['data'].extend(pkgInfoFunction.execute_action(action,typeDict[package_type])['data'])
    423423#                               result['status']=pkgInfoFunction.execute_action(action,typeDict[package_type])['status']
    424                                 result=pkgInfoFunction.execute_action(action,typeDict[package_type])
     424#                               result=pkgInfoFunction.execute_action(action,typeDict[package_type])
    425425                        else:
    426426                                result['data'].append(appInfo)
     
    561561                                        result=installFunction.execute_action(action,typeDict[package_type])
    562562                                        self.result[action]=result
     563                                        if result['status']['status']==0:
     564                                                #Mark the apps as installed or available
     565                                                for app in typeDict[package_type]:
     566                                                        if action=='install':
     567                                                                app['appstream_id'].set_state(1)
     568                                                                self._debug("App state changed to installed")
     569                                                        else:
     570                                                                app['appstream_id'].set_state(2)
     571                                                                self._debug("App state changed to available")
    563572                                        return_msg=True
    564                         self._debug("Regenerating the cache...")
    565                         self._load_Store()
     573#                       self._debug("Regenerating the cache...")
     574#                       self._load_Store()
    566575                self._log("Result "+action +": "+str(self.result[action]))
    567576                return(return_msg)
Note: See TracChangeset for help on using the changeset viewer.