def __init__(self, lookups=None, connector=Q.AND): lookups = lookups or {} self.connector = connector self.children = {} if lookups is not None: for lookup, value in six.viewitems(lookups): self[lookup] = value
def iteritems(self, lookup_stack=None): lookup_stack = [] if lookup_stack is None else lookup_stack for component, node in six.viewitems(self.children): if component == LookupComponent.EMPTY: yield (LookupComponent(LOOKUP_SEP.join(lookup_stack)), self.value) else: lookup_stack.append(component) for item in node.iteritems(lookup_stack=lookup_stack): yield item lookup_stack.pop()
def __init__(self, databases): super(RoundRobinRoutingStrategy, self).__init__(databases) self.read_cycles = {} for primary, replicas in viewitems(self.primary_replica_mapping): self.read_cycles[primary] = cycle(replicas + [primary])
def geojson(self): layers = ','.join(['"%s": %s' % (k, v.geojson) for k, v in six.viewitems(self)]) return '{%s}' % layers
def __init__(self, iterable=(), **kwargs): super(LayerCollection, self).__init__() self.update(iterable, **kwargs) for key, val in six.viewitems(self): if not isinstance(val, FeatureCollection): self[key] = FeatureCollection(**val)
def geojson(self): layers = ','.join( ['"%s": %s' % (k, v.geojson) for k, v in six.viewitems(self)]) return '{%s}' % layers