Ignore:
Timestamp:
Apr 18, 2018, 2:28:43 PM (19 months ago)
Author:
Juanma
Message:

Restored version from ppa

File:
1 edited

Legend:

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

    r7137 r7143  
    1717class StoreManager():
    1818        def __init__(self,*args,**kwargs):
     19                self.dbg=False
    1920                if 'dbg' in kwargs.keys():
    2021                        self.dbg=kwargs['dbg']
    21                 self.dbg=True
    2222                self._propagate_dbg=False
    2323                self.store=None
    24                 self.stores={}
    2524                self.related_actions={
    2625                                        'load':['load'],
     
    392391        def _load_Store(self):
    393392                action='load'
    394                 #Load appstream metada first
    395                 package_type='*'
    396                 load_function=self._execute_class_method(action,package_type,launchedby=None)
    397                 self.store=load_function.execute_action(action=action,store=self.store)['data']
    398                 #Once appstream is loaded load the appstream plugins for other package types (snap, appimage...)
    399393                for package_type in self.plugins_registered[action]:
    400                         if package_type!='*':
    401                                 load_function=self._execute_class_method(action,package_type,launchedby=None)
    402                                 self.store=load_function.execute_action(action=action,store=self.store)['data']
     394                        load_function=self._execute_class_method(action,package_type,launchedby=None)
     395                        self.store=load_function.execute_action(action=action,store=self.store)['data']
    403396        #def _load_Store
    404397
     
    424417        #  - Dict with the related info
    425418        ####
    426         def _get_Extended_App_Info(self,info_applist,launchedby=None,fullsearch=True,channel=''):
     419        def _get_Extended_App_Info(self,info_applist,launchedby=None,fullsearch=True):
    427420                #Check if there's any plugin for the distinct type of packages
    428421                action='pkginfo'
     
    431424                result['data']=[]
    432425                result['status']={'status':0,'msg':''}
    433                 processed=[]
    434426                for app_info in info_applist:
    435                         if channel:
    436                                 types_dict[channel]=[app_info]
     427                        package_type=self._check_package_type(app_info)
     428                        if package_type in types_dict:
     429                                types_dict[package_type].append(app_info)
    437430                        else:
    438                                 available_channels=self._check_package_type(app_info)
    439                                 for package_type in available_channels:
    440                                         if app_info['component']!='':
    441                                                 if app_info['package'] in processed:
    442                                                         continue
    443 #                                               processed.append(app_info['package'])
    444 
    445                                         if package_type in types_dict:
    446                                                 types_dict[package_type].append(app_info)
    447                                         else:
    448                                                 types_dict[package_type]=[app_info]
     431                                types_dict[package_type]=[app_info]
    449432                for package_type in types_dict:
    450433                        self._debug("Checking plugin for %s %s"%(action,package_type))
    451434                        if package_type in self.plugins_registered[action]:
    452                                 #Only seach full info if it's required
     435                                #Only search full info if it's required
    453436                                if (fullsearch==False and package_type=='deb'):
    454437                                        result['data'].extend(types_dict[package_type])
     
    514497                if (launchedby=='search'):
    515498                                exact_match=False
    516                 target_channel=''
    517                 if '=' in search_item:
    518                         target_channel=search_item.split('=')[-1]
    519                         search_item=search_item.split('=')[0]
    520499                for package_type in self.plugins_registered[action]:
    521500                        search_function=self._execute_class_method(action,'*',launchedby=launchedby)
     
    533512                        #2.- Get rest of metadata (slower)
    534513                        subordinate_action='pkginfo'
    535                         self._debug("Target channel: %s"%target_channel)
    536                         result=self._get_Extended_App_Info(result['data'],launchedby,fullsearch,target_channel)
     514                        result=self._get_Extended_App_Info(result['data'],launchedby,fullsearch)
    537515                        if launchedby:
    538516                                realAction=launchedby
     
    635613                #Zomandos must have the subcategory "Zomando"
    636614                self._debug("Checking package type for app "+app_info['name'])
    637                 return_msg=[]
    638                 if app_info['component']!='':
    639                         return_msg.append('deb')
    640615                if "Zomando" in app_info['categories']:
    641                         return_msg.append("zmd")
     616                        return_msg="zmd"
     617                else:
    642618                #Standalone installers must have an installerUrl field loaded from a bundle type=script description
    643                 if app_info['bundle']:
    644                         return_msg.extend(app_info['bundle'])
    645                 if app_info['installerUrl']!='':
    646                         return_msg.append("sh")
    647                 print(return_msg)
     619                        if app_info['bundle']!='':
     620                                return_msg=app_info['bundle']
     621                        elif app_info['installerUrl']!='':
     622                                return_msg="sh"
     623                        else:
     624                                return_msg="deb"
    648625                return(return_msg)
    649626        #def _check_package_type
Note: See TracChangeset for help on using the changeset viewer.