Package conary :: Package repository :: Module findtrove :: Class QuerySetFactory
[hide private]
[frames] | no frames]

Class QuerySetFactory

source code

object --+
         |
        QuerySetFactory
Known Subclasses:
QueryByItemSetFactory, QueryByLabelPathSetFactory

Generates a QuerySet with the appropriate searchQueues given a troveSpec with a particular searchKey and flavorList.

The subclass of QuerySet created is determined by the QuerySetFactory subclass.

Instance Methods [hide private]
 
create(self, troveSpec, searchKey, affinityTroves, queryOptions)
Returns a query for this searchKey
source code
 
filterAffinityTroves(self, affinityTroves, searchKey) source code
 
createQueryNoAffinity(self, query, searchKey, queryOptions) source code
 
overrideFlavors(self, queryOptions, flavor, defaultFlavorPath=None)
override the flavors in the defaultFlavorPath with flavor, replacing instruction set entirely if given.
source code
 
mergeFlavors(self, queryOptions, flavor, defaultFlavorPath=None)
Merges the given flavor with the flavorPath - if flavor doesn't contain use flags, then include the defaultFlavor's use flags.
source code
 
createSearchQueue(self, name, searchKey, flavorList, acrossFlavors=False, acrossItems=False)
Adds a search for a package along a list of query items (like labels, branch, etc) that should be queried successively and a list of flavors that should be checked for those items.
source code

Inherited from object: __delattr__, __getattribute__, __hash__, __init__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

mergeFlavors(self, queryOptions, flavor, defaultFlavorPath=None)

source code 
Merges the given flavor with the flavorPath - if flavor doesn't contain use flags, then include the defaultFlavor's use flags. If flavor doesn't contain an instruction set, then include the flavorpath's instruction set(s)

createSearchQueue(self, name, searchKey, flavorList, acrossFlavors=False, acrossItems=False)

source code 

Adds a search for a package along a list of query items (like labels, branch, etc) that should be queried successively and a list of flavors that should be checked for those items.

At the end of this process a search queue is added to the query object.